mirror of
https://github.com/encounter/aurora.git
synced 2026-07-09 18:19:33 -07:00
64 lines
1.8 KiB
YAML
64 lines
1.8 KiB
YAML
name: Build & test
|
|
|
|
on:
|
|
push:
|
|
pull_request:
|
|
|
|
env:
|
|
SCCACHE_GHA_ENABLED: "true"
|
|
RUSTC_WRAPPER: "sccache"
|
|
|
|
jobs:
|
|
build:
|
|
name: Build & test
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os:
|
|
- ubuntu-latest
|
|
- macos-latest
|
|
- windows-latest
|
|
build_type:
|
|
- RelWithDebInfo
|
|
- Debug
|
|
runs-on: ${{ matrix.os }}
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v6
|
|
|
|
- name: Install dependencies (Ubuntu)
|
|
if: ${{ matrix.os == 'ubuntu-latest' }}
|
|
run: |
|
|
sudo apt-get update
|
|
sudo apt-get install build-essential git make pkg-config cmake ninja-build \
|
|
libasound2-dev libpulse-dev libaudio-dev libfribidi-dev libjack-dev libsndio-dev \
|
|
libx11-dev libxext-dev libx11-xcb-dev libxrandr-dev libxcursor-dev libxfixes-dev \
|
|
libxi-dev libxss-dev libxtst-dev libxkbcommon-dev libdrm-dev libgbm-dev \
|
|
libgl1-mesa-dev libgles2-mesa-dev libegl1-mesa-dev libdbus-1-dev libibus-1.0-dev \
|
|
libudev-dev libthai-dev libpipewire-0.3-dev libwayland-dev libdecor-0-dev \
|
|
liburing-dev
|
|
|
|
- name: Install dependencies (macOS)
|
|
if: ${{ matrix.os == 'macos-latest' }}
|
|
run: brew install sdl3
|
|
|
|
- name: Setup sccache
|
|
uses: mozilla-actions/sccache-action@v0.0.10
|
|
|
|
- name: Set up MSVC env
|
|
if: ${{ matrix.os == 'windows-latest' }}
|
|
uses: ilammy/msvc-dev-cmd@v1
|
|
|
|
- name: Configure
|
|
run: >
|
|
cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=${{ matrix.build_type }}
|
|
-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache
|
|
-DCMAKE_MSVC_DEBUG_INFORMATION_FORMAT=Embedded
|
|
|
|
- name: Build
|
|
run: cmake --build build
|
|
|
|
- name: Test
|
|
run: ctest --test-dir build --output-on-failure
|