libinput 1.22.0
[platform/upstream/libinput.git] / .gitlab-ci / config.yml
1 # This file contains the configuration for the gitlab ci.
2 # See the .gitlab-ci/generate-gitlab-ci.py file for more info
3 #
4
5 # We're happy to rebuild all containers when one changes.
6 .default_tag: &default_tag '2022-11-16.2'
7
8 distributions:
9   - name: fedora
10     tag: *default_tag
11     versions:
12       - '35'
13       - '36'
14     use_for_custom_build_tests: true
15     use_for_qemu_tests: true
16     packages:
17       - git-core
18       - gcc
19       - gcc-c++
20       - pkgconf-pkg-config
21       - meson
22       - check-devel
23       - libudev-devel
24       - libevdev-devel
25       - doxygen
26       - graphviz
27       - python3-sphinx
28       - python3-recommonmark
29       - python3-sphinx_rtd_theme
30       - python3-pytest-xdist
31       - libwacom-devel
32       - cairo-devel
33       - gtk4-devel
34       - glib2-devel
35       - mtdev-devel
36       - diffutils
37       - wayland-protocols-devel
38       - black           # for the Python black job, optional
39       - clang-analyzer  # for the scan-build job, optional
40       - jq              # for the test suite check job, optional
41       - rpmdevtools     # for the rpm build job, optional
42       - valgrind        # for the valgrind run, optional
43       # below packages are for the qemu runs, so optional
44       - systemd-udev    # for the qemu run
45       - qemu-img
46       - qemu-system-x86-core
47       - qemu-system-aarch64-core
48       - jq
49       - python3-click
50       - python3-rich
51   - name: debian
52     tag: *default_tag
53     versions:
54       - 'stable'
55     packages:
56       - git
57       - gcc
58       - g++
59       - pkg-config
60       - meson
61       - check
62       - libudev-dev
63       - libevdev-dev
64       - doxygen
65       - graphviz
66       - python3-sphinx
67       - python3-recommonmark
68       - python3-sphinx-rtd-theme
69       - python3-pytest-xdist
70       - libwacom-dev
71       - libcairo2-dev
72       - libgtk-3-dev
73       - libglib2.0-dev
74       - libmtdev-dev
75       - curl            # for the coverity job
76   - name: ubuntu
77     tag: *default_tag
78     versions:
79       - '22.04'
80     packages:
81       - git
82       - gcc
83       - g++
84       - pkg-config
85       - meson
86       - check
87       - libudev-dev
88       - libevdev-dev
89       - doxygen
90       - graphviz
91       - python3-sphinx
92       - python3-recommonmark
93       - python3-sphinx-rtd-theme
94       - python3-pytest-xdist
95       - libwacom-dev
96       - libcairo2-dev
97       - libgtk-3-dev
98       - libglib2.0-dev
99       - libmtdev-dev
100   - name: arch
101     tag: *default_tag
102     versions:
103       - 'rolling'
104     packages:
105       - git
106       - gcc
107       - pkgconfig
108       - meson
109       - check
110       - libsystemd
111       - libevdev
112       - doxygen
113       - graphviz
114       - python-sphinx
115       - python-recommonmark
116       - python-sphinx_rtd_theme
117       - python-pytest-xdist
118       - libwacom
119       - gtk4
120       - mtdev
121       - diffutils
122       - wayland-protocols
123   - name: alpine
124     tag: *default_tag
125     versions:
126       - 'latest'
127     packages:
128       - git
129       - gcc build-base
130       - pkgconfig
131       - meson
132       - check-dev
133       - eudev-dev
134       - libevdev-dev
135       - libwacom-dev
136       - cairo-dev
137       - gtk4.0-dev
138       - mtdev-dev
139       - bash
140     build:
141       extra_variables:
142         - "MESON_ARGS: '-Ddocumentation=false' # alpine does not have python-recommonmark"
143         # We don't run the tests on alpine. The litest-selftest fails
144         # for any tcase_add_exit_test/tcase_add_test_raise_signal
145         # but someone more invested in musl will have to figure that out.
146         - "MESON_TEST_ARGS: '' # litest-selftest fails on musl"
147   - name: freebsd
148     tag: *default_tag
149     qemu_based: true
150     versions:
151       - '13.1'
152     packages:
153       - git
154       - pkgconf
155       - meson
156       - libepoll-shim
157       - libudev-devd
158       - libevdev
159       - libwacom
160       - gtk3
161       - libmtdev
162       - bash
163       - wayland
164     build:
165       extra_variables:
166         - "MESON_ARGS: '-Dtests=false -Ddocumentation=false' # doxygen drags down too many deps"
167         # We don't run the tests on FreeBSD, someone would have to fix the
168         # test suite to work on BSD first.
169         - "MESON_TEST_ARGS: '' # test suite doesn't work on BSD yet"
170
171 test_suites:
172   - name: touchpad
173     suites:
174       - touchpad
175   - name: tap
176     suites:
177       - touchpad-tap
178   - name: touchpad-buttons
179     suites:
180       - touchpad-buttons
181   - name: tablet
182     suites:
183       - tablet
184   - name: gestures-device
185     suites:
186       - gestures
187       - device
188   - name: backends
189     suites:
190       - path
191       - udev
192   - name: misc
193     suites:
194       - log
195       - misc
196       - quirks
197   - name: other devices
198     suites:
199       - keyboard
200       - pad
201       - switch
202       - trackball
203       - trackpoint
204       - totem
205       - touch
206   - name: pointer
207     suites:
208       - pointer
209
210 b2c:
211   version: v0.9.8
212   kernel: https://gitlab.freedesktop.org/api/v4/projects/libevdev%2Fhid-tools/packages/generic/kernel-x86_64/v5.19/bzImage