mirror of
https://gitlab.freedesktop.org/libinput/libinput.git
synced 2025-12-20 05:40:04 +01:00
17.04 is EOL, and this means we can drop our meson-from-build section too Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
144 lines
3.8 KiB
YAML
144 lines
3.8 KiB
YAML
# vim: set expandtab shiftwidth=2 tabstop=8 textwidth=0:
|
|
|
|
libinput_jobs:
|
|
default_settings: &default_settings
|
|
working_directory: ~/libinput
|
|
# Define a couple of standardized build targets
|
|
# that we call from every build container
|
|
build_and_test_default: &build_and_test_default
|
|
name: Build
|
|
command: |
|
|
rm -rf build
|
|
meson build ${MESON_PARAMS}
|
|
meson configure build
|
|
ninja -v -C build ${NINJA_ARGS}
|
|
environment:
|
|
MESON_PARAMS: --prefix=/opt/libinput
|
|
build_and_test: &build_and_test
|
|
run:
|
|
<<: *build_and_test_default
|
|
build_no_libwacom: &build_no_libwacom
|
|
run:
|
|
<<: *build_and_test_default
|
|
name: Build - No libwacom
|
|
environment:
|
|
MESON_PARAMS: -Dlibwacom=false
|
|
build_no_debug_gui: &build_no_debug_gui
|
|
run:
|
|
<<: *build_and_test_default
|
|
name: Build - No debug-gui
|
|
environment:
|
|
MESON_PARAMS: -Ddebug-gui=false
|
|
build_no_tests: &build_no_tests
|
|
run:
|
|
<<: *build_and_test_default
|
|
name: Build - No tests
|
|
environment:
|
|
MESON_PARAMS: -Dtests=false
|
|
build_no_docs: &build_no_docs
|
|
run:
|
|
<<: *build_and_test_default
|
|
name: Build - No docs
|
|
environment:
|
|
MESON_PARAMS: -Ddocumentation=false
|
|
build_dist: &build_dist
|
|
run:
|
|
<<: *build_and_test_default
|
|
name: Build - ninja dist
|
|
environment:
|
|
NINJA_ARGS: dist
|
|
ninja_scan_build: &ninja_scan_build
|
|
run:
|
|
<<: *build_and_test_default
|
|
name: Ninja scan-build
|
|
environment:
|
|
NINJA_ARGS: scan-build
|
|
install: &install
|
|
run:
|
|
name: Installing
|
|
command: ninja -v -C build install
|
|
export_logs: &export_logs
|
|
store_artifacts:
|
|
path: ~/libinput/build/meson-logs
|
|
|
|
fedora_install: &fedora_install
|
|
run:
|
|
name: Install prerequisites
|
|
command: |
|
|
dnf upgrade -y libsolv
|
|
dnf install -y git gcc gcc-c++ meson check-devel libudev-devel libevdev-devel doxygen graphviz valgrind binutils libwacom-devel cairo-devel gtk3-devel glib2-devel mtdev-devel
|
|
|
|
fedora_build_all: &fedora_build_all
|
|
<<: *default_settings
|
|
steps:
|
|
- *fedora_install
|
|
- checkout
|
|
- *build_and_test
|
|
- *install
|
|
- *export_logs
|
|
- *build_no_libwacom
|
|
- *build_no_debug_gui
|
|
- *build_no_tests
|
|
- *build_no_docs
|
|
- *build_dist
|
|
|
|
ubuntu_install: &ubuntu_install
|
|
run:
|
|
name: Install prerequisites
|
|
command: |
|
|
apt-get update
|
|
apt-get install -y software-properties-common
|
|
add-apt-repository universe
|
|
apt-get update
|
|
apt-get install -y git gcc g++ meson check libudev-dev libevdev-dev doxygen graphviz valgrind binutils libwacom-dev libcairo2-dev libgtk-3-dev libglib2.0-dev libmtdev-dev
|
|
|
|
ubuntu_build_all: &ubuntu_build_all
|
|
<<: *default_settings
|
|
steps:
|
|
- *ubuntu_install
|
|
- checkout
|
|
- *build_and_test
|
|
- *install
|
|
- *export_logs
|
|
- *build_no_libwacom
|
|
- *build_no_debug_gui
|
|
- *build_no_tests
|
|
- *build_no_docs
|
|
- *build_dist
|
|
|
|
scan_build_run: &scan_build_run
|
|
<<: *default_settings
|
|
steps:
|
|
- *fedora_install
|
|
- run:
|
|
name: Install clang and find
|
|
command: dnf install -y clang-analyzer findutils
|
|
- checkout
|
|
- *ninja_scan_build
|
|
- *export_logs
|
|
- run:
|
|
name: Check scan-build results
|
|
command: test ! -d ~/libinput/build/meson-logs/scanbuild || test $(find ~/libinput/build/meson-logs/scanbuild -maxdepth 0 ! -empty -exec echo "not empty" \; | wc -l) -eq 0 || (echo "Check scan-build results" && false)
|
|
|
|
version: 2
|
|
jobs:
|
|
fedora_latest:
|
|
<<: *fedora_build_all
|
|
docker:
|
|
- image: fedora:latest
|
|
ubuntu_17_10:
|
|
<<: *ubuntu_build_all
|
|
docker:
|
|
- image: ubuntu:artful
|
|
scan_build:
|
|
<<: *scan_build_run
|
|
docker:
|
|
- image: fedora:latest
|
|
|
|
workflows:
|
|
version: 2
|
|
compile:
|
|
jobs:
|
|
- fedora_latest
|
|
- scan_build
|
|
- ubuntu_17_10
|