diff options
Diffstat (limited to '.jenkins/mac-wheel.sh')
-rw-r--r-- | .jenkins/mac-wheel.sh | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/.jenkins/mac-wheel.sh b/.jenkins/mac-wheel.sh new file mode 100644 index 00000000..3a6bf64b --- /dev/null +++ b/.jenkins/mac-wheel.sh @@ -0,0 +1,61 @@ +#!/bin/bash -xe +# output the list of things we've installed as a point in time check of how up to date the builder is +/usr/sbin/system_profiler SPInstallHistoryDataType +# Jenkins logs in as a non-interactive shell, so we don't even have /usr/local/bin in PATH +export PATH=/usr/local/bin:$PATH +# pyenv is nothing but trouble with non-interactive shells so we can't eval "$(pyenv init -)" +export PATH="/Users/jenkins/.pyenv/shims:${PATH}" +export PYENV_SHELL=bash + +# TODO: upgrade wheel builder VM and run it on El Cap with python.org Pythons. +if [[ "${label}" == "10.10" ]]; then + case "${TOXENV}" in + py26) + PYTHON=/usr/bin/python2.6 + ;; + py27) + PYTHON=/usr/bin/python2.7 + ;; + py27u) + PYTHON=python2.7 + ;; + py33) + PYTHON=python3.3 + ;; + py34) + PYTHON=python3.4 + ;; + py35) + PYTHON=python3.5 + ;; + pypy) + PYTHON=pypy + ;; + esac +else + case "${TOXENV}" in + py27) + PYTHON=/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7 + ;; + py33) + PYTHON=/Library/Frameworks/Python.framework/Versions/3.3/bin/python3.3 + ;; + py34) + PYTHON=/Library/Frameworks/Python.framework/Versions/3.4/bin/python3.4 + ;; + py35) + PYTHON=/Library/Frameworks/Python.framework/Versions/3.5/bin/python3.5 + ;; + esac +fi +printenv + +virtualenv .venv -p $PYTHON +source .venv/bin/activate +pip install -U wheel # upgrade wheel to latest before we use it to build the wheel +CRYPTOGRAPHY_OSX_NO_LINK_FLAGS="1" LDFLAGS="/usr/local/opt/openssl/lib/libcrypto.a /usr/local/opt/openssl/lib/libssl.a" CFLAGS="-I/usr/local/opt/openssl/include" pip wheel cryptography --wheel-dir=wheelhouse --no-use-wheel +pip install -f wheelhouse cryptography --no-index +python -c "from cryptography.hazmat.backends.openssl.backend import backend;print('Loaded: ' + backend.openssl_version_text());print('Linked Against: ' + backend._ffi.string(backend._lib.OPENSSL_VERSION_TEXT).decode('ascii'))" +otool -L `find .venv -name '_openssl*.so'` +lipo -info `find .venv -name '*.so'` +otool -L `find .venv -name '_openssl*.so'` | grep -vG "libcrypto\|libssl" |