Skip to content

SongPage: fix assert() checking the "tag" range #220

SongPage: fix assert() checking the "tag" range

SongPage: fix assert() checking the "tag" range #220

Workflow file for this run

---
name: CI
on:
workflow_dispatch:
push:
paths-ignore:
- 'doc/**'
- 'lyrics/**'
- 'po/**'
branches:
- master
pull_request:
paths-ignore:
- 'doc/**'
- 'lyrics/**'
- 'po/**'
branches:
- master
permissions:
contents: read # to fetch code (actions/checkout)
jobs:
build-linux:
strategy:
matrix:
compiler: [gcc14, gcc11, clang]
include:
- compiler: gcc14
os: ubuntu-24.04
cc: gcc-14
cxx: g++-14
ldflags: -fuse-ld=mold
packages: g++-14 mold libfmt-dev
meson_options:
- compiler: gcc11
os: ubuntu-22.04
cc: gcc-11
cxx: g++-11
ldflags:
packages: g++-11
meson_options: --force-fallback-for=fmt
- compiler: clang
os: ubuntu-24.04
cc: clang
cxx: clang++
ldflags: -fuse-ld=lld
packages: clang lld
meson_options: --force-fallback-for=fmt
runs-on: ${{ matrix.os }}
env:
CC: ccache ${{ matrix.cc }}
CXX: ccache ${{ matrix.cxx }}
LDFLAGS: ${{ matrix.ldflags }}
steps:
- id: checkout
uses: actions/checkout@v4
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install -y --no-install-recommends \
meson \
ccache \
ncmpc \
${{ matrix.packages }} \
libncursesw5-dev \
libncurses5-dev \
libpcre2-dev \
libmpdclient-dev
- id: cache-ccache
uses: hendrikmuhs/ccache-action@v1
with:
key: ${{ matrix.compiler }}
- name: Configure Full
run: |
meson setup \
-Ddocumentation=disabled \
-Dlyrics_screen=true \
-Dchat_screen=true \
--wrap-mode nofallback \
${{ matrix.meson_options }} \
output/full
- name: Build Full
run: meson compile -C output/full --verbose
- name: Configure Mini
run: |
meson setup \
-Dbuildtype=minsize \
-Dauto_features=disabled \
-Db_ndebug=true -Db_lto=true \
-Dcurses=ncurses \
-Dcolors=false \
-Dmultibyte=false \
-Dasync_connect=false \
-Dmini=true \
--wrap-mode nofallback \
${{ matrix.meson_options }} \
output/mini
- name: Build Mini
run: meson compile -C output/mini --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 \
fmt \
ccache \
ncurses \
pcre2 \
libmpdclient
- id: cache-ccache
uses: hendrikmuhs/ccache-action@v1
with:
key: macos
- name: Configure Full
run: |
meson setup \
-Ddocumentation=disabled \
-Dlyrics_screen=true \
-Dchat_screen=true \
--wrap-mode nofallback \
${{ matrix.meson_options }} \
output/full
- name: Build Full
run: meson compile -C output/full --verbose
- name: Configure Mini
run: |
meson setup \
-Dbuildtype=minsize \
-Dauto_features=disabled \
-Db_ndebug=true -Db_lto=true \
-Dcurses=ncurses \
-Dcolors=false \
-Dmultibyte=false \
-Dasync_connect=false \
-Dmini=true \
--wrap-mode nofallback \
${{ matrix.meson_options }} \
output/mini
- name: Build Mini
run: meson compile -C output/mini --verbose