MangoHud/.github/workflows/ubuntu.yml
Emil Velikov a7655eb184 github: add Ubuntu based CI for push and PRs
Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2023-03-12 14:08:42 +01:00

60 lines
1.6 KiB
YAML

name: Ubuntu build testing
on: [push, pull_request]
jobs:
build-test:
strategy:
matrix:
compiler: [clang, gcc]
os: [ubuntu-22.04, ubuntu-20.04]
runs-on: ${{ matrix.os }}
steps:
- name: 'Checkout'
uses: actions/checkout@v3
- name: 'Install prerequisites'
run: |
sudo apt-get update
sudo apt-get install -y \
appstream \
glslang-tools \
ninja-build \
python3-mako \
python3-setuptools \
python3-wheel \
mesa-common-dev \
libcmocka-dev \
libdbus-1-dev \
libglew-dev \
libglfw3-dev \
libwayland-dev \
libxnvctrl-dev
sudo pip3 install 'meson>=0.60'
- name: 'Install clang'
if: ${{ (matrix.compiler == 'clang') }}
run: |
sudo apt-get install -y clang
echo "CC=clang" >> "$GITHUB_ENV"
echo "CXX=clang++" >> "$GITHUB_ENV"
- name: 'Install gcc'
if: ${{ (matrix.compiler == 'gcc') }}
run: |
sudo apt-get install -y gcc g++
echo "CC=gcc" >> "$GITHUB_ENV"
echo "CXX=g++" >> "$GITHUB_ENV"
- name: 'Configure'
run: meson setup ./builddir --prefix=/usr
-D include_doc=true
-D with_xnvctrl=enabled
-D with_x11=enabled
-D with_wayland=enabled
-D with_dbus=enabled
-D mangoapp=true
-D mangohudctl=true
-D mangoapp_layer=true
-D tests=enabled
- name: 'Build'
run: meson compile -C ./builddir || ninja -C ./builddir
- name: 'Install'
run: sudo meson install -C ./builddir