Skip to content

Merge pull request #84 from monome/windows-arm64-ci-builds #13

Merge pull request #84 from monome/windows-arm64-ci-builds

Merge pull request #84 from monome/windows-arm64-ci-builds #13

Workflow file for this run

name: build
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
build:
strategy:
fail-fast: false
matrix:
include:
- name: linux
os: ubuntu-latest
shell: bash
- name: macos
os: macos-latest
shell: bash
- name: windows-x64
os: windows-latest
shell: msys2 {0}
msystem: CLANG64
msys_packages: >-
mingw-w64-clang-x86_64-toolchain
mingw-w64-clang-x86_64-cmake
mingw-w64-clang-x86_64-ninja
- name: windows-arm64
os: windows-11-arm
shell: msys2 {0}
msystem: CLANGARM64
msys_packages: >-
mingw-w64-clang-aarch64-toolchain
mingw-w64-clang-aarch64-cmake
mingw-w64-clang-aarch64-ninja
name: build (${{ matrix.name }})
runs-on: ${{ matrix.os }}
defaults:
run:
shell: ${{ matrix.shell }}
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- name: install dependencies (linux)
if: runner.os == 'Linux'
run: |
sudo apt update && sudo apt install -y build-essential cmake ninja-build libudev-dev libavahi-compat-libdnssd-dev
- name: install dependencies (windows)
if: runner.os == 'Windows'
uses: msys2/setup-msys2@v2
with:
msystem: ${{ matrix.msystem }}
update: true
install: ${{ matrix.msys_packages }}
- name: configure
run: |
cmake -B build -S . -G Ninja -DCMAKE_BUILD_TYPE=Release
- name: build
run: |
cmake --build build
- name: upload artifacts (windows)
if: runner.os == 'Windows'
uses: actions/upload-artifact@v4
with:
name: serialosc-${{ matrix.name }}
path: build/bin/
if-no-files-found: warn