@@ -3,9 +3,23 @@ name: Wheel Builder
3
3
on : [push, pull_request]
4
4
5
5
jobs :
6
- linux_wheels :
7
- name : Build wheels on ubuntu
8
- runs-on : ubuntu-latest
6
+ build_wheels :
7
+ name : Build wheels on ${{ matrix.os }} (${{ matrix.arch }})
8
+ runs-on : ${{ matrix.runner }}
9
+
10
+ strategy :
11
+ fail-fast : false
12
+ matrix :
13
+ include :
14
+ # Linux (Ubuntu)
15
+ - os : ubuntu-latest
16
+ arch : x86_64
17
+ runner : ubuntu-latest
18
+
19
+ # macOS
20
+ # - os: macos-latest
21
+ # arch: arm64
22
+ # runner: macos-latest
9
23
10
24
steps :
11
25
- uses : actions/checkout@v4
15
29
# - name: Fetch all history for all tags
16
30
# run: git fetch --prune --unshallow
17
31
18
- - name : Build wheels
19
- uses : joerick/cibuildwheel@v1.9.0
32
+ - name : Build wheels (Linux)
33
+ if : matrix.os == 'ubuntu-latest' || matrix.arch == 'x86_64'
34
+ uses : joerick/cibuildwheel@v2.22.0
20
35
# to supply options, put them in 'env', like:
21
36
env :
22
37
# Only build for python 3.{7,8,9}
27
42
CIBW_BEFORE_ALL_LINUX : yum install -y lapack-devel openblas-devel fftw-devel
28
43
# Use manylinux2014
29
44
CIBW_MANYLINUX_X86_64_IMAGE : quay.io/pypa/manylinux_2_28_x86_64
30
- CIBW_SKIP : cp27-*
31
45
CIBW_DEPENDENCY_VERSIONS : latest
32
46
CIBW_BEFORE_BUILD_LINUX : pip install --upgrade pip setuptools wheel numpy cmake ninja && git config --global --add safe.directory /project
47
+ CIBW_SKIP : " *-musllinux_*"
48
+
49
+ # - name: Build wheels macOS (arm64)
50
+ # if: matrix.os == 'macos-latest' && matrix.arch == 'arm64'
51
+ # run: python -m cibuildwheel --output-dir wheelhouse
33
52
34
53
- uses : actions/upload-artifact@v4
35
54
with :
44
63
strategy :
45
64
matrix :
46
65
python : [3.8, 3.9, "3.10", "3.11"]
47
- os : [macos-latest ]
66
+ os : [macos-13 ]
48
67
49
68
steps :
50
69
- uses : actions/checkout@v4
@@ -117,8 +136,8 @@ jobs:
117
136
overwrite : true
118
137
119
138
upload_pypi :
120
- needs : [linux_wheels , mac_wheels, build_sdist]
121
- # needs: [linux_wheels , build_sdist]
139
+ needs : [build_wheels , mac_wheels, build_sdist]
140
+ # needs: [build_wheels , build_sdist]
122
141
runs-on : ubuntu-latest
123
142
# upload to PyPI on every tag starting with 'v'
124
143
if : github.event_name == 'push' && startsWith(github.event.ref, 'refs/tags/v')
0 commit comments