File tree 4 files changed +81
-0
lines changed
4 files changed +81
-0
lines changed Original file line number Diff line number Diff line change @@ -163,6 +163,11 @@ if(CMakePythonDistributions_SUPERBUILD)
163
163
-DCMAKE_BUILD_TYPE:STRING =${CMAKE_BUILD_TYPE}
164
164
)
165
165
endif ()
166
+ if (DEFINED CMAKE_TOOLCHAIN_FILE)
167
+ list (APPEND _common_cache_args
168
+ -DCMAKE_TOOLCHAIN_FILE:STRING =${CMAKE_TOOLCHAIN_FILE}
169
+ )
170
+ endif ()
166
171
foreach (var_name IN ITEMS
167
172
CMAKE_BUILD_PARALLEL_LEVEL
168
173
CMAKE_JOB_POOLS
Original file line number Diff line number Diff line change @@ -13,6 +13,10 @@ before_install:
13
13
PATH : /opt/python/$<MANYLINUX_PYTHON>/bin:$<PATH>
14
14
SETUP_CMAKE_ARGS : -DCMAKE_JOB_POOL_COMPILE:STRING=compile -DCMAKE_JOB_POOL_LINK:STRING=link '-DCMAKE_JOB_POOLS:STRING=compile=4;link=3'
15
15
commands :
16
+ - |
17
+ if [[ ${DEFAULT_DOCKCROSS_IMAGE} == *"manylinux2014-aarch64"* ]]; then
18
+ sudo ./scripts/manylinux2014-aarch64-build-and-install-openssl.sh
19
+ fi
16
20
- python : |
17
21
import ci, os
18
22
image_name=os.environ["DEFAULT_DOCKCROSS_IMAGE"].split(":")[0].split("/")[1]
@@ -29,6 +33,9 @@ before_install:
29
33
# SETUP_BDIST_WHEEL_ARGS
30
34
if arch == "aarch64":
31
35
os.environ["SETUP_BDIST_WHEEL_ARGS"] = "--plat-name %s" % os.environ["AUDITWHEEL_PLAT"]
36
+ setup_cmake_args = []
37
+ setup_cmake_args.append("-DSTRIP_EXECUTABLE:FILEPATH=" + os.environ["CROSS_ROOT"] + "/" + os.environ["CROSS_TRIPLE"] + "/bin/strip")
38
+ os.environ["SETUP_CMAKE_ARGS"] = " ".join(setup_cmake_args) + " " + os.environ["SETUP_CMAKE_ARGS"]
32
39
ci.driver.Driver.save_env(os.environ)
33
40
34
41
travis :
Original file line number Diff line number Diff line change
1
+ #! /usr/bin/env bash
2
+
3
+ #
4
+ # Configure, build and install OpenSSL to support building of CMake using manylinux2014-aarch64 docker image
5
+ #
6
+
7
+ set -eux
8
+ set -o pipefail
9
+
10
+ MY_DIR=$( dirname " ${BASH_SOURCE[0]} " )
11
+ source $MY_DIR /utils.sh
12
+
13
+ OPENSSL_ROOT=openssl-1.1.1g
14
+
15
+ # Hash from https://www.openssl.org/source/openssl-1.1.1g.tar.gz.sha256
16
+ OPENSSL_HASH=ddb04774f1e32f0c49751e21b67216ac87852ceb056b75209af2443400636d46
17
+
18
+ # Environment variables defined in "dockcross/manylinux2014-aarch64/Dockerfile.in"
19
+ check_var CROSS_ROOT
20
+ check_var CROSS_TRIPLE
21
+
22
+ OPENSSL_INSTALL_DIR=${CROSS_ROOT} /${CROSS_TRIPLE}
23
+
24
+ cd /tmp
25
+
26
+ # Download
27
+ wget http://www.openssl.org/source/${OPENSSL_ROOT} .tar.gz
28
+ check_sha256sum ${OPENSSL_ROOT} .tar.gz ${OPENSSL_HASH}
29
+ tar -xzf ${OPENSSL_ROOT} .tar.gz
30
+ rm -rf ${OPENSSL_ROOT} .tar.gz
31
+
32
+ # Configure
33
+ cd ${OPENSSL_ROOT}
34
+ ./Configure \
35
+ linux-aarch64 \
36
+ --cross-compile-prefix= \
37
+ --prefix=${OPENSSL_INSTALL_DIR} \
38
+ shared
39
+
40
+ # Build
41
+ make -j$( grep -c processor /proc/cpuinfo)
42
+
43
+ # Install
44
+ make install
45
+
Original file line number Diff line number Diff line change
1
+ #! /usr/bin/env bash
2
+
3
+ set -e
4
+
5
+ # Copied from https://github.com/pypa/manylinux/blob/master/docker/build_scripts/build_utils.sh
6
+ function check_var {
7
+ if [ -z " $1 " ]; then
8
+ echo " required variable not defined"
9
+ exit 1
10
+ fi
11
+ }
12
+
13
+ # Copied from https://github.com/pypa/manylinux/blob/master/docker/build_scripts/build_utils.sh
14
+ function check_sha256sum {
15
+ local fname=$1
16
+ check_var ${fname}
17
+ local sha256=$2
18
+ check_var ${sha256}
19
+
20
+ echo " ${sha256} ${fname} " > ${fname} .sha256
21
+ sha256sum -c ${fname} .sha256
22
+ rm -f ${fname} .sha256
23
+ }
24
+
You can’t perform that action at this time.
0 commit comments