Skip to content

Add arm64 matrix job to Linux deps build workflow #5

Add arm64 matrix job to Linux deps build workflow

Add arm64 matrix job to Linux deps build workflow #5

name: Build Linux Deps

Check failure on line 1 in .github/workflows/build-deps-linux.yml

View workflow run for this annotation

GitHub Actions / .github/workflows/build-deps-linux.yml

Invalid workflow file

(Line: 40, Col: 9): Unrecognized named-value: 'matrix'. Located at position 41 within expression: inputs.arch == 'both' || inputs.arch == matrix.arch
on:
workflow_dispatch:
inputs:
version:
description: 'Deps version (e.g., 1.3.0)'
required: true
type: string
release_tag:
description: 'Upload to this release tag (e.g., deps-v1.3.0). Leave empty to skip upload.'
required: false
type: string
arch:
description: 'Architecture'
required: false
type: choice
options:
- x64
- arm64
- both
default: both
permissions:
contents: write
jobs:
build-deps:
strategy:
matrix:
include:
- os: ubuntu-22.04
arch: x64
- os: ubuntu-22.04-arm
arch: arm64
fail-fast: false
runs-on: ${{ matrix.os }}
if: ${{ inputs.arch == 'both' || inputs.arch == matrix.arch }}
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Install build dependencies
run: |
sudo apt-get update
sudo apt-get install -y \
ninja-build cmake nasm patchelf autoconf automake libtool \
cython3 pkg-config gcc g++ python3-pip \
libfftw3-dev libboost-filesystem-dev libboost-atomic-dev \
ocl-icd-opencl-dev opencl-headers libdvdread-dev \
unzip
# Ubuntu 22.04 ships meson 0.61 but VapourSynth needs >= 0.63
pip3 install meson
- name: Build dependencies
run: |
./Scripts/download-deps-linux.sh --force
- name: Package dependencies
run: |
./Scripts/package-deps-linux.sh --version "${{ inputs.version }}" --arch ${{ matrix.arch }}
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: VapourBox-deps-${{ inputs.version }}-linux-${{ matrix.arch }}
path: dist/VapourBox-deps-${{ inputs.version }}-linux-${{ matrix.arch }}.zip
- name: Upload to release
if: ${{ inputs.release_tag != '' }}
env:
GH_TOKEN: ${{ github.token }}
run: |
gh release upload "${{ inputs.release_tag }}" \
"dist/VapourBox-deps-${{ inputs.version }}-linux-${{ matrix.arch }}.zip" \
--clobber