From bb7e3e92d9b2dfdc23240cbba1ad3f22a1ddf557 Mon Sep 17 00:00:00 2001 From: odidev Date: Tue, 30 Jun 2020 15:54:12 +0530 Subject: [PATCH 1/2] Add AArch64 wheel support --- .travis.yml | 31 +++++++++++++++++++++++++++++++ config.sh | 8 ++++++-- 2 files changed, 37 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index 7a2a263..6b6901a 100644 --- a/.travis.yml +++ b/.travis.yml @@ -28,6 +28,24 @@ jobs: # Exclude the default Python 3.5 build - python: 3.5 include: + - stage: Build and test wheel + os: linux + arch: arm64 + env: + - MB_PYTHON_VERSION=3.7 + - PLAT=aarch64 + - NP_BUILD_DEP=numpy==1.19.1 + - CYTHON_BUILD_DEP="Cython" + - DOCKER_IMAGE=quay.io/pypa/manylinux2014_${PLAT} + script: + - echo "This stage will just build AArch64 wheel" + workspaces: + create: + name: ws1 + paths: + - wheelhouse + after_success: + - echo "This stage will not upload aarch64 wheel" - os: linux env: - MB_PYTHON_VERSION=3.6 @@ -88,6 +106,19 @@ jobs: - CYTHON_BUILD_DEP="Cython" - MB_PYTHON_OSX_VER=10.9 + - stage: Test wheel + arch: arm64 + env: + - MB_PYTHON_VERSION=3.7 + - PLAT=aarch64 + - NP_TEST_DEP=numpy==1.19.1 + - CYTHON_BUILD_DEP="Cython" + - DOCKER_TEST_IMAGE=multibuild/xenial_arm64v8 + workspaces: + use: ws1 + install: + - echo "This stage will test and upload the AArch64 wheel" + before_install: - if [ "$TRAVIS_BRANCH" == "master" ]; then CONTAINER="pre-release"; diff --git a/config.sh b/config.sh index e7f6da1..f8cb486 100644 --- a/config.sh +++ b/config.sh @@ -63,7 +63,7 @@ function build_osx_wheel { function run_tests { # Runs tests on installed distribution from an empty directory # OSX tests seem to time out pretty often - if [ -z "$IS_OSX" ]; then + if [[ -z "$IS_OSX" && `uname -m` != 'aarch64' ]]; then local testmode="full" else local testmode="fast" @@ -71,7 +71,11 @@ function run_tests { # Check bundled license file python ../check_installed_package.py # Run tests - python ../run_scipy_tests.py $testmode -- -n2 -rfEX + if [[ -z "$IS_OSX" && `uname -m` != 'aarch64' ]]; then + python ../run_scipy_tests.py $testmode -- -n2 -rfEX + else + python ../run_scipy_tests.py $testmode -- -n8 -rfEX + fi # Show BLAS / LAPACK used python -c 'import scipy; scipy.show_config()' } From 7e5682f21ee369afaa57cfd737612008223283b4 Mon Sep 17 00:00:00 2001 From: Janakarajan Natarajan Date: Thu, 24 Sep 2020 21:11:23 +0000 Subject: [PATCH 2/2] Add config to build wheels using Graviton2 --- .travis.yml | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index 6b6901a..b0ef6ca 100644 --- a/.travis.yml +++ b/.travis.yml @@ -30,7 +30,10 @@ jobs: include: - stage: Build and test wheel os: linux - arch: arm64 + arch: arm64-graviton2 + dist: focal + virt: vm + group: edge env: - MB_PYTHON_VERSION=3.7 - PLAT=aarch64 @@ -107,7 +110,10 @@ jobs: - MB_PYTHON_OSX_VER=10.9 - stage: Test wheel - arch: arm64 + arch: arm64-graviton2 + dist: focal + virt: vm + group: edge env: - MB_PYTHON_VERSION=3.7 - PLAT=aarch64