mirror of
https://github.com/libratbag/libratbag.git
synced 2026-11-07 23:23:52 +01:00
51 lines
1.7 KiB
YAML
51 lines
1.7 KiB
YAML
name: linux
|
|
|
|
on: [ push, pull_request ]
|
|
|
|
env:
|
|
UBUNTU_DEP_BUILD: |
|
|
gcc g++ pkg-config systemd libevdev-dev libglib2.0-dev
|
|
libjson-glib-dev libsystemd-dev libudev-dev libunistring-dev
|
|
python3-dev python3-evdev swig python3-sphinx
|
|
UBUNTU_DEP_TEST: check python3-gi python3-lxml valgrind
|
|
PIP_PACKAGES: meson ninja libevdev pyudev pytest sphinx_rtd_theme
|
|
|
|
jobs:
|
|
build-and-dist:
|
|
runs-on: ubuntu-20.04
|
|
strategy:
|
|
matrix:
|
|
meson_args:
|
|
- ''
|
|
- '-Dbuildtype=plain'
|
|
- '-Dbuildtype=release'
|
|
- '-Ddocumentation=true'
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: ./.github/actions/pkginstall
|
|
with:
|
|
apt: $UBUNTU_DEP_BUILD $UBUNTU_DEP_TEST
|
|
pip: $PIP_PACKAGES
|
|
- name: meson test ${{matrix.meson_args}}
|
|
uses: ./.github/actions/meson
|
|
with:
|
|
meson_args: --prefix=$PWD/_instdir ${{matrix.meson_args}}
|
|
ninja_args: install
|
|
- name: check installation of data files
|
|
run: diff -u <(cd data/devices; ls *.device) <(cd _instdir/share/libratbag; ls *.device)
|
|
- name: ninja uninstall
|
|
uses: ./.github/actions/meson
|
|
with:
|
|
meson_args: --prefix=$PWD/_instdir
|
|
ninja_args: uninstall
|
|
- name: check if any files are left after uninstall
|
|
run: (test -d _instdir && tree _instdir && exit 1) || exit 0
|
|
# Capture all the meson logs, even if we failed
|
|
- uses: actions/upload-artifact@v3
|
|
if: ${{ always() }} # even if we fail
|
|
with:
|
|
name: meson test logs
|
|
path: |
|
|
builddir/meson-logs/testlog*.txt
|
|
builddir/meson-logs/meson-log.txt
|