diff --git a/.github/workflows/build-python-wheels.yml b/.github/workflows/build-python-wheels.yml new file mode 100644 index 000000000..693df2870 --- /dev/null +++ b/.github/workflows/build-python-wheels.yml @@ -0,0 +1,29 @@ +name: Build Python Wheels + +on: [push, pull_request] + +jobs: + build_wheels: + name: Build wheels on ${{ matrix.os }} + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-20.04, windows-2019, macos-11] + + steps: + - uses: actions/checkout@v4 + + - name: Generate Python bindings + run: ./scripts/uniffi_bindgen_generate_python.sh + + - name: Build wheels + uses: pypa/cibuildwheel@v1.12.0 + env: + CIBW_ARCHS_MACOS: "x86_64 arm64 universal2" + CIBW_ARCHS_LINUX: "auto aarch64" + with: + package-dir: ./bindings/python + + - uses: actions/upload-artifact@v3 + with: + path: ./wheelhouse/*.whl