[deps] Make OpenSSL build on macos and update#40
[deps] Make OpenSSL build on macos and update#40GregBowyer wants to merge 1 commit intodropbox:masterfrom
Conversation
|
I wanted to try and pick up this change and see if it would work on linux aarch64 but you appear to have mised adding the config.py file that defines the |
|
:( Doh sorry |
We change up the openssl build generation to be able to generate builds for other platforms and systems. The initial added platforms are for macos. In the process of doing this the build generation tooling has changed to be a python script that understands all of the select permutations needed to generate the stanzas needed for more than one platform. Alongside this the perl script used to extract out the build details has been changed. Rather than generating the build rules directly it now exports the build information needed in the form of JSON outputs. This has been tested on x86_64 for macos catalina and linux. Right now there are probably some unixisms left in the code which will limit its ability to build for windows.
b65a16b to
c58f740
Compare
|
@jsharpe Config.py pushed |
| "apps/testrsa.h", | ||
| "apps/timeouts.h", | ||
| ] + glob(["include/internal/*.h"]), | ||
| copts = [ |
There was a problem hiding this comment.
This is a bit of a leftover that probably should be in config.py some how, it works but I suspect windows is not going to enjoy it (-I vs /I I think if I remember my MSVC)
| "include/crypto/dso_conf.h", | ||
| ], | ||
| copts = copts + defines, | ||
| linkopts = [ |
There was a problem hiding this comment.
This is a posixism that probably should be:
- Gleaned from the perl logic somehow
- Moved to config.py somehow
| srcs = libssl_srcs + glob(["ssl/**/*.h"]) + [ | ||
| "e_os.h", | ||
| ], | ||
| copts = copts + defines, |
There was a problem hiding this comment.
I suspect defines can become local_defines on the cc_{library,binary} rules. That would take care of Posix -D vs MSVC /D logic
|
@jsharpe I have a few tweaks pending w.r.t arm on OSX that you might want |
|
|
We change up the openssl build generation to be able to generate builds
for other platforms and systems.
The initial added platforms are for macos. In the process of doing this
the build generation tooling has changed to be a python script that
understands all of the select permutations needed to generate the
stanzas needed for more than one platform.
Alongside this the perl script used to extract out the build details has
been changed. Rather than generating the build rules directly it now
exports the build information needed in the form of JSON outputs.
This has been tested on x86_64 for macos catalina and linux.
This also changes OpenSSL to 1.1.1l due to recent CVEs
Right now there are probably some unixisms left in the code which will
limit its ability to build for windows.