summaryrefslogtreecommitdiff
path: root/gnu/packages/virtualization.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/virtualization.scm')
-rw-r--r--gnu/packages/virtualization.scm44
1 files changed, 27 insertions, 17 deletions
diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm
index 5bee79cbb4..4368949743 100644
--- a/gnu/packages/virtualization.scm
+++ b/gnu/packages/virtualization.scm
@@ -13,6 +13,7 @@
;;; Copyright © 2019 Guy Fleury Iteriteka <hoonandon@gmail.com>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
+;;; Copyright © 2020 Mathieu Othacehe <m.othacehe@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -129,7 +130,7 @@
"1w38hzlw7xp05gcq1nhga7hxvndxy6dfcnzi7q2il8ff110isj6k"))))
(build-system gnu-build-system)
(arguments
- '(;; Running tests in parallel can occasionally lead to failures, like:
+ `(;; Running tests in parallel can occasionally lead to failures, like:
;; boot_sector_test: assertion failed (signature == SIGNATURE): (0x00000000 == 0x0000dead)
#:parallel-tests? #f
#:configure-flags (list "--enable-usb-redir" "--enable-opengl"
@@ -140,8 +141,28 @@
"--audio-drv-list=alsa,pa,sdl")
;; Make build and test output verbose to facilitate investigation upon failure.
#:make-flags '("V=1")
+ #:modules ((srfi srfi-1)
+ (ice-9 match)
+ ,@%gnu-build-system-modules)
#:phases
(modify-phases %standard-phases
+ (add-after 'set-paths 'hide-glibc
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Work around https://issues.guix.info/issue/36882. We need to
+ ;; remove glibc from C_INCLUDE_PATH so that the one hardcoded in GCC,
+ ;; at the bottom of GCC include search-path is used.
+ (let* ((filters '("libc"))
+ (input-directories
+ (filter-map (lambda (input)
+ (match input
+ ((name . dir)
+ (and (not (member name filters))
+ dir))))
+ inputs)))
+ (set-path-environment-variable "C_INCLUDE_PATH"
+ '("include")
+ input-directories)
+ #t)))
(replace 'configure
(lambda* (#:key inputs outputs (configure-flags '())
#:allow-other-keys)
@@ -264,7 +285,8 @@ server and embedded PowerPC, and S390 guests.")
(license license:gpl2)
;; Several tests fail on MIPS; see <http://hydra.gnu.org/build/117914>.
- (supported-systems (delete "mips64el-linux" %supported-systems))))
+ (supported-systems (fold delete %supported-systems
+ '("mips64el-linux" "i586-gnu")))))
(define-public qemu-minimal
;; QEMU without GUI support.
@@ -377,12 +399,6 @@ all common programming languages. Vala bindings are also provided.")
"/share/doc/" ,name "-" ,version)
"--sysconfdir=/etc"
"--localstatedir=/var")
- #:make-flags
- ;; Treat the kernel headers as system headers to silence
- ;; compiler warnings from those.
- (list (string-append "C_INCLUDE_PATH="
- (assoc-ref %build-inputs "kernel-headers")
- "/include"))
#:phases
(modify-phases %standard-phases
(replace 'install
@@ -474,7 +490,7 @@ manage system or application containers.")
("libpcap" ,libpcap)
("libnl" ,libnl)
("libtirpc" ,libtirpc) ;for <rpc/rpc.h>
- ("libuuid" ,util-linux)
+ ("libuuid" ,util-linux "lib")
("lvm2" ,lvm2) ;for libdevmapper
("curl" ,curl)
("openssl" ,openssl)
@@ -714,13 +730,7 @@ domains, their live performance and resource utilization statistics.")
(setenv "C_INCLUDE_PATH"
(string-append (assoc-ref inputs "libnl")
"/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"))
+ (or (getenv "C_INCLUDE_PATH") "")))
#t))
(add-after 'configure 'fix-documentation
(lambda* (#:key inputs outputs #:allow-other-keys)
@@ -1327,7 +1337,7 @@ override CC = " (assoc-ref inputs "cross-gcc") "/bin/i686-linux-gnu-gcc"))
("pixman" ,pixman)
("qemu" ,qemu-minimal)
("seabios" ,seabios)
- ("util-linux" ,util-linux) ; uuid
+ ("util-linux" ,util-linux "lib") ; uuid
; TODO: ocaml-findlib, ocaml-nox.
("xz" ,xz) ; for liblzma
("zlib" ,zlib)))