blob: a47334e8d73b259dedd6fde027ffe04b7dec6b73 [file] [edit]
name: macos
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
permissions:
contents: read
jobs:
build:
runs-on: macos-latest
steps:
- name: Checkout
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- name: Setup Ccache
uses: hendrikmuhs/ccache-action@d62db5f07c26379fc4b4e0916f098a92573c3b03 # v1.2.23
with:
key: ${{ github.job }}-${{ runner.os }}-${{ runner.arch }}
- name: Install Dependencies
run: |
export HOMEBREW_NO_AUTO_UPDATE=1
export HOMEBREW_NO_INSTALL_CLEANUP=1
brew rm -f pkg-config@0.29.2
brew install \
cairo \
chafa \
freetype \
glib \
gobject-introspection \
glew \
glfw \
graphite2 \
icu4c \
libpng \
meson \
ninja \
pkgconf
- name: Setup Python
uses: actions/setup-python@ece7cb06caefa5fff74198d8649806c4678c61a1 # v6.3.0
with:
python-version: '3.12'
- name: Install Python Dependencies
run: pip3 install -r .ci/requirements.txt --require-hashes
- name: Setup Meson
env:
PKG_CONFIG_PATH: "/usr/local/opt/libffi/lib/pkgconfig"
run: |
brew link --force icu4c
ccache --version
meson setup build \
-Dauto_features=enabled \
-Ddocs=disabled \
-Dcoretext=enabled \
-Dgraphite=enabled \
-Doptimization=2 \
- name: Build
run: meson compile -Cbuild
- name: Test
run: meson test --print-errorlogs -Cbuild