diff options
| author | Alex Stapleton <alexs@prol.etari.at> | 2014-07-06 15:12:57 +0100 |
|---|---|---|
| committer | Alex Stapleton <alexs@prol.etari.at> | 2014-07-06 15:12:57 +0100 |
| commit | 43a7f4b42956ffbeeac82f443a5ef11d24182325 (patch) | |
| tree | cb48bc3474ba65c1cae66d5868180239aa972d13 /cryptography | |
| parent | 5cb305d90489c42e9c8a6877f3b438175333e44c (diff) | |
| parent | 419e67a1d515ec7883a1e31608c1618e226fbffb (diff) | |
| download | cryptography-43a7f4b42956ffbeeac82f443a5ef11d24182325.tar.gz cryptography-43a7f4b42956ffbeeac82f443a5ef11d24182325.tar.bz2 cryptography-43a7f4b42956ffbeeac82f443a5ef11d24182325.zip | |
Merge pull request #1206 from reaperhulk/static-windows-builds
switch to static linking on windows and update installation page
Diffstat (limited to 'cryptography')
| -rw-r--r-- | cryptography/hazmat/bindings/openssl/binding.py | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/cryptography/hazmat/bindings/openssl/binding.py b/cryptography/hazmat/bindings/openssl/binding.py index 554c3c3e..4cd1b89b 100644 --- a/cryptography/hazmat/bindings/openssl/binding.py +++ b/cryptography/hazmat/bindings/openssl/binding.py @@ -13,6 +13,7 @@ from __future__ import absolute_import, division, print_function +import os import sys import threading @@ -97,7 +98,8 @@ class Binding(object): if sys.platform != "win32": libraries = ["crypto", "ssl"] else: # pragma: no cover - libraries = ["libeay32", "ssleay32", "advapi32"] + link_type = os.environ.get("PYCA_WINDOWS_LINK_TYPE", "static") + libraries = _get_windows_libraries(link_type) cls.ffi, cls.lib = build_ffi( module_prefix=cls._module_prefix, @@ -154,3 +156,15 @@ class Binding(object): mode, n, file, line ) ) + + +def _get_windows_libraries(link_type): + if link_type == "dynamic": + return ["libeay32", "ssleay32", "advapi32"] + elif link_type == "static" or link_type == "": + return ["libeay32mt", "ssleay32mt", "advapi32", + "crypt32", "gdi32", "user32", "ws2_32"] + else: + raise ValueError( + "PYCA_WINDOWS_LINK_TYPE must be 'static' or 'dynamic'" + ) |
