summary refs log tree commit diff
diff options
context:
space:
mode:
authorMarius Bakke <mbakke@fastmail.com>2019-07-14 18:13:59 +0200
committerMarius Bakke <mbakke@fastmail.com>2019-07-14 18:13:59 +0200
commita46cf184fecb62fe93f3510eb32cc4772cf51cb8 (patch)
tree09b8e1baa486a07be335e850573fe61a483cda07
parent97149c576762de7fd8e1a6ac8f46c97d3490b360 (diff)
downloadguix-a46cf184fecb62fe93f3510eb32cc4772cf51cb8.tar.gz
gnu: criu: Fix build with GCC 7.
* gnu/packages/virtualization.scm (criu)[arguments]: Do not read from
C_INCLUDE_PATH, but add LINUX-LIBRE-HEADERS on it.
-rw-r--r--gnu/packages/virtualization.scm10
1 files changed, 8 insertions, 2 deletions
diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm
index a640a64d40..e9bf459eee 100644
--- a/gnu/packages/virtualization.scm
+++ b/gnu/packages/virtualization.scm
@@ -694,8 +694,14 @@ domains, their live performance and resource utilization statistics.")
              ;; The includes for libnl are located in a sub-directory.
              (setenv "C_INCLUDE_PATH"
                      (string-append (assoc-ref inputs "libnl")
-                                    "/include/libnl3:"
-                                    (getenv "C_INCLUDE_PATH")))
+                                    "/include/libnl3"
+                                    ;; Also add the kernel headers here so that GCC
+                                    ;; treats them as "system headers".  Otherwise
+                                    ;; the build fails with -Werror because parasite.c
+                                    ;; includes both <linux/fs.h> and <sys/mount.h>,
+                                    ;; which define some of the same constants.
+                                    (assoc-ref inputs "kernel-headers")
+                                    "/include"))
              ;; Prevent xmlto from failing the install phase.
              (substitute* "Documentation/Makefile"
                (("XMLTO.*:=.*")