Skip to content

Commit

Permalink
Merge pull request #85 from nabla-c0d3/support-for-linux-aarch64
Browse files Browse the repository at this point in the history
Build manylinux wheels for aarch64
  • Loading branch information
nabla-c0d3 authored Dec 26, 2024
2 parents 26dfdaf + 5235bfb commit 88e1add
Showing 1 changed file with 50 additions and 0 deletions.
50 changes: 50 additions & 0 deletions .github/workflows/build_wheels_linux_aarch64.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
# Workflow just for linux aarch64 wheels so it can run in parallel with the build_wheels workflow
name: Build aarch64 Wheels

on:
push:
branches: [ release ]
pull_request:
branches: [ release ]

jobs:
build_wheels:
name: Build aarch64 wheels on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-22.04]

steps:
- uses: actions/checkout@v4

- uses: actions/setup-python@v5
name: Install Python
with:
python-version: '3.10'

- name: Install cibuildwheel
run: python -m pip install "cibuildwheel>=2.22,<2.23"

# Needed for Linux aarch64 builds
- name: Set up QEMU
if: runner.os == 'Linux'
uses: docker/setup-qemu-action@v1
with:
platforms: all

- name: Build wheels
run: python -m cibuildwheel --output-dir wheelhouse
env:
CIBW_BUILD: "cp39-* cp310-* cp311-* cp312-* cp313-*"
CIBW_ARCHS_LINUX: aarch64 # Specifically build linux aarch64 wheels
CIBW_MANYLINUX_AARCH64_IMAGE: manylinux2014
CIBW_BEFORE_ALL: "python -m pip install setuptools invoke && invoke build.deps"
CIBW_BEFORE_BUILD: "python -m pip install setuptools invoke && invoke build.nassl"
CIBW_TEST_REQUIRES: "pytest"
CIBW_TEST_COMMAND: "python -m pytest {project}/tests"

- uses: actions/upload-artifact@v4
with:
name: ${{ matrix.os }}-wheels
path: ./wheelhouse/*.whl

0 comments on commit 88e1add

Please sign in to comment.