From 926bded637a76ee62e8c1b5f6ef642aa3e6fed41 Mon Sep 17 00:00:00 2001 From: Andrei Tumbar Date: Mon, 9 Nov 2026 16:29:10 -0800 Subject: [PATCH] Expand python pip build matrix --- .github/workflows/pip.yml | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/.github/workflows/pip.yml b/.github/workflows/pip.yml index 622b4e53..10c758e0 100644 --- a/.github/workflows/pip.yml +++ b/.github/workflows/pip.yml @@ -20,12 +20,27 @@ concurrency: jobs: wheels: - name: Wheel ${{ matrix.package.name }} (${{ matrix.os }}) - runs-on: ${{ matrix.os }} + name: Wheel ${{ matrix.package.name }} (${{ matrix.platform.target }}) + runs-on: ${{ matrix.platform.runner }} strategy: fail-fast: false matrix: - os: [ ubuntu-latest, macos-latest, windows-latest ] + # One runner per OS; architectures other than the runner's own are + # cross-compiled (Linux in maturin's manylinux cross images, macOS and + # Windows with the host toolchain). + platform: + - runner: ubuntu-latest + target: x86_64 + - runner: ubuntu-latest + target: aarch64 + - runner: macos-latest + target: aarch64 + - runner: macos-latest + target: x86_64 + - runner: windows-latest + target: x64 + - runner: windows-latest + target: aarch64 package: - name: fprime-fpp-lsp dir: fpp_lsp_server @@ -62,6 +77,7 @@ jobs: uses: PyO3/maturin-action@v1 with: command: build + target: ${{ matrix.platform.target }} args: --release --out dist working-directory: ${{ matrix.package.dir }} manylinux: auto @@ -69,7 +85,7 @@ jobs: - name: Upload wheels uses: actions/upload-artifact@v4 with: - name: wheels-${{ matrix.package.name }}-${{ matrix.os }} + name: wheels-${{ matrix.package.name }}-${{ runner.os }}-${{ matrix.platform.target }} path: ${{ matrix.package.dir }}/dist/* sdist: