From 50a0b59d0d43cc0447b533cb2be9ea1d0893cfa6 Mon Sep 17 00:00:00 2001 From: mio Date: Sat, 1 Oct 2022 01:31:13 +0200 Subject: [PATCH] Use dockcross for aarch64 wheel --- .github/workflows/PyPI-publishing.yml | 4 +++- bindings/python/build_wheel.sh | 13 +++++++++---- bindings/python/build_wheel_aarch64.sh | 10 ---------- 3 files changed, 12 insertions(+), 15 deletions(-) delete mode 100644 bindings/python/build_wheel_aarch64.sh diff --git a/.github/workflows/PyPI-publishing.yml b/.github/workflows/PyPI-publishing.yml index 4ae6d858..5f254bc2 100644 --- a/.github/workflows/PyPI-publishing.yml +++ b/.github/workflows/PyPI-publishing.yml @@ -111,7 +111,9 @@ jobs: chmod +x ./dockcross ./dockcross bindings/python/build_wheel.sh elif [ ${{ matrix.config.name }} == 'manylinux2014_aarch64' ]; then - docker run --rm -v `pwd`/:/work quay.io/pypa/manylinux2014_aarch64 bash /work/bindings/python/build_wheel_aarch64.sh + docker run --rm -v `pwd`/:/work dockcross/manylinux2014-aarch64 > ./dockcross + chmod +x ./dockcross + ./dockcross bindings/python/build_wheel.sh --plat-name manylinux2014_aarch64 elif [ ${{ matrix.config.name }} == 'manylinux2014_x86_64' ]; then docker run --rm -v `pwd`/:/work dockcross/manylinux2014-x64 > ./dockcross chmod +x ./dockcross diff --git a/bindings/python/build_wheel.sh b/bindings/python/build_wheel.sh index e3c9d444..05a28bf1 100755 --- a/bindings/python/build_wheel.sh +++ b/bindings/python/build_wheel.sh @@ -5,10 +5,15 @@ cd bindings/python # Compile wheels if [ -f /opt/python/cp36-cp36m/bin/python ];then - /opt/python/cp36-cp36m/bin/python setup.py bdist_wheel + /opt/python/cp36-cp36m/bin/python setup.py bdist_wheel $@ else - python3 setup.py bdist_wheel + python3 setup.py bdist_wheel $@ fi cd dist -auditwheel repair *.whl -mv -f wheelhouse/*.whl . + +# We can't repair an aarch64 wheel on x64 hosts +# https://github.com/pypa/auditwheel/issues/244 +if [[ ! "$*" =~ "aarch64" ]];then + auditwheel repair *.whl + mv -f wheelhouse/*.whl . +fi \ No newline at end of file diff --git a/bindings/python/build_wheel_aarch64.sh b/bindings/python/build_wheel_aarch64.sh deleted file mode 100644 index 0e681242..00000000 --- a/bindings/python/build_wheel_aarch64.sh +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/bash - -yum install python3 -y -python3 -m pip install -U setuptools wheel auditwheel -cd /work/bindings/python -python3 setup.py bdist_wheel - -cd dist -auditwheel repair *.whl -mv -f wheelhouse/*.whl .