Index: head/x11/libinput/Makefile =================================================================== --- head/x11/libinput/Makefile (revision 491693) +++ head/x11/libinput/Makefile (revision 491694) @@ -1,48 +1,46 @@ # $FreeBSD$ PORTNAME= libinput -PORTVERSION= 1.11.3 -PORTREVISION= 1 +PORTVERSION= 1.12.6 CATEGORIES= x11 MASTER_SITES= http://freedesktop.org/software/${PORTNAME}/ MAINTAINER= x11@FreeBSD.org COMMENT= Generic input library LICENSE= MIT LICENSE_FILE= ${WRKSRC}/COPYING -BUILD_DEPENDS= ${LOCALBASE}/include/linux/input.h:devel/evdev-proto RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}evdev>0:devel/py-evdev@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pyudev>0:devel/py-pyudev@${PY_FLAVOR} LIB_DEPENDS= libevdev.so:devel/libevdev \ libepoll-shim.so:devel/libepoll-shim \ libudev.so:devel/libudev-devd \ libmtdev.so:devel/libmtdev USES= localbase meson pkgconfig python:3.4+,run shebangfix tar:xz +USE_LDCONFIG= yes MESON_ARGS+= -Ddocumentation=false -Dtests=false -INSTALL_TARGET= install-strip python_OLD_CMD= "/usr/bin/env python3" -SHEBANG_FILES= tools/libinput-measure-fuzz \ - tools/libinput-measure-touch-size \ - tools/libinput-measure-touchpad-pressure \ - tools/libinput-measure-touchpad-tap \ - tools/libinput-measure-trackpoint-range \ +SHEBANG_FILES= tools/libinput-measure-fuzz.py \ + tools/libinput-measure-touch-size.py \ + tools/libinput-measure-touchpad-pressure.py \ + tools/libinput-measure-touchpad-tap.py \ tools/libinput-replay OPTIONS_DEFINE= DEBUG_GUI LIBWACOM OPTIONS_DEFAULT=LIBWACOM OPTIONS_SUB= yes - + DEBUG_GUI_DESC= Build the GUI event viewer LIBWACOM_DESC= Libwacom support +DEBUG_GUI_USES= gnome DEBUG_GUI_USE= GNOME=gtk30,glib20,cairo DEBUG_GUI_MESON_TRUE= debug-gui LIBWACOM_LIB_DEPENDS= libwacom.so:x11/libwacom LIBWACOM_MESON_TRUE= libwacom .include Index: head/x11/libinput/distinfo =================================================================== --- head/x11/libinput/distinfo (revision 491693) +++ head/x11/libinput/distinfo (revision 491694) @@ -1,3 +1,3 @@ -TIMESTAMP = 1532702018 -SHA256 (libinput-1.11.3.tar.xz) = f31191d96e425b4f16319842279d65946d9d983dcd3d9e466ae1206aa10ecb06 -SIZE (libinput-1.11.3.tar.xz) = 487408 +TIMESTAMP = 1548226824 +SHA256 (libinput-1.12.6.tar.xz) = 12b4023a3fc683d3d8127db573bdf925a2ef366615042f69c87e57c32a50f45d +SIZE (libinput-1.12.6.tar.xz) = 518784 Index: head/x11/libinput/files/patch-src_evdev.c =================================================================== --- head/x11/libinput/files/patch-src_evdev.c (revision 491693) +++ head/x11/libinput/files/patch-src_evdev.c (revision 491694) @@ -1,37 +1,37 @@ When a process without full /dev/input access enumerates devices via libudev-devd, the udev_device structs do not get udev properties that mark them as inputs, keyboards, etc, and get rejected as not being input devices. libinput reopens devices just to check path equality. The udev_devices from reopening do have the right properties, so we just use them instead of the original (enumerated) ones. ---- src/evdev.c.orig 2018-06-09 12:13:43 UTC +--- src/evdev.c.orig 2018-12-18 05:06:18 UTC +++ src/evdev.c -@@ -895,7 +895,7 @@ evdev_sync_device(struct evdev_device *device) +@@ -905,7 +905,7 @@ evdev_sync_device(struct evdev_device *device) evdev_device_dispatch_one(device, &ev); } while (rc == LIBEVDEV_READ_STATUS_SYNC); - return rc == -EAGAIN ? 0 : rc; + return (rc == -EAGAIN || rc == -EINVAL)? 0 : rc; } static void -@@ -933,6 +933,17 @@ evdev_device_dispatch(void *data) +@@ -943,6 +943,17 @@ evdev_device_dispatch(void *data) if (rc != -EAGAIN && rc != -EINTR) { libinput_remove_source(libinput, device->source); + /* + * Dirty hack to allow cuse-based evdev backends to release + * character device file when device has been detached + * but still have it descriptor opened. + * Issuing evdev_device_suspend() here leads to SIGSEGV + */ + int dummy_fd = open("/dev/null", O_RDONLY | O_CLOEXEC); + if (dummy_fd >= 0) { + dup2(dummy_fd, device->fd); + close(dummy_fd); + } device->source = NULL; } } Index: head/x11/libinput/pkg-plist =================================================================== --- head/x11/libinput/pkg-plist (revision 491693) +++ head/x11/libinput/pkg-plist (revision 491694) @@ -1,29 +1,58 @@ bin/libinput include/libinput.h lib/libinput.so lib/libinput.so.10 lib/libinput.so.10.13.0 libdata/pkgconfig/libinput.pc libexec/libinput/libinput-debug-events %%DEBUG_GUI%%libexec/libinput/libinput-debug-gui libexec/libinput/libinput-list-devices libexec/libinput/libinput-measure libexec/libinput/libinput-measure-fuzz libexec/libinput/libinput-measure-touch-size libexec/libinput/libinput-measure-touchpad-pressure libexec/libinput/libinput-measure-touchpad-tap -libexec/libinput/libinput-measure-trackpoint-range +libexec/libinput/libinput-quirks libexec/libinput/libinput-record libexec/libinput/libinput-replay -man/man1/libinput.1.gz man/man1/libinput-debug-events.1.gz %%DEBUG_GUI%%man/man1/libinput-debug-gui.1.gz man/man1/libinput-list-devices.1.gz -man/man1/libinput-measure.1.gz man/man1/libinput-measure-fuzz.1.gz man/man1/libinput-measure-touch-size.1.gz man/man1/libinput-measure-touchpad-pressure.1.gz man/man1/libinput-measure-touchpad-tap.1.gz -man/man1/libinput-measure-trackpoint-range.1.gz +man/man1/libinput-measure.1.gz +man/man1/libinput-quirks-list.1.gz +man/man1/libinput-quirks-validate.1.gz +man/man1/libinput-quirks.1.gz man/man1/libinput-record.1.gz man/man1/libinput-replay.1.gz +man/man1/libinput.1.gz +%%DATADIR%%/10-generic-keyboard.quirks +%%DATADIR%%/10-generic-lid.quirks +%%DATADIR%%/10-generic-trackball.quirks +%%DATADIR%%/30-vendor-aiptek.quirks +%%DATADIR%%/30-vendor-alps.quirks +%%DATADIR%%/30-vendor-contour.quirks +%%DATADIR%%/30-vendor-cyapa.quirks +%%DATADIR%%/30-vendor-elantech.quirks +%%DATADIR%%/30-vendor-huion.quirks +%%DATADIR%%/30-vendor-ibm.quirks +%%DATADIR%%/30-vendor-kensington.quirks +%%DATADIR%%/30-vendor-logitech.quirks +%%DATADIR%%/30-vendor-microsoft.quirks +%%DATADIR%%/30-vendor-razer.quirks +%%DATADIR%%/30-vendor-synaptics.quirks +%%DATADIR%%/30-vendor-vmware.quirks +%%DATADIR%%/30-vendor-wacom.quirks +%%DATADIR%%/50-system-acer.quirks +%%DATADIR%%/50-system-apple.quirks +%%DATADIR%%/50-system-asus.quirks +%%DATADIR%%/50-system-chicony.quirks +%%DATADIR%%/50-system-cyborg.quirks +%%DATADIR%%/50-system-dell.quirks +%%DATADIR%%/50-system-google.quirks +%%DATADIR%%/50-system-hp.quirks +%%DATADIR%%/50-system-lenovo.quirks +%%DATADIR%%/50-system-system76.quirks