Skip to content

Commit 819aafd

Browse files
committed
Fix aarch64 wheel builds and add Intel mac wheels to release workflows
Build Linux aarch64 wheels natively on ubuntu-24.04-arm runners instead of cross-compiling in the manylinux2014 cross image, whose GCC 4.8 toolchain fails to compile vendored libusb (missing stdatomic.h). Add an x86_64 macOS wheel built on macos-15-intel, and set fail-fast: false so one failing target no longer cancels the other wheels in the matrix.
1 parent 1c9223a commit 819aafd

2 files changed

Lines changed: 36 additions & 10 deletions

File tree

.github/workflows/release-test.yml

Lines changed: 18 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,15 @@ permissions:
88

99
jobs:
1010
linux:
11-
runs-on: ubuntu-latest
11+
runs-on: ${{ matrix.runner }}
1212
strategy:
13+
fail-fast: false
1314
matrix:
14-
target: [x86_64, aarch64]
15+
include:
16+
- target: x86_64
17+
runner: ubuntu-latest
18+
- target: aarch64
19+
runner: ubuntu-24.04-arm
1520
steps:
1621
- uses: actions/checkout@v4
1722
- uses: actions/setup-python@v5
@@ -46,7 +51,15 @@ jobs:
4651
path: dist
4752

4853
macos:
49-
runs-on: macos-latest
54+
runs-on: ${{ matrix.runner }}
55+
strategy:
56+
fail-fast: false
57+
matrix:
58+
include:
59+
- target: aarch64
60+
runner: macos-latest
61+
- target: x86_64
62+
runner: macos-15-intel
5063
steps:
5164
- uses: actions/checkout@v4
5265
- uses: actions/setup-python@v5
@@ -55,11 +68,11 @@ jobs:
5568
- name: Build wheels
5669
uses: PyO3/maturin-action@v1
5770
with:
58-
target: aarch64
71+
target: ${{ matrix.target }}
5972
args: --release --out dist
6073
- uses: actions/upload-artifact@v4
6174
with:
62-
name: wheels-macos-aarch64
75+
name: wheels-macos-${{ matrix.target }}
6376
path: dist
6477

6578
sdist:

.github/workflows/release.yml

Lines changed: 18 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,15 @@ permissions:
88

99
jobs:
1010
linux:
11-
runs-on: ubuntu-latest
11+
runs-on: ${{ matrix.runner }}
1212
strategy:
13+
fail-fast: false
1314
matrix:
14-
target: [x86_64, aarch64]
15+
include:
16+
- target: x86_64
17+
runner: ubuntu-latest
18+
- target: aarch64
19+
runner: ubuntu-24.04-arm
1520
steps:
1621
- uses: actions/checkout@v4
1722
- uses: actions/setup-python@v5
@@ -46,7 +51,15 @@ jobs:
4651
path: dist
4752

4853
macos:
49-
runs-on: macos-latest
54+
runs-on: ${{ matrix.runner }}
55+
strategy:
56+
fail-fast: false
57+
matrix:
58+
include:
59+
- target: aarch64
60+
runner: macos-latest
61+
- target: x86_64
62+
runner: macos-15-intel
5063
steps:
5164
- uses: actions/checkout@v4
5265
- uses: actions/setup-python@v5
@@ -55,11 +68,11 @@ jobs:
5568
- name: Build wheels
5669
uses: PyO3/maturin-action@v1
5770
with:
58-
target: aarch64
71+
target: ${{ matrix.target }}
5972
args: --release --out dist
6073
- uses: actions/upload-artifact@v4
6174
with:
62-
name: wheels-macos-aarch64
75+
name: wheels-macos-${{ matrix.target }}
6376
path: dist
6477

6578
sdist:

0 commit comments

Comments
 (0)