Otherwise, the distribution tarballs will be generated based on what's
in libevdev_la_SOURCES, which only includes the headers for the
operating system the maintainer happens to be running "make dist"
from. As a result of this, e.g. the 1.13.0 tarball only includes the
headers for Linux, making the tarball unbuildable for FreeBSD.
"meson dist" was already doing the right thing.
Signed-off-by: Alyssa Ross <hi@alyssa.is>
This is copied from libinput's CI but as one large change rather than
cherry-picking the process on how to get here. meson-build.sh is synched
with libinput's version - it is a more generic version anyway.
With this change we no longer require separate images for the qemu runs,
our default image is qemu-capable and can be run in qemu via
boot2container (b2c).
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Only use the LIBEVDEV_SKIP_ROOT_TESTS env var in autotools where we need
it, in meson we can use meson to control which tests we (don't) want to
run.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Unlike autotools distcheck which ensures we didn't forget to add
anything to the makefiles, ninja dist just zips up the git repo.
It does run the tests though but without suite selection which is a
problem for us here.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Use the new needs-uinput suite specifier for the meson build job, and
use --no-tests for ninja dist in the autotools build job.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
In the no-check:meson job, the ninja arg was "dist" so the test would be
run as part of that anyway (and skipped, since we didn't have check).
In the no-doxygen-check:meson job, the ninja arg was zero so the test
would be skipped but since we don't have check we might as well just
run it as empty test suite.
And the same applies to the scan-build job, running the test shouldn't
hurt here.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
We have meson with a proper test suite setup and this currently breaks
the CI due to some Arch issues with glibc debuginfo packages. Let's just
drop this so we don't run valgrind unconditionally.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Required by the debian sid containers, otherwise we fail because of a
missing /etc/apt/sources.list file.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Fix invalid bool usage which violates official meson specification and thus
breaks muon, an implementation of meson written in C.
Signed-off-by: illiliti <illiliti@protonmail.com>
While I was running the tests for libevdev on a
system, I had a test failure, and it told me to report it to
bugs.freedesktop.org.
This project uses GitLab now, so update the URL.
Signed-off-by: Douglas R. Reno <renodr@linuxfromscratch.org>
This is a noop, meson gets its compile dependencies from the compiler,
listing it here makes no difference.
Same is true for listing the other two linux/input/*.h headers as
sources.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
The latter is deprecated, so let's bump the meson version requirement
and use the newer, shiny feature.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
With the 64 bit timestamps, the struct layout changes into a flatter
version, so let's use the input_event_(u)sec helpers to transparently
handle this.
Fixes#25
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
No big point building for Centos 7 anywmore, and Centos 8 is now Centos
Stream only which needs fixing in the CI templates first.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
A non-installed tool to make it easy to check if newly added codes are
indeed supported correctly.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
The example code for creating uinput devices produces the following
warnings:
warning: unused variable ‘ev’ [-Wunused-variable]
| struct input_event ev[2];
| ^~
warning: unused variable ‘new_fd’ [-Wunused-variable]
| int fd, new_fd, uifd;
| ^~~~~~
warning: ‘err’ may be used uninitialized in this function [-Wmaybe-uninitialized]
| return err;
| ^~~
Signed-off-by: José Expósito <jose.exposito89@gmail.com>
This is especially relevant for cross-compilation, since libevdev uses
`clock_gettime`.
This came up in https://github.com/JuliaPackaging/Yggdrasil/pull/3201.
Signed-off-by: Simeon Schaub <simeondavidschaub99@gmail.com>
Generate the snippet for whichever is the last version in the list for the
want_qemu tag.
And move the want_qemu tag up so it's more obvious in the config file.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
The order of dict values is not deterministic in python leading to differing
header file generation which results in differing build output for the same
configuration. Sort to remove this inconsistency and make the output
reproducible.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Reviewed-by: Filipe Laíns <lains@archlinux.org>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Due to what must've been a copy/paste error many years ago, the license text
for libevdev wasn't actually the MIT license. Let's rectify this, it was
always MIT intended anyway.
To make this more obvious and reduce the chance of copy/paste mistakes, use
the SPDX license identifier in the various source files. The two installed
public header files have the full license text.
All contributors with copyrightable contributions have ACKed the license
change to MIT, either in the MR directly [1] or privately in reply to an
email.
[1] https://gitlab.freedesktop.org/libevdev/libevdev/-/merge_requests/69
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Acked-by: Alexander Dahl <ada@thorsis.com>
Acked-by: Andreas Pokorny <andreas.pokorny@canonical.com>
Acked-by: Armin K <krejzi@email.com>
Acked-by: Benjamin Tissoires <btissoir@redhat.com>
Acked-by: David Herrmann <dh.herrmann@gmail.com>
Acked-by: Deepa Dinamani <deepa.kernel@gmail.com>
Acked-by: Emmanuele Bassi <ebassi@gnome.org>
Acked-by: Gaetan Nadon <memsize@videotron.ca>
Acked-by: George Thomas <georgefsthomas@gmail.com>
Acked-by: Michael Forney <mforney@mforney.org>
Acked-by: Nayan Deshmukh <nayan26deshmukh@gmail.com>
Acked-by: Niclas Zeising <zeising@daemonic.se>
Acked-by: Owen W. Taylor <otaylor@fishsoup.net>
Acked-by: Peter Seiderer <ps.report@gmx.net>
Acked-by: Ran Benita <ran234@gmail.com>
Acked-by: Rosen Penev <rosenp@gmail.com>
Acked-by: Scott Jann <sjann@knight-rider.org>
Acked-by: Thilo Schulz <thilo@tjps.eu>
Acked-by: polyphemus <rolfmorel@gmail.com>
Yes, the value we return is from the currently active slot, but there are a
few niche cases where the active slot changes from what the client may think
it is. So let's call it undefined like the other half of the documentation
already does.
Fixes#20
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>