Skip to content

[Refactor]: Move sources into subdirectories #1916

[Refactor]: Move sources into subdirectories

[Refactor]: Move sources into subdirectories #1916

name: Build and test on macOS
on:
push:
branches:
- main
paths-ignore:
- web/**
- doc/**
pull_request:
branches:
- main
paths-ignore:
- web/**
- doc/**
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env:
SCCACHE_VERSION: "0.9.0"
jobs:
build:
env:
HOMEBREW_NO_INSTALL_UPGRADE: 1
HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK: 1
strategy:
matrix:
os:
- macos-13
- macos-14
runs-on: ${{ matrix.os }}
steps:
- name: Install dependencies
run: |
brew install --force \
cmake \
curl \
freetype \
gettext \
gperf \
imlib2 \
lcov \
librsvg \
libxfixes \
libxft \
libxi \
libxinerama \
libxml2 \
lua \
ninja \
pkg-config \
|| true # Ignore errors
- name: Checkout
uses: actions/checkout@v4
- name: Configure sccache
run: .github/scripts/setup-sccache.sh
- name: Load cached compilation artifacts
id: compiler-cache
uses: actions/cache@v4
with:
path: "${{ env.SCCACHE_DIR }}"
key: sccache-${{ matrix.os }}-${{ github.ref }}-${{ github.run_id }}
restore-keys: |
sccache-${{ matrix.os }}-${{ github.ref }}
- name: Configure with CMake
run: |
# Reset sccache statistics
sccache --zero-stats
cmake . -B build -G Ninja \
-DMAINTAINER_MODE=ON \
-DBUILD_WAYLAND=OFF \
-DBUILD_RSS=ON \
-DBUILD_CURL=ON
- name: Compile
run: cmake --build build
- name: Show sccache stats
run: sccache --show-stats
- name: Test
working-directory: build
run: ctest --output-on-failure