summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--configure.ac13
-rw-r--r--src/evdev.h11
2 files changed, 15 insertions, 9 deletions
diff --git a/configure.ac b/configure.ac
index cfff2d4..5671193 100644
--- a/configure.ac
+++ b/configure.ac
@@ -48,16 +48,11 @@ XORG_DEFAULT_OPTIONS
PKG_CHECK_MODULES(XORG, [xorg-server >= 1.10] xproto inputproto)
PKG_CHECK_MODULES(UDEV, udev)
-# Whether to include support for experimental XI 2.2 multitouch
-AC_ARG_ENABLE(multitouch,
- AC_HELP_STRING([--enable-multitouch],
- [Enable experimental XI 2.2 multitouch support [[default: disabled]]]),
- [MULTITOUCH=$enableval],
- [MULTITOUCH=no])
-
-if test "x$MULTITOUCH" = xyes; then
- AC_DEFINE(MULTITOUCH, 1, [Enable experimental multitouch code])
+PKG_CHECK_MODULES(XI22, [inputproto >= 2.1.99.3],
+ HAVE_XI22="yes"; AC_DEFINE(MULTITOUCH, 1, [XI2.2 available]),
+ HAVE_XI22="no")
+if test "x$HAVE_XI22" = xyes; then
# Obtain compiler/linker options for mtdev
PKG_CHECK_MODULES(MTDEV, mtdev)
fi
diff --git a/src/evdev.h b/src/evdev.h
index acd4289..609365f 100644
--- a/src/evdev.h
+++ b/src/evdev.h
@@ -43,6 +43,17 @@
#include <xf86_OSproc.h>
#include <xkbstr.h>
+/* FIXME: once the server version is bumped, we can remove this with a
+ * proper pkg-config check. Right now we need an inputproto check for
+ * the right protocol, the pkgconfig check for the mtdev pkgconfig, and an
+ * ABI check to undo the first two if the proto was updated but the server
+ * wasn't yet */
+#ifdef MULTITOUCH
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 16
+#undef MULTITOUCH
+#endif
+#endif
+
#ifdef MULTITOUCH
#include <mtdev.h>
#endif