diff --git a/.github/workflows/buildwheels.yml b/.github/workflows/buildwheels.yml index 2d305e3..e0fe235 100644 --- a/.github/workflows/buildwheels.yml +++ b/.github/workflows/buildwheels.yml @@ -9,7 +9,8 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - os: [ubuntu-20.04, macos-12, macos-14] + # macos-13 is an intel runner, macos-14 is apple silicon + os: [ubuntu-latest, macos-13, macos-14] steps: - uses: actions/checkout@v4 @@ -24,7 +25,14 @@ jobs: with: platforms: all + # https://cibuildwheel.pypa.io/en/stable/faq/#macos-library-dependencies-do-not-satisfy-target-macos + - name: Set MacOS compiler target dynamically from the runner + if: runner.os == 'macOS' + run: echo "MACOSX_DEPLOYMENT_TARGET=$(sw_vers -productVersion | cut -d. -f1)" >> $GITHUB_ENV + - name: Build wheels + env: + CIBW_ENVIRONMENT: MACOSX_DEPLOYMENT_TARGET=${{ env.MACOSX_DEPLOYMENT_TARGET }} uses: pypa/cibuildwheel@v2.20.0 - uses: actions/upload-artifact@v3 diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 228da1b..4e73648 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -2,6 +2,8 @@ name: Build and upload to PyPI on: workflow_dispatch: + release: + types: [published] jobs: build_wheels: @@ -25,7 +27,14 @@ jobs: with: platforms: all + # https://cibuildwheel.pypa.io/en/stable/faq/#macos-library-dependencies-do-not-satisfy-target-macos + - name: Set MacOS compiler target dynamically from the runner + if: runner.os == 'macOS' + run: echo "MACOSX_DEPLOYMENT_TARGET=$(sw_vers -productVersion | cut -d. -f1)" >> $GITHUB_ENV + - name: Build wheels + env: + CIBW_ENVIRONMENT: MACOSX_DEPLOYMENT_TARGET=${{ env.MACOSX_DEPLOYMENT_TARGET }} uses: pypa/cibuildwheel@v2.20.0 - uses: actions/upload-artifact@v3