Skip to content

Commit 85a6df5

Browse files
authored
Merge pull request #8698 from radarhere/arm64
2 parents 7446348 + 176c5b3 commit 85a6df5

File tree

1 file changed

+15
-60
lines changed

1 file changed

+15
-60
lines changed

.github/workflows/wheels.yml

+15-60
Original file line numberDiff line numberDiff line change
@@ -42,62 +42,7 @@ env:
4242
FORCE_COLOR: 1
4343

4444
jobs:
45-
build-1-QEMU-emulated-wheels:
46-
if: github.event_name != 'schedule'
47-
name: aarch64 ${{ matrix.python-version }} ${{ matrix.spec }}
48-
runs-on: ubuntu-latest
49-
strategy:
50-
fail-fast: false
51-
matrix:
52-
python-version:
53-
- pp310
54-
- cp3{9,10,11}
55-
- cp3{12,13}
56-
spec:
57-
- manylinux2014
58-
- manylinux_2_28
59-
- musllinux
60-
exclude:
61-
- { python-version: pp310, spec: musllinux }
62-
63-
steps:
64-
- uses: actions/checkout@v4
65-
with:
66-
persist-credentials: false
67-
submodules: true
68-
69-
- uses: actions/setup-python@v5
70-
with:
71-
python-version: "3.x"
72-
73-
# https://github.com/docker/setup-qemu-action
74-
- name: Set up QEMU
75-
uses: docker/setup-qemu-action@v3
76-
77-
- name: Install cibuildwheel
78-
run: |
79-
python3 -m pip install -r .ci/requirements-cibw.txt
80-
81-
- name: Build wheels
82-
run: |
83-
python3 -m cibuildwheel --output-dir wheelhouse
84-
env:
85-
# Build only the currently selected Linux architecture (so we can
86-
# parallelise for speed).
87-
CIBW_ARCHS: "aarch64"
88-
# Likewise, select only one Python version per job to speed this up.
89-
CIBW_BUILD: "${{ matrix.python-version }}-${{ matrix.spec == 'musllinux' && 'musllinux' || 'manylinux' }}*"
90-
CIBW_ENABLE: cpython-prerelease
91-
# Extra options for manylinux.
92-
CIBW_MANYLINUX_AARCH64_IMAGE: ${{ matrix.spec }}
93-
CIBW_MANYLINUX_PYPY_AARCH64_IMAGE: ${{ matrix.spec }}
94-
95-
- uses: actions/upload-artifact@v4
96-
with:
97-
name: dist-qemu-${{ matrix.python-version }}-${{ matrix.spec }}
98-
path: ./wheelhouse/*.whl
99-
100-
build-2-native-wheels:
45+
build-native-wheels:
10146
if: github.event_name != 'schedule' || github.repository_owner == 'python-pillow'
10247
name: ${{ matrix.name }}
10348
runs-on: ${{ matrix.os }}
@@ -132,6 +77,14 @@ jobs:
13277
cibw_arch: x86_64
13378
build: "*manylinux*"
13479
manylinux: "manylinux_2_28"
80+
- name: "manylinux2014 and musllinux aarch64"
81+
os: ubuntu-24.04-arm
82+
cibw_arch: aarch64
83+
- name: "manylinux_2_28 aarch64"
84+
os: ubuntu-24.04-arm
85+
cibw_arch: aarch64
86+
build: "*manylinux*"
87+
manylinux: "manylinux_2_28"
13588
steps:
13689
- uses: actions/checkout@v4
13790
with:
@@ -152,7 +105,9 @@ jobs:
152105
env:
153106
CIBW_ARCHS: ${{ matrix.cibw_arch }}
154107
CIBW_BUILD: ${{ matrix.build }}
155-
CIBW_ENABLE: cpython-prerelease cpython-freethreading
108+
CIBW_ENABLE: cpython-prerelease cpython-freethreading pypy
109+
CIBW_MANYLINUX_AARCH64_IMAGE: ${{ matrix.manylinux }}
110+
CIBW_MANYLINUX_PYPY_AARCH64_IMAGE: ${{ matrix.manylinux }}
156111
CIBW_MANYLINUX_PYPY_X86_64_IMAGE: ${{ matrix.manylinux }}
157112
CIBW_MANYLINUX_X86_64_IMAGE: ${{ matrix.manylinux }}
158113
CIBW_SKIP: pp39-*
@@ -229,7 +184,7 @@ jobs:
229184
CIBW_ARCHS: ${{ matrix.cibw_arch }}
230185
CIBW_BEFORE_ALL: "{package}\\winbuild\\build\\build_dep_all.cmd"
231186
CIBW_CACHE_PATH: "C:\\cibw"
232-
CIBW_ENABLE: cpython-prerelease cpython-freethreading
187+
CIBW_ENABLE: cpython-prerelease cpython-freethreading pypy
233188
CIBW_SKIP: pp39-*
234189
CIBW_TEST_SKIP: "*-win_arm64"
235190
CIBW_TEST_COMMAND: 'docker run --rm
@@ -275,7 +230,7 @@ jobs:
275230

276231
scientific-python-nightly-wheels-publish:
277232
if: github.repository_owner == 'python-pillow' && (github.event_name == 'schedule' || github.event_name == 'workflow_dispatch')
278-
needs: [build-2-native-wheels, windows]
233+
needs: [build-native-wheels, windows]
279234
runs-on: ubuntu-latest
280235
name: Upload wheels to scientific-python-nightly-wheels
281236
steps:
@@ -292,7 +247,7 @@ jobs:
292247

293248
pypi-publish:
294249
if: github.repository_owner == 'python-pillow' && github.event_name == 'push' && startsWith(github.ref, 'refs/tags')
295-
needs: [build-1-QEMU-emulated-wheels, build-2-native-wheels, windows, sdist]
250+
needs: [build-native-wheels, windows, sdist]
296251
runs-on: ubuntu-latest
297252
name: Upload release to PyPI
298253
environment:

0 commit comments

Comments
 (0)