ci: simplify #136
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build Python wheels (skbuild) | |
on: [push, pull_request] | |
jobs: | |
build_wheels_unix: | |
if: false | |
name: Build wheels on ${{ matrix.os }} | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: [ubuntu-latest, macos-13] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Build wheels | |
uses: pypa/[email protected] | |
env: | |
CIBW_BUILD_VERBOSITY: 1 | |
CIBW_SKIP: "pp* *musllinux*" | |
CIBW_ARCHS_LINUX: "x86_64" | |
CIBW_BEFORE_ALL_LINUX: yum install -y fftw3-devel | |
CIBW_BEFORE_ALL_MACOS: brew install gcc@14 fftw | |
CIBW_ENVIRONMENT_MACOS: > | |
FC=gfortran-14 | |
CC=gcc-14 | |
CXX=g++-14 | |
MACOSX_DEPLOYMENT_TARGET=13 | |
CIBW_TEST_REQUIRES: pytest | |
CIBW_TEST_COMMAND: pytest {project}/python/finufft/test | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: cibw-wheels-${{ matrix.os }} | |
path: ./wheelhouse/*.whl | |
build_wheels_macos_arm64: | |
if: false | |
name: Build wheels on macos-14 | |
runs-on: macos-14 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Build wheels | |
uses: pypa/[email protected] | |
env: | |
CIBW_BUILD_VERBOSITY: 1 | |
CIBW_SKIP: "pp*" | |
CIBW_ARCHS_MACOS: "arm64" | |
CIBW_BEFORE_ALL_MACOS: | | |
pkg=$(brew fetch --force --bottle-tag=arm64_ventura fftw | grep 'Downloaded to' | cut -d' ' -f3) | |
brew install $pkg | |
pkg=$(brew fetch --force --bottle-tag=arm64_ventura gcc | grep 'Downloaded to' | cut -d' ' -f3) | |
brew install $pkg | |
CIBW_ENVIRONMENT_MACOS: > | |
CC=gcc-14 | |
CXX=g++-14 | |
MACOSX_DEPLOYMENT_TARGET=14 | |
CIBW_TEST_REQUIRES: pytest | |
CIBW_TEST_COMMAND: pytest {project}/python/finufft/test | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: cibw-wheels-macos-arm64 | |
path: ./wheelhouse/*.whl | |
build_wheels_win: | |
name: Build wheels on windows | |
runs-on: windows-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install dependencies | |
run: | | |
c:\msys64\usr\bin\pacman.exe -Sy --noconfirm mingw-w64-x86_64-gcc mingw-w64-x86_64-fftw mingw-w64-x86_64-pkgconf | |
echo "c:\msys64\mingw64\bin;" >> $env:GITHUB_PATH | |
- name: Build wheels | |
uses: pypa/[email protected] | |
env: | |
CIBW_BUILD_VERBOSITY: 1 | |
CIBW_ARCHS: AMD64 | |
CIBW_CONFIG_SETTINGS: "cmake.args='-G Unix Makefiles'" | |
CIBW_BEFORE_BUILD: pip install delvewheel | |
CIBW_REPAIR_WHEEL_COMMAND: delvewheel repair -v --analyze-existing -w {dest_dir} {wheel} | |
CIBW_TEST_REQUIRES: pytest | |
CIBW_TEST_COMMAND: pytest {project}/python/finufft/test | |
# PyPy doesn't seem to work under windows, for some reason. | |
CIBW_TEST_SKIP: "pp*-win*" | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: cibw-wheels-windows | |
path: ./wheelhouse/*.whl |