summary refs log tree commit diff
diff options
context:
space:
mode:
authorLeo Famulari <leo@famulari.name>2017-02-25 21:59:09 -0500
committerLeo Famulari <leo@famulari.name>2017-02-26 11:39:09 -0500
commitf0a01af5c6e297f9068e4f359488e9fd0417fad2 (patch)
tree56e3854fabb018fcef761b010a512fcfdfe9a76d
parent378618640da836d5a892f48ad64dda8465652127 (diff)
downloadguix-f0a01af5c6e297f9068e4f359488e9fd0417fad2.tar.gz
gnu: eudev: Fix build failure caused by conflicting function type declaration.
* gnu/packages/patches/eudev-conflicting-declaration.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/linux.scm (eudev)[source]: Use it.
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/linux.scm3
-rw-r--r--gnu/packages/patches/eudev-conflicting-declaration.patch31
3 files changed, 34 insertions, 1 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index ec9332271f..fbf0552afa 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -541,6 +541,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/emacs-scheme-complete-scheme-r5rs-info.patch	\
   %D%/packages/patches/emacs-source-date-epoch.patch		\
   %D%/packages/patches/eudev-rules-directory.patch		\
+  %D%/packages/patches/eudev-conflicting-declaration.patch	\
   %D%/packages/patches/evilwm-lost-focus-bug.patch		\
   %D%/packages/patches/expat-CVE-2016-0718-fix-regression.patch	\
   %D%/packages/patches/fastcap-mulGlobal.patch			\
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index b3fd9d2601..fe72f98b78 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -1741,7 +1741,8 @@ from the module-init-tools project.")
               (sha256
                (base32
                 "06gyyl90n85x8i7lfhns514y1kg1ians13l467admyzy3kjxkqsp"))
-              (patches (search-patches "eudev-rules-directory.patch"))))
+              (patches (search-patches "eudev-rules-directory.patch"
+                                       "eudev-conflicting-declaration.patch"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("pkg-config" ,pkg-config)
diff --git a/gnu/packages/patches/eudev-conflicting-declaration.patch b/gnu/packages/patches/eudev-conflicting-declaration.patch
new file mode 100644
index 0000000000..f5399e20d3
--- /dev/null
+++ b/gnu/packages/patches/eudev-conflicting-declaration.patch
@@ -0,0 +1,31 @@
+Fix build failure due to conflicting declaration of
+keyboard_lookup_key() in gperf-3.1:
+
+https://bugs.gentoo.org/show_bug.cgi?id=604864
+
+Patch copied from upstream source repository:
+
+https://github.com/gentoo/eudev/commit/5bab4d8de0dcbb8e2e7d4d5125b4aea1652a0d60
+
+From 5bab4d8de0dcbb8e2e7d4d5125b4aea1652a0d60 Mon Sep 17 00:00:00 2001
+From: "Anthony G. Basile" <blueness@gentoo.org>
+Date: Thu, 5 Jan 2017 16:21:17 -0500
+Subject: [PATCH] src/udev/udev-builtin-keyboard.c: fix build with gperf 3.1
+
+Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
+---
+ src/udev/udev-builtin-keyboard.c | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/src/udev/udev-builtin-keyboard.c b/src/udev/udev-builtin-keyboard.c
+index 73171c3..fad3520 100644
+--- a/src/udev/udev-builtin-keyboard.c
++++ b/src/udev/udev-builtin-keyboard.c
+@@ -28,7 +28,6 @@
+ 
+ #include "udev.h"
+ 
+-static const struct key *keyboard_lookup_key(const char *str, unsigned len);
+ #include "keyboard-keys-from-name.h"
+ #include "keyboard-keys-to-name.h"
+