diff options
author | Donald Stufft <donald@stufft.io> | 2015-09-05 16:59:56 -0400 |
---|---|---|
committer | Donald Stufft <donald@stufft.io> | 2015-09-05 16:59:56 -0400 |
commit | 48cd56b3c5938d26f2ec479f865333949a44f727 (patch) | |
tree | 94228e21c6c658582dcef886841e9f2f98617953 /src/_cffi_src/build_openssl.py | |
parent | ab75a307b242b00a94c207f65a539d1ed0682468 (diff) | |
parent | a60b69ffdfc2b06c1379a0de116df873084fb17b (diff) | |
download | cryptography-48cd56b3c5938d26f2ec479f865333949a44f727.tar.gz cryptography-48cd56b3c5938d26f2ec479f865333949a44f727.tar.bz2 cryptography-48cd56b3c5938d26f2ec479f865333949a44f727.zip |
Merge pull request #2306 from reaperhulk/static-linking-osx
Support static linking on OS X
Diffstat (limited to 'src/_cffi_src/build_openssl.py')
-rw-r--r-- | src/_cffi_src/build_openssl.py | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/src/_cffi_src/build_openssl.py b/src/_cffi_src/build_openssl.py index 6a5bf2da..defa69d3 100644 --- a/src/_cffi_src/build_openssl.py +++ b/src/_cffi_src/build_openssl.py @@ -4,6 +4,7 @@ from __future__ import absolute_import, division, print_function +import os import sys from _cffi_src.utils import build_ffi_for_binding, extra_link_args @@ -11,15 +12,27 @@ from _cffi_src.utils import build_ffi_for_binding, extra_link_args def _get_openssl_libraries(platform): # OpenSSL goes by a different library name on different operating systems. - if platform != "win32": + if platform == "darwin": + return _osx_libraries( + os.environ.get("CRYPTOGRAPHY_OSX_NO_LINK_FLAGS") + ) + elif platform == "win32": + return ["libeay32", "ssleay32", "advapi32", + "crypt32", "gdi32", "user32", "ws2_32"] + else: # In some circumstances, the order in which these libs are # specified on the linker command-line is significant; # libssl must come before libcrypto # (http://marc.info/?l=openssl-users&m=135361825921871) return ["ssl", "crypto"] + + +def _osx_libraries(build_static): + # For building statically we don't want to pass the -lssl or -lcrypto flags + if build_static == "1": + return [] else: - return ["libeay32", "ssleay32", "advapi32", - "crypt32", "gdi32", "user32", "ws2_32"] + return ["ssl", "crypto"] _OSX_PRE_INCLUDE = """ |