Skip to content

Commit

Permalink
Added linux aarch64/AMD64 build support (#129)
Browse files Browse the repository at this point in the history
  • Loading branch information
Elgemp4 authored Nov 19, 2024
1 parent 43dd41e commit b9e5833
Show file tree
Hide file tree
Showing 2 changed files with 61 additions and 2 deletions.
1 change: 1 addition & 0 deletions .github/scripts/build-linux.sh
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ fi

# install compile-time dependencies
${PYBIN}/pip install numpy==${NUMPY_VERSION}
${PYBIN}/pip install setuptools

# List installed packages
${PYBIN}/pip freeze
Expand Down
62 changes: 60 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,31 @@ jobs:
python-arch: 'x86_64'
python-version: '3.12'
numpy-version: '2.0.*'
#ARM 64
- os-image: ubuntu-latest
os-name: linux
docker-image: quay.io/pypa/manylinux_2_28_aarch64
python-arch: 'aarch64'
python-version: '3.9'
numpy-version: '2.0.*'
- os-image: ubuntu-latest
os-name: linux
docker-image: quay.io/pypa/manylinux_2_28_aarch64
python-arch: 'aarch64'
python-version: '3.10'
numpy-version: '2.0.*'
- os-image: ubuntu-latest
os-name: linux
docker-image: quay.io/pypa/manylinux_2_28_aarch64
python-arch: 'aarch64'
python-version: '3.11'
numpy-version: '2.0.*'
- os-image: ubuntu-latest
os-name: linux
docker-image: quay.io/pypa/manylinux_2_28_aarch64
python-arch: 'aarch64'
python-version: '3.12'
numpy-version: '2.0.*'

- os-image: macos-12
os-name: mac
Expand Down Expand Up @@ -139,14 +164,18 @@ jobs:
- uses: actions/checkout@v4
with:
submodules: true

# - name: Initialize CodeQL
# if: matrix.config.python-version == '3.10'
# uses: github/codeql-action/init@v3
# with:
# languages: python, cpp
# setup-python-dependencies: false

- name: Set up QEMU (Linux ARM64)
if: matrix.config.os-name == 'linux' && matrix.config.python-arch == 'aarch64'
uses: docker/setup-qemu-action@v3

- name: Build wheel (Linux)
if: matrix.config.os-name == 'linux'
# See comment above.
Expand Down Expand Up @@ -224,6 +253,31 @@ jobs:
python-version: '3.12'
numpy-version: '2.0.*'

- os-image: ubuntu-latest
os-name: linux
docker-image: quay.io/pypa/manylinux_2_28_aarch64
python-arch: 'aarch64'
python-version: '3.9'
numpy-version: '2.0.*'
- os-image: ubuntu-latest
os-name: linux
docker-image: quay.io/pypa/manylinux_2_28_aarch64
python-arch: 'aarch64'
python-version: '3.10'
numpy-version: '2.0.*'
- os-image: ubuntu-latest
os-name: linux
docker-image: quay.io/pypa/manylinux_2_28_aarch64
python-arch: 'aarch64'
python-version: '3.11'
numpy-version: '2.0.*'
- os-image: ubuntu-latest
os-name: linux
docker-image: quay.io/pypa/manylinux_2_28_aarch64
python-arch: 'aarch64'
python-version: '3.12'
numpy-version: '2.0.*'

- os-image: macos-12
os-name: mac
python-arch: x86_64
Expand Down Expand Up @@ -305,6 +359,10 @@ jobs:
name: wheel-${{ matrix.config.os-name }}-${{ matrix.config.python-arch }}-${{ matrix.config.python-version }}
path: dist

- name: Set up QEMU (Linux ARM64)
if: matrix.config.os-name == 'linux' && matrix.config.python-arch == 'aarch64'
uses: docker/setup-qemu-action@v3

- name: Test wheel (Linux)
if: matrix.config.os-name == 'linux'
# run: .github/scripts/test-linux.sh
Expand Down Expand Up @@ -374,7 +432,7 @@ jobs:

- name: Install from wheel
run: |
pip install dist/pyvirtualcam*cp310-manylinux*.whl
pip install dist/pyvirtualcam*cp310-manylinux*_x86_64.whl
pip install -r dev-requirements.txt
- name: Build docs
Expand Down

0 comments on commit b9e5833

Please sign in to comment.