@@ -50,26 +50,28 @@ jobs:
5050 path : accelerate/dist/*
5151
5252 wheels :
53- name : Build architecture-specific wheels on ${{ matrix.os }}
53+ name : Build architecture-specific wheels on ${{ matrix.os }}-${{ matrix.arch }}
5454 runs-on : ${{ matrix.os }}
5555 strategy :
5656 matrix :
57- os :
58- - ubuntu-latest
59- - windows-latest
60- - macOS-latest
57+ os : [ubuntu-latest, ubuntu-24.04-arm, macos-latest, macos-13, windows-latest] # Use specific versions for clarity
58+ arch : [x86_64, arm64]
59+ exclude :
60+ - os : ubuntu-latest
61+ arch : arm64
62+ - os : ubuntu-24.04-arm # No need to specify arch, it's already implicit
63+ arch : x86_64 # Exclude x86_64 on ARM
64+ - os : macos-latest # Exclude macOS 14-15 (Sonoma)
65+ arch : x86_64 # Exclude x86_64 explicitly
66+ - os : macos-13 # Exclude macOS 13 (Ventura) - arm64
67+ arch : arm64 # Exclude arm64 on macOS 13
6168 steps :
6269 - name : Check out repository
6370 uses : actions/checkout@v4
6471 - name : Install Python
6572 uses : actions/setup-python@v5
6673 with :
6774 python-version : 3.x
68- - name : Set up QEMU
69- if : runner.os == 'Linux'
70- uses : docker/setup-qemu-action@v2
71- with :
72- platforms : all
7375
7476 - name : Build wheels (develop)
75777981 output-dir : " ./accelerate/dist"
8082 env :
8183 BUILD_EXTENSION : yes
82- CIBW_SKIP : " pp*"
84+ CIBW_ARCHS_MACOS : ${{ matrix.os }}-${{ matrix.arch }}
85+ CIBW_SKIP : " *-win32 *-manylinux_i686 *-musllinux_*"
8386
8487 - name : Build wheels (master)
8588@@ -89,12 +92,13 @@ jobs:
8992 output-dir : " ./accelerate/dist"
9093 env :
9194 BUILD_EXTENSION : yes
92- CIBW_SKIP : " pp*"
95+ CIBW_ARCHS_MACOS : ${{ matrix.arch }}
96+ CIBW_SKIP : " *-win32 *-manylinux_i686 *-musllinux_*"
9397
9498 - name : Save wheels
9599 uses : actions/upload-artifact@v4
96100 with :
97- name : accel-binary-${{ matrix.os }}
101+ name : accel-binary-${{ matrix.os }}-${{ matrix.arch }}
98102 path : accelerate/dist/*.whl
99103
100104 pypi-publish-accel :
0 commit comments