diff --git a/.github/workflows/wheels.yml b/.github/workflows/wheels.yml new file mode 100644 index 0000000..aef382e --- /dev/null +++ b/.github/workflows/wheels.yml @@ -0,0 +1,37 @@ +name: Build wheels + +on: + push: + tags: + - "v*.*.*" + +jobs: + build_wheels: + name: Build wheels for ${{ matrix.platforms[1] }} with Python ${{ matrix.python }} + runs-on: ${{ matrix.platforms[0] }} + strategy: + matrix: + platforms: + - [ubuntu-20.04, manylinux_x86_64] + - [ubuntu-20.04, musllinux_x86_64] + - [macos-13, macosx_x86_64] + - [macos-14, macosx_arm64] + - [windows-2019, win_amd64] + - [windows-2019, win32] + python: ["cp39", "cp310", "cp311", "cp312"] + + steps: + - uses: actions/checkout@v4 + + - uses: actions/setup-python@v5 + + - name: Build wheels + uses: pypa/cibuildwheel@v2.18.1 + env: + CIBW_BUILD: ${{ matrix.python }}-${{ matrix.platforms[1] }} + + + - uses: actions/upload-artifact@v4 + with: + name: cibw-wheels-${{ matrix.python }}-${{ matrix.platforms[1] }} + path: ./wheelhouse/*.whl