diff options
Diffstat (limited to '.github/workflows/build.yml')
| -rw-r--r-- | .github/workflows/build.yml | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index ed4573a..67b4199 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -90,7 +90,13 @@ jobs: CIBW_ARCHS_LINUX: "auto aarch64" CIBW_ARCHS_MACOS: "auto" CIBW_ENABLE: "pypy" - CIBW_SKIP: "pp*-win_amd64" + # win_arm64 is restricted to CPython 3.11+, the earliest version with + # ARM64 builds available to actions/setup-python for testing. + # + # Free-threaded win_arm64 is skipped because CPython's _Py_ThreadId() + # tries calling __getReg() that CLANGARM64 clang does not provide. + # https://github.com/python/cpython/issues/157212 + CIBW_SKIP: "pp*-win_amd64 cp39-win_arm64 cp310-win_arm64 cp3??t-win_arm64" run: | MATRIX=$( { @@ -99,7 +105,9 @@ jobs: && cibuildwheel --print-build-identifiers --platform macos \ | sed 's/.*/{"cibw-only": "&", "os": "macos-15-intel" }/' \ && CIBW_ARCHS_WINDOWS=AMD64 cibuildwheel --print-build-identifiers --platform windows \ - | sed 's/.*/{"cibw-only": "&", "os": "windows-2022", "arch": "AMD64" }/' + | sed 's/.*/{"cibw-only": "&", "os": "windows-2022", "arch": "AMD64" }/' \ + && CIBW_ARCHS_WINDOWS=ARM64 cibuildwheel --print-build-identifiers --platform windows \ + | sed 's/.*/{"cibw-only": "&", "os": "windows-11-arm", "arch": "ARM64" }/' } | jq --slurp --compact-output '{"include": .}' ) echo matrix="$MATRIX" >> $GITHUB_OUTPUT @@ -127,7 +135,8 @@ jobs: matrix.cibw-only == 'cp310-macosx_x86_64' || matrix.cibw-only == 'cp314t-macosx_x86_64' || matrix.cibw-only == 'cp310-win_amd64' || - matrix.cibw-only == 'cp314t-win_amd64' + matrix.cibw-only == 'cp314t-win_amd64' || + matrix.cibw-only == 'cp311-win_arm64' shell: bash run: echo true=1 >> $GITHUB_OUTPUT |
