From 5406740517531e5310acec1929e0af9e40c8eb02 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nguy=E1=BB=85n=20Gia=20Phong?= Date: Sat, 2 May 2020 18:03:57 +0700 Subject: [PATCH] Repair wheels on macOS correctly --- .ci/before-build-macos | 10 +++++----- .ci/before-build-manylinux2014 | 2 +- .ci/repair-whl-macos | 12 ++++++++++++ .travis.yml | 8 +++++++- 4 files changed, 25 insertions(+), 7 deletions(-) create mode 100755 .ci/repair-whl-macos diff --git a/.ci/before-build-macos b/.ci/before-build-macos index acd34b0..978887d 100755 --- a/.ci/before-build-macos +++ b/.ci/before-build-macos @@ -1,7 +1,7 @@ #!/bin/sh -set -ev +set -ex git clone --depth 1 https://github.com/kcat/alure /tmp/alure -cd /tmp/alure/build -OPENALDIR=$(brew --prefix openal-soft) cmake -DCMAKE_FIND_FRAMEWORK=NEVER .. -cmake --build . --config Release -sudo cmake --install . +OPENALDIR=$(brew --prefix openal-soft) cmake -DCMAKE_FIND_FRAMEWORK=NEVER \ + -S /tmp/alure -B /tmp/alure/build +sudo cmake --build /tmp/alure/build --parallel $(sysctl -n hw.ncpu) \ + --config Release --target install diff --git a/.ci/before-build-manylinux2014 b/.ci/before-build-manylinux2014 index 8f6f308..abb6d23 100755 --- a/.ci/before-build-manylinux2014 +++ b/.ci/before-build-manylinux2014 @@ -1,5 +1,5 @@ #!/bin/sh -set -ev +set -ex yum install -y git cmake pulseaudio \ alsa-lib-devel pulseaudio-libs-devel jack-audio-connection-kit-devel \ libvorbis-devel opusfile-devel libsndfile-devel diff --git a/.ci/repair-whl-macos b/.ci/repair-whl-macos new file mode 100755 index 0000000..85b2e43 --- /dev/null +++ b/.ci/repair-whl-macos @@ -0,0 +1,12 @@ +#!/bin/sh +set -ex +cd $(mktemp -d) +unzip $1 +DYLD_FALLBACK_LIBRARY_PATH=/usr/local/lib delocate-path -L palace.dylibs . +wheel=$(basename $1) +zip -r $wheel * +mkdir -p $2 +mv $wheel $2 +tempdir=$(pwd) +cd - +rm -rf $tempdir diff --git a/.travis.yml b/.travis.yml index efaed9f..3b2c241 100644 --- a/.travis.yml +++ b/.travis.yml @@ -12,7 +12,9 @@ env: - CIBW_MANYLINUX_X86_64_IMAGE=manylinux2014 - CIBW_BEFORE_BUILD_LINUX=.ci/before-build-manylinux2014 - CIBW_BEFORE_BUILD_MACOS=.ci/before-build-macos - - CIBW_TEST_REQUIRES_LINUX=tox + - CIBW_REPAIR_WHEEL_COMMAND_MACOS=".ci/repair-whl-macos {wheel} {dest_dir}" + - CIBW_TEST_REQUIRES=tox + # CIBW_TEST_COMMAND_MACOS="tox -c /Users/travis/build/McSinyx/palace" - CIBW_TEST_COMMAND_LINUX="tox -c /project" addons: @@ -35,6 +37,10 @@ jobs: osx_image: xcode11.3 language: shell env: CIBW_BUILD=cp37-macosx_x86_64 + - os: osx + osx_image: xcode11.3 + language: shell + env: CIBW_BUILD=cp38-macosx_x86_64 - services: docker env: CIBW_BUILD=cp36-manylinux_x86_64 - services: docker