# See the documentation here: #
# https://wayland.freedesktop.org/libinput/doc/latest/building_libinput.html #
###############################################################################
- FEDORA_PACKAGES: 'git-core gcc gcc-c++ pkgconf-pkg-config meson check-devel libudev-devel libevdev-devel doxygen graphviz python3-sphinx python3-recommonmark python3-sphinx_rtd_theme python3-pytest-xdist libwacom-devel cairo-devel gtk4-devel glib2-devel mtdev-devel diffutils wayland-protocols-devel valgrind systemd-udev qemu-img qemu-system-x86-core qemu-system-aarch64-core jq python3-click python3-rich'
+ FEDORA_PACKAGES: 'git-core gcc gcc-c++ pkgconf-pkg-config meson check-devel libudev-devel libevdev-devel doxygen graphviz python3-sphinx python3-recommonmark python3-sphinx_rtd_theme python3-pytest-xdist libwacom-devel cairo-devel gtk4-devel glib2-devel mtdev-devel diffutils wayland-protocols-devel black clang-analyzer jq rpmdevtools valgrind systemd-udev qemu-img qemu-system-x86-core qemu-system-aarch64-core jq python3-click python3-rich'
DEBIAN_PACKAGES: 'git gcc g++ pkg-config meson check libudev-dev libevdev-dev doxygen graphviz python3-sphinx python3-recommonmark python3-sphinx-rtd-theme python3-pytest-xdist libwacom-dev libcairo2-dev libgtk-3-dev libglib2.0-dev libmtdev-dev curl'
UBUNTU_PACKAGES: 'git gcc g++ pkg-config meson check libudev-dev libevdev-dev doxygen graphviz python3-sphinx python3-recommonmark python3-sphinx-rtd-theme python3-pytest-xdist libwacom-dev libcairo2-dev libgtk-3-dev libglib2.0-dev libmtdev-dev'
ARCH_PACKAGES: 'git gcc pkgconfig meson check libsystemd libevdev doxygen graphviz python-sphinx python-recommonmark python-sphinx_rtd_theme python-pytest-xdist libwacom gtk4 mtdev diffutils wayland-protocols'
# changing these will force rebuilding the associated image
# Note: these tags have no meaning and are not tied to a particular
# libinput version
- FEDORA_TAG: '2022-11-16.1'
- DEBIAN_TAG: '2022-11-16.1'
- UBUNTU_TAG: '2022-11-16.1'
- ARCH_TAG: '2022-11-16.1'
- ALPINE_TAG: '2022-11-16.1'
- FREEBSD_TAG: '2022-11-16.1'
+ FEDORA_TAG: '2022-11-16.2'
+ DEBIAN_TAG: '2022-11-16.2'
+ UBUNTU_TAG: '2022-11-16.2'
+ ARCH_TAG: '2022-11-16.2'
+ ALPINE_TAG: '2022-11-16.2'
+ FREEBSD_TAG: '2022-11-16.2'
FDO_UPSTREAM_REPO: libinput/libinput
variables:
NINJA_ARGS: ''
MESON_TEST_ARGS: ''
- before_script:
- - dnf install -y clang-analyzer
script:
- .gitlab-ci/meson-build.sh
- export SCANBUILD="$PWD/.gitlab-ci/scanbuild-wrapper.sh"
python-format@fedora:36:
extends:
- .fedora-build@template
- before_script:
- - dnf install -y black
script:
- black $(git grep -l '^#!/usr/bin/env python3')
- git diff --exit-code || (echo "Please run Black against all Python files" && false)
check-test-suites:
extends:
- .fedora-build@template
- before_script:
- - dnf install -y jq
script:
- meson builddir
- meson introspect builddir --test | jq -r '.[].name' | grep 'libinput-test-suite' | sort > meson-testsuites
needs:
- "fedora:36@container-prep"
script:
- - dnf install -y rpmdevtools jq
- meson "$MESON_BUILDDIR"
- VERSION=$(meson introspect "$MESON_BUILDDIR" --projectinfo | jq -r .version)
- sed -e "s/@PIPELINEID@/${CI_PIPELINE_ID}/"
variables:
NINJA_ARGS: ''
MESON_TEST_ARGS: ''
- before_script:
- - dnf install -y clang-analyzer
script:
- .gitlab-ci/meson-build.sh
- export SCANBUILD="$PWD/.gitlab-ci/scanbuild-wrapper.sh"
python-format@{{distro.name}}:{{version}}:
extends:
- .{{distro.name}}-build@template
- before_script:
- - dnf install -y black
script:
- black $(git grep -l '^#!/usr/bin/env python3')
- git diff --exit-code || (echo "Please run Black against all Python files" && false)
check-test-suites:
extends:
- .{{distro.name}}-build@template
- before_script:
- - dnf install -y jq
script:
- meson builddir
- meson introspect builddir --test | jq -r '.[].name' | grep 'libinput-test-suite' | sort > meson-testsuites
needs:
- "fedora:36@container-prep"
script:
- - dnf install -y rpmdevtools jq
- meson "$MESON_BUILDDIR"
- VERSION=$(meson introspect "$MESON_BUILDDIR" --projectinfo | jq -r .version)
- sed -e "s/@PIPELINEID@/${CI_PIPELINE_ID}/"
#
# We're happy to rebuild all containers when one changes.
-.default_tag: &default_tag '2022-11-16.1'
+.default_tag: &default_tag '2022-11-16.2'
distributions:
- name: fedora
- mtdev-devel
- diffutils
- wayland-protocols-devel
+ - black # for the Python black job, optional
+ - clang-analyzer # for the scan-build job, optional
+ - jq # for the test suite check job, optional
+ - rpmdevtools # for the rpm build job, optional
- valgrind # for the valgrind run, optional
# below packages are for the qemu runs, so optional
- systemd-udev # for the qemu run