Skip to content

Build system overhaul #250

Build system overhaul

Build system overhaul #250

name: Smoketest / Informative / Ubuntu
on:
pull_request:
merge_group:
jobs:
test:
name: Compilers
runs-on: ubuntu-22.04
strategy:
fail-fast: false
matrix:
# Versions between LTS are not available for long - we only do forwards
ubuntu:
- "20.04"
- "22.04"
- "22.10"
- "23.04"
compiler:
- g++
- clang++
build-type:
- Release
- Debug
container: ubuntu:${{ matrix.ubuntu }}
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 }}-ubuntu-${{ matrix.ubuntu }}-${{ matrix.compiler }}-${{ matrix.build-type }}
- name: Build Anura
env:
CXX: ${{ matrix.compiler }}
# Compile with number of available hyperthreads
run: |
cmake -DCMAKE_BUILD_TYPE="${{ matrix.build-type }}" .
make -j "$(getconf _NPROCESSORS_ONLN)"
- name: Run Unit Tests
run: ./anura --tests