Date: Tuesday, February 15, 2022 @ 06:51:51 Author: andyrtr Revision: 437342
upgpkg: xf86-input-wacom 0.99.3-1: upstream update 0.99.3 Added: xf86-input-wacom/trunk/meson_build_fixes.patch Modified: xf86-input-wacom/trunk/PKGBUILD -------------------------+ PKGBUILD | 55 ++++++++++++++------ meson_build_fixes.patch | 124 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 164 insertions(+), 15 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2022-02-15 01:19:54 UTC (rev 437341) +++ PKGBUILD 2022-02-15 06:51:51 UTC (rev 437342) @@ -4,31 +4,56 @@ # Contributor: M Rawash <mraw...@gmail.com> pkgname=xf86-input-wacom -pkgver=0.40.0 -pkgrel=2 +pkgver=0.99.3 +pkgrel=1 pkgdesc="X.Org Wacom tablet driver" arch=(x86_64) url="https://github.com/linuxwacom/xf86-input-wacom" license=(GPL) depends=(libxi libxinerama libxrandr systemd-libs) -makedepends=('xorg-server-devel' 'X-ABI-XINPUT_VERSION=24.4') +makedepends=('xorg-server-devel' 'X-ABI-XINPUT_VERSION=24.4' 'meson' + 'gobject-introspection' ) conflicts=('xorg-server<21.1.1' 'X-ABI-XINPUT_VERSION<24' 'X-ABI-XINPUT_VERSION>=25') -source=(https://github.com/linuxwacom/xf86-input-wacom/releases/download/$pkgname-$pkgver/$pkgname-$pkgver.tar.bz2{,.sig}) +source=(https://github.com/linuxwacom/xf86-input-wacom/releases/download/$pkgname-$pkgver/$pkgname-$pkgver.tar.bz2{,.sig} + meson_build_fixes.patch) # check at https://github.com/linuxwacom/xf86-input-wacom/releases -sha256sums=('8c4f5dba4bee803dafea98277f81cb0e67b4e474c9cc2e42ceb443cdb4ea2062' - 'SKIP') -validpgpkeys=('9A12ECCC5383CA2AF5B42CDCA6DC66911B2127D5') # Jason Gerecke <killert...@gmail.com> -validpgpkeys+=('3C2C43D9447D5938EF4551EBE23B7E70B467F0BF') # "Peter Hutterer (Who-T) <off...@who-t.net>" -validpgpkeys+=('5222AA87620F928D2C16F62BDB4ABF7C3424190B') # "Aaron Armstrong Skomra <sko...@gmail.com>" -validpgpkeys+=('FBE078781106933D3DDCF93E5B4EA609784983CA') # "Jason Gerecke <jason.gere...@wacom.com>" +sha256sums=('7bc1c508ecf515675a7bcd2eb8513ae16071b4741b65fd21b680aa550214d5e7' + 'SKIP' + 'eadfe8c5c60a089f29f491519708bb0363701c19fd2571ba8b50c695d99a9706') +#validpgpkeys=('9A12ECCC5383CA2AF5B42CDCA6DC66911B2127D5') # Jason Gerecke <killert...@gmail.com> +validpgpkeys=('3C2C43D9447D5938EF4551EBE23B7E70B467F0BF') # "Peter Hutterer (Who-T) <off...@who-t.net>" +#validpgpkeys=('5222AA87620F928D2C16F62BDB4ABF7C3424190B') # "Aaron Armstrong Skomra <sko...@gmail.com>" +#validpgpkeys=('FBE078781106933D3DDCF93E5B4EA609784983CA') # "Jason Gerecke <jason.gere...@wacom.com>" -build() { +prepare() { + # https://github.com/linuxwacom/xf86-input-wacom/pull/251 cd $pkgname-$pkgver - ./configure --prefix=/usr - make + patch -Np1 -i ../meson_build_fixes.patch } +build() { + #cd $pkgname-$pkgver + #./configure --prefix=/usr + #make + + arch-meson $pkgname-$pkgver build \ + -D xorg-conf-dir=/usr/share/X11/xorg.conf.d/ \ + -D systemd-unit-dir=/usr/lib/systemd/system/ \ + -D unittests=enabled + +# -D sdkdir=/usr/include/xorg/ + + # Print config + meson configure build + ninja -C build +} + +check() { + meson test -C build # || /bin/true +} + package() { - cd $pkgname-$pkgver - make DESTDIR="$pkgdir" install +# cd $pkgname-$pkgver +# make DESTDIR="$pkgdir" install + DESTDIR="$pkgdir" ninja -C build install } Added: meson_build_fixes.patch =================================================================== --- meson_build_fixes.patch (rev 0) +++ meson_build_fixes.patch 2022-02-15 06:51:51 UTC (rev 437342) @@ -0,0 +1,124 @@ +From 6ea20068855e84dd3255fc4dcb67a831f7dcd916 Mon Sep 17 00:00:00 2001 +From: Peter Hutterer <peter.hutte...@who-t.net> +Date: Tue, 15 Feb 2022 08:14:49 +1000 +Subject: [PATCH 1/4] meson.build: use datadir, not sysconfdir, for the + xorg.conf files + +Mixup of the two, sysconfdir is /etc which is not what we want for a +normal install of the driver + +Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> +--- + meson.build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/meson.build b/meson.build +index 0b4bfe9e..237a669c 100644 +--- a/meson.build ++++ b/meson.build +@@ -9,7 +9,7 @@ wacom_version = meson.project_version().split('.') + dir_man1 = get_option('prefix') / get_option('mandir') / 'man1' + dir_man4 = get_option('prefix') / get_option('mandir') / 'man4' + dir_bin = get_option('prefix') / get_option('bindir') +-dir_x11_config = get_option('prefix') / get_option('sysconfdir') / 'X11' / 'xorg.conf.d' ++dir_x11_config = get_option('prefix') / get_option('datadir') / 'X11' / 'xorg.conf.d' + dir_pkgconf = get_option('prefix') / get_option('libdir') / 'pkgconfig' + dir_udev = get_option('prefix') / 'lib' / 'udev' + dir_systemd = get_option('prefix') / 'lib' / 'systemd' + +From 703a5577aa0c371e1dea51dd16e8699bf0e4dd92 Mon Sep 17 00:00:00 2001 +From: Peter Hutterer <peter.hutte...@who-t.net> +Date: Tue, 15 Feb 2022 08:15:51 +1000 +Subject: [PATCH 2/4] meson.build: install the SDK headers + +Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> +--- + meson.build | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git a/meson.build b/meson.build +index 237a669c..b3c7c676 100644 +--- a/meson.build ++++ b/meson.build +@@ -161,6 +161,14 @@ configure_file( + install_dir: dir_pkgconf, + ) + ++install_headers( ++ 'include/Xwacom.h', ++ 'include/wacom-properties.h', ++ 'include/isdv4.h', ++ 'include/wacom-util.h', ++ install_dir: dir_wacom_headers ++) ++ + # GWacom library + # This is not a stable library interface + + +From 23e37235bfb484714043f45d35f1c11204af0c16 Mon Sep 17 00:00:00 2001 +From: Peter Hutterer <peter.hutte...@who-t.net> +Date: Tue, 15 Feb 2022 08:51:46 +1000 +Subject: [PATCH 3/4] wacom-record: silence a compiler warning +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +/usr/include/glib-2.0/glib/glib-autocleanups.h:28:3: warning: ‘syspath’ +may be used uninitialized in this function [-Wmaybe-uninitialized] + 28 | g_free (*pp); + +Can't actually happen but it's an easy fix to get rid of this warning. + +Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> +--- + tools/wacom-record.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tools/wacom-record.c b/tools/wacom-record.c +index 4e2a9f42..eb7cb248 100644 +--- a/tools/wacom-record.c ++++ b/tools/wacom-record.c +@@ -302,7 +302,7 @@ static char *get_device_name(const char *path) + struct udev *udev; + struct udev_device *dev, *parent; + g_autofree char *basename = g_path_get_basename(path); +- g_autofree char *syspath; ++ g_autofree char *syspath = NULL; + char *name = NULL; + + udev = udev_new(); + +From 16fb7fe71038dd79b8370f5196b826eab4815c33 Mon Sep 17 00:00:00 2001 +From: Peter Hutterer <peter.hutte...@who-t.net> +Date: Tue, 15 Feb 2022 09:01:43 +1000 +Subject: [PATCH 4/4] test: skip the wacom tests if we can't open the .so file + +Distribution package builds that use -Wl,-z,relro -Wl,-z,now will +attempt to resolve all symbols on dlopen(). This is explicitly what we +do not want because we don't link in the whole X server. + +It's a bit hard to override this for a single executable (my attempts +didn't go far so there may be some other flag that influences this too) +so for now just skip the whole test - this is better than failing the +test suite. + +Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> +--- + test/wacom-tests.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/test/wacom-tests.c b/test/wacom-tests.c +index ddc9c84f..63ca22f3 100644 +--- a/test/wacom-tests.c ++++ b/test/wacom-tests.c +@@ -31,7 +31,8 @@ int main(void) { + + if (handle == NULL) { + fprintf(stderr, "Failed to open %s: %s\n", TESTDRV, dlerror()); +- return 1; ++ fprintf(stderr, "This test suite relies on dlopen(RTLD_LAZY) which may be disabled by your compiler/linker flags\n"); ++ return 77; + } + + func = dlsym(handle, TESTFUNC);