ci: update path #123
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 | |
env: | |
fftw-version: 3.3.10 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install dependencies | |
run: | | |
C:\msys64\usr\bin\bash.exe -lc "pacman -Sy --noconfirm mingw-w64-x86_64-gcc mingw-w64-x86_64-fftw" | |
echo "c:\msys64\mingw64\bin;" >> $env:GITHUB_PATH | |
- name: Which python3 | |
run: python3 -c "import sys; print(sys.executable)" | |
- name: Which gcc | |
run: which gcc | |
- name: Setup tmate session | |
uses: mxschmitt/action-tmate@v3 | |
- name: Run cmake | |
run: | | |
mkdir build | |
cd build | |
cmake .. -G "Unix Makefiles" | |
- name: Run pip wheel | |
run: pip wheel --no-deps '--config-settings=cmake.args=-G Unix Makefiles' -v . | |
- name: Install cibuildwheel | |
run: pip install cibuildwheel | |
- name: Build wheels | |
run: cibuildwheel | |
env: | |
CIBW_BUILD_VERBOSITY: 1 | |
CIBW_ARCHS: AMD64 | |
CIBW_CONFIG_SETTINGS: "cmake.args='-G Unix Makefiles'" | |
CIBW_BEFORE_BUILD: pip install delvewheel | |
CIBW_REPAIR_COMMAND: delvewheel show -v --analyze-existing -w {dest_dir} {wheel} | |
CIBW_TEST_REQUIRES: pytest | |
CIBW_TEST_COMMAND: pytest {project}/python/finufft/test | |
# PyPy 3.10 triggers access violation under Windows, for some reason. | |
CIBW_TEST_SKIP: "pp310-win*" | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: cibw-wheels-windows | |
path: ./wheelhouse/*.whl |