File tree Expand file tree Collapse file tree 5 files changed +40
-9
lines changed
build-scripts/manylinux-container-image Expand file tree Collapse file tree 5 files changed +40
-9
lines changed Original file line number Diff line number Diff line change @@ -4,6 +4,27 @@ ARG RELEASE
44ARG LIBSSH_VERSION=0.11.1
55MAINTAINER Python Cryptographic Authority
66WORKDIR /root
7+ RUN \
8+ if [ $(uname -m) != "aarch64" ]; \
9+ then \
10+ if stat /etc/redhat-release 1>&2 2>/dev/null; then \
11+ yum -y install binutils perl perl-IPC-Cmd && \
12+ yum -y clean all && \
13+ rm -rf /var/cache/yum; \
14+ fi; \
15+ fi
16+
17+ # This is done as two separate steps because readelf (binutils) is not available on
18+ # aarch64.
19+ RUN \
20+ if [ $(uname -m) = "aarch64" ]; \
21+ then \
22+ if stat /etc/redhat-release 1>&2 2>/dev/null; then \
23+ yum -y install perl perl-IPC-Cmd && \
24+ yum -y clean all && \
25+ rm -rf /var/cache/yum; \
26+ fi; \
27+ fi
728
829ADD build_utils.sh /root/build_utils.sh
930ADD install_perl.sh /root/install_perl.sh
Original file line number Diff line number Diff line change @@ -68,6 +68,8 @@ export LDFLAGS="-pthread -ldl"
6868# See also "/tmp/libssh-0.9.4-manylinux-build.FJUercWAg9/libssh-0.9.4/build/CMakeFiles/CMakeError.log".
6969export PYCA_OPENSSL_PATH=/opt/pyca/cryptography/openssl
7070export PKG_CONFIG_PATH=" ${STATIC_DEPS_PREFIX} /lib64/pkgconfig:${STATIC_DEPS_PREFIX} /lib/pkgconfig:${PYCA_OPENSSL_PATH} /lib/pkgconfig"
71+ # Point libssh directly to the OpenSSL directory. It can find it there
72+ export OPENSSL_ROOT_DIR=" ${PYCA_OPENSSL_PATH} "
7173
7274>&2 echo
7375>&2 echo
Original file line number Diff line number Diff line change @@ -8,21 +8,27 @@ MY_DIR=$(dirname "${BASH_SOURCE[0]}")
88
99# Get build utilities
1010source $MY_DIR /build_utils.sh
11+
12+ OPENSSL_URL=" https://github.com/openssl/openssl/releases/download"
1113source /root/openssl-version.sh
1214
13- fetch_source " openssl- ${ OPENSSL_VERSION} .tar.gz" " https://www.openssl.org/source/ "
14- check_sha256sum " openssl- ${OPENSSL_VERSION} .tar.gz" ${OPENSSL_SHA256}
15- tar zxf openssl- ${OPENSSL_VERSION} .tar.gz
15+ curl -#LO " ${OPENSSL_URL} / ${ OPENSSL_VERSION}/ ${OPENSSL_VERSION} .tar.gz"
16+ check_sha256sum " ${OPENSSL_VERSION} .tar.gz" ${OPENSSL_SHA256}
17+ tar zxf ${OPENSSL_VERSION} .tar.gz
1618
17- pushd openssl-${OPENSSL_VERSION}
19+ pushd ${OPENSSL_VERSION}
20+ BUILD_FLAGS=" $OPENSSL_BUILD_FLAGS "
1821if [[ " $1 " =~ ' ^manylinux1_.*$' ]]; then
1922 PATH=/opt/perl/bin:$PATH
2023fi
21- ./config $OPENSSL_BUILD_FLAGS --prefix=/opt/pyca/cryptography/openssl --openssldir=/opt/pyca/cryptography/openssl
24+ if [ " $( readelf -h /proc/self/exe | grep -o ' Machine:.* S/390' ) " ]; then
25+ BUILD_FLAGS=" $OPENSSL_BUILD_FLAGS_S390X "
26+ fi
27+ ./config $BUILD_FLAGS --prefix=/opt/pyca/cryptography/openssl --openssldir=/opt/pyca/cryptography/openssl
2228make depend
2329make -j4
2430# avoid installing the docs
2531# https://github.com/openssl/openssl/issues/6685#issuecomment-403838728
2632make install_sw install_ssldirs
2733popd
28- rm -rf openssl- ${OPENSSL_VERSION}
34+ rm -rf openssl*
Original file line number Diff line number Diff line change 1- export OPENSSL_VERSION=" 1.1.1k "
2- export OPENSSL_SHA256=" 892a0875b9872acd04a9fde79b1f943075d5ea162415de3047c327df33fbaee5 "
1+ export OPENSSL_VERSION=" openssl-3.5.0 "
2+ export OPENSSL_SHA256=" 344d0a79f1a9b08029b0744e2cc401a43f9c90acd1044d09a530b4885a8e9fc0 "
33# We need a base set of flags because on Windows using MSVC
44# enable-ec_nistp_64_gcc_128 doesn't work since there's no 128-bit type
5- export OPENSSL_BUILD_FLAGS_WINDOWS=" no-ssl3 no-ssl3-method no-zlib no-shared no-comp no-dynamic-engine"
5+ export OPENSSL_BUILD_FLAGS_WINDOWS=" no-ssl3 no-ssl3-method no-zlib no-shared no-module no-comp no-dynamic-engine no-apps no-docs no-sm2-precomp no-atexit"
6+ export OPENSSL_BUILD_FLAGS_S390X=" ${OPENSSL_BUILD_FLAGS_WINDOWS} "
67export OPENSSL_BUILD_FLAGS=" ${OPENSSL_BUILD_FLAGS_WINDOWS} enable-ec_nistp_64_gcc_128"
Original file line number Diff line number Diff line change 1+ Updated OpenSSL to latest version 3.5.0 in manylinux -- by :user: `Jakuje `.
You can’t perform that action at this time.
0 commit comments