Skip to content

Build system overhaul #141

Build system overhaul

Build system overhaul #141

name: Smoketest / Informative / Debian
on:
pull_request:
merge_group:
jobs:
test:
name: Compilers
runs-on: ubuntu-22.04
strategy:
fail-fast: false
matrix:
debian:
# Bullseye is the oldest Debian with a new enough glm
- "bullseye" # 11
- "bookworm" # 12
- "trixie" # 13
compiler:
- g++
- clang++
container: debian:${{ matrix.debian }}-slim
steps:
- name: Install Dependencies
env:
DEBIAN_FRONTEND: noninteractive
run: |
apt-get -qq update
apt-get -qq upgrade -y
apt-get -qq install -y --no-install-recommends \
apt-file
apt-file update
apt-get -qq install -y --no-install-recommends \
ca-certificates \
git \
"$(\
apt-file search '/usr/bin/${{ matrix.compiler }}' \
| head -n 1 \
| cut -d' ' -f 1 \
| sed 's/://g' \
)" \
cmake \
make \
ccache \
libboost-dev \
libboost-filesystem-dev \
libboost-locale-dev \
libboost-regex-dev \
libboost-system-dev \
libcairo2-dev \
libglew-dev \
libglm-dev \
libsdl2-dev \
libsdl2-image-dev \
libsdl2-mixer-dev \
libsdl2-ttf-dev \
libvorbis-dev
- name: Checkout Anura
uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3
with:
submodules: true
- name: Set ccache up
uses: hendrikmuhs/ccache-action@ca3acd2731eef11f1572ccb126356c2f9298d35e # v1.2.9
with:
key: ${{ github.job }}-debian-${{ matrix.debian }}-${{ matrix.compiler }}
- name: Build Anura
env:
CXX: ${{ matrix.compiler }}
# Compile with number of available hyperthreads
run: |
cmake .
make -j "$(getconf _NPROCESSORS_ONLN)"
- name: Run Unit Tests
run: ./anura --tests