summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--gnu-system.am1
-rw-r--r--gnu/packages/patches/xf86-input-synaptics-glibc-2.20.patch63
-rw-r--r--gnu/packages/xorg.scm9
3 files changed, 70 insertions, 3 deletions
diff --git a/gnu-system.am b/gnu-system.am
index 67b13e7803..7d6a6b99a7 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -409,6 +409,7 @@ dist_patch_DATA =						\
   gnu/packages/patches/util-linux-perl.patch			\
   gnu/packages/patches/vpnc-script.patch			\
   gnu/packages/patches/w3m-fix-compile.patch			\
+  gnu/packages/patches/xf86-input-synaptics-glibc-2.20.patch	\
   gnu/packages/patches/xmodmap-asprintf.patch			\
   gnu/packages/patches/xpdf-constchar.patch
 
diff --git a/gnu/packages/patches/xf86-input-synaptics-glibc-2.20.patch b/gnu/packages/patches/xf86-input-synaptics-glibc-2.20.patch
new file mode 100644
index 0000000000..93263e1f19
--- /dev/null
+++ b/gnu/packages/patches/xf86-input-synaptics-glibc-2.20.patch
@@ -0,0 +1,63 @@
+Allow builds with libc 2.20.
+Patch from <https://raw.githubusercontent.com/openembedded/oe-core/master/meta/recipes-graphics/xorg-driver/xf86-input-synaptics/always_include_xorg_server.h.patch>.
+
+From 96e60a4ea242d2decf109835981ae186cc36f642 Mon Sep 17 00:00:00 2001
+From: Peter Hutterer <peter.hutterer@who-t.net>
+Date: Fri, 29 Aug 2014 07:57:41 +1000
+Subject: Include xorg-server.h to fix build errors on newest glibc
+
+In file included from /usr/include/string.h:634:0,
+                 from /usr/include/xorg/os.h:53,
+                 from /usr/include/xorg/misc.h:115,
+                 from /usr/include/xorg/xf86str.h:37,
+                 from /usr/include/xorg/xf86Xinput.h:54,
+                 from synproto.h:36,
+                 from synproto.c:24:
+/usr/include/xorg/os.h:579:1: error: expected identifier or '(' before '__extension__'
+ strndup(const char *str, size_t n);
+
+See http://lists.freedesktop.org/archives/xorg-devel/2014-July/043070.html
+
+Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+
+Status: Backport
+
+Index: xf86-input-synaptics-1.8.0/src/eventcomm.h
+===================================================================
+--- xf86-input-synaptics-1.8.0.orig/src/eventcomm.h	2014-08-28 18:40:28.628070587 -0700
++++ xf86-input-synaptics-1.8.0/src/eventcomm.h	2014-08-28 18:40:28.620070587 -0700
+@@ -27,6 +27,8 @@
+ #ifndef _EVENTCOMM_H_
+ #define _EVENTCOMM_H_
+ 
++#include <xorg-server.h>
++
+ #include <linux/input.h>
+ #include <linux/version.h>
+ #include <xf86Xinput.h>
+Index: xf86-input-synaptics-1.8.0/src/ps2comm.h
+===================================================================
+--- xf86-input-synaptics-1.8.0.orig/src/ps2comm.h	2014-08-28 18:40:28.628070587 -0700
++++ xf86-input-synaptics-1.8.0/src/ps2comm.h	2014-08-28 18:40:28.620070587 -0700
+@@ -22,6 +22,8 @@
+ #ifndef _PS2COMM_H_
+ #define _PS2COMM_H_
+ 
++#include <xorg-server.h>
++
+ #include <unistd.h>
+ #include <sys/ioctl.h>
+ #include "xf86_OSproc.h"
+Index: xf86-input-synaptics-1.8.0/src/synproto.h
+===================================================================
+--- xf86-input-synaptics-1.8.0.orig/src/synproto.h	2014-08-28 18:40:28.628070587 -0700
++++ xf86-input-synaptics-1.8.0/src/synproto.h	2014-08-28 18:40:28.624070587 -0700
+@@ -31,6 +31,8 @@
+ #include "config.h"
+ #endif
+ 
++#include <xorg-server.h>
++
+ #include <unistd.h>
+ #include <sys/ioctl.h>
+ #include <xf86Xinput.h>
diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm
index b0fc8468d3..9b5526d3e2 100644
--- a/gnu/packages/xorg.scm
+++ b/gnu/packages/xorg.scm
@@ -2323,7 +2323,9 @@ tracking.")
                ".tar.bz2"))
         (sha256
           (base32
-            "0g5b1s6q1dg38l8y47cwg7cs5nivwj0agmp71g273ws0lfg4bc8s"))))
+            "0g5b1s6q1dg38l8y47cwg7cs5nivwj0agmp71g273ws0lfg4bc8s"))
+        (patches
+         (list (search-patch "xf86-input-synaptics-glibc-2.20.patch")))))
     (build-system gnu-build-system)
     (inputs `(("libx11" ,libx11)
               ("libxi" ,libxi)
@@ -2339,8 +2341,9 @@ tracking.")
                             (assoc-ref %outputs "out")
                             "/share/X11/xorg.conf.d"))))
     (home-page "http://www.x.org/wiki/")
-    (synopsis "xorg implementation of the X Window System")
-    (description "X.org provides an implementation of the X Window System")
+    (synopsis "Synaptics touchpad driver for X.Org")
+    (description
+     "This package provides a touchpad driver for the X.Org window system.")
     (license license:x11)))