Skip to content

.github/workflows/build.yml: run Meson manually without BSFishy/meson… #62

.github/workflows/build.yml: run Meson manually without BSFishy/meson…

.github/workflows/build.yml: run Meson manually without BSFishy/meson… #62

Workflow file for this run

---
on:
workflow_dispatch:
push:
paths-ignore:
- 'contrib/**'
- 'doc/**'
- 'systemd/**'
branches:
- master
pull_request:
paths-ignore:
- 'contrib/**'
- 'doc/**'
- 'systemd/**'
branches:
- master
permissions:
contents: read # to fetch code (actions/checkout)
jobs:
build-linux:
strategy:
matrix:
os: [ubuntu-24.04, ubuntu-22.04, ubuntu-20.04]
include:
- os: ubuntu-24.04
cc: gcc-14
cxx: g++-14
packages: g++-14
meson_options:
- os: ubuntu-22.04
cc: gcc-11
cxx: g++-11
packages: g++-11
meson_options:
- os: ubuntu-20.04
cc: gcc-10
cxx: g++-10
packages: g++-10
meson_options:
runs-on: ${{ matrix.os }}
env:
CC: ccache ${{ matrix.cc }}
CXX: ccache ${{ matrix.cxx }}
steps:
- id: checkout
uses: actions/checkout@v4
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install -y --no-install-recommends \
${{ matrix.packages }} \
meson \
ccache \
libsystemd-dev \
libgcrypt-dev \
libcurl4-gnutls-dev \
libmpdclient-dev
- id: cache-ccache
uses: hendrikmuhs/ccache-action@v1
with:
key: ${{ matrix.os }}
- name: Configure
run: |
meson setup \
-Dsystemd=enabled \
-Dsyslog=enabled \
-Dtest=true \
--wrap-mode nofallback \
${{ matrix.meson_options }} \
output
- name: Build
run: ninja -C output --verbose
build-macos:
runs-on: macos-latest
steps:
- id: checkout
uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: 3.x
- name: Install dependencies
run: |
brew install \
meson ninja \
ccache \
libgcrypt \
curl \
libmpdclient
- id: cache-ccache
uses: hendrikmuhs/ccache-action@v1
with:
key: macos
- name: Configure
run: |
meson setup \
-Dtest=true \
--wrap-mode nofallback \
${{ matrix.meson_options }} \
output
- name: Build
run: ninja -C output --verbose