YAML syntax #47
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 | ||
on: [push] | ||
jobs: | ||
build_wheels: | ||
name: bdist_wheel for ${{ matrix.cibw_impl_name }} on ${{ matrix.os }} | ||
runs-on: ${{ matrix.os }} | ||
strategy: | ||
matrix: | ||
# FIXME? PQClean GNU extensions break clang thus MacOS | ||
os: [ubuntu-20.04, windows-2019] | ||
cibw-impl: ["cp3*", "pp3*"] | ||
include: | ||
- cibw_impl: "cp3*" | ||
cibw_impl_name: "CPython 3.X" | ||
- cibw_impl: "pp3*" | ||
cibw_impl_name: "PyPy 3.X" | ||
steps: | ||
- uses: actions/checkout@v4 | ||
# Used to host cibuildwheel | ||
- uses: actions/setup-python@v3 | ||
- name: Install cibuildwheel | ||
run: python -m pip install cibuildwheel==2.16.3 | ||
- name: Build wheels | ||
run: python -m cibuildwheel --output-dir wheelhouse | ||
env: | ||
CIBW_BUILD "${{ matrix.cibw_impl }}*" | ||
CIBW_BUILD_VERBOSITY: 1 | ||
# FIXME? cibuildwheel doesn't property implement delvewheel yet (delvewheel needs Python 3.7+ runtime, but CPython doesn't support using non-current runtimes for REPAIR_WHEEL_COMMAND) | ||
# FIXME? PQClean GNU extensions break musl | ||
CIBW_SKIP: "*36-win* *-musllinux_*" | ||
# https://cibuildwheel.readthedocs.io/en/stable/options/#:~:text=cibuildwheel%20doesn%27t%20yet%20ship%20a%20default%20repair%20command%20for%20Windows%2E | ||
CIBW_BEFORE_BUILD_WINDOWS: "pip install delvewheel" | ||
CIBW_REPAIR_WHEEL_COMMAND_WINDOWS: "delvewheel repair -w {dest_dir} {wheel}" | ||
- uses: actions/upload-artifact@v4 | ||
with: | ||
name: cibw-wheels-${{ matrix.os }}-${{ strategy.job-index }} | ||
path: ./wheelhouse/*.whl |