summaryrefslogtreecommitdiff
path: root/guix/build-system
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2017-12-21 10:46:24 +0100
committerLudovic Courtès <ludo@gnu.org>2017-12-21 10:46:24 +0100
commitd2b5ede0539567568cfb917e08f1b80a3eab38e7 (patch)
tree1689a3878ca1982b9d6d77512915379479455d2e /guix/build-system
parent8d6cd08573dd226c4ef874bf3786210eee9cf771 (diff)
downloadgnu-guix-d2b5ede0539567568cfb917e08f1b80a3eab38e7.tar
gnu-guix-d2b5ede0539567568cfb917e08f1b80a3eab38e7.tar.gz
build-system/gnu: Check whether the cross-libc has a "static" output.
This is a followup to 614fffe4270cef308573a6d9cef650f3972875af, which broke cross-compilation to i686-w64-mingw32. * guix/build-system/gnu.scm (standard-cross-packages): Add "cross-libc:static" only when LIBC has a "static" output.
Diffstat (limited to 'guix/build-system')
-rw-r--r--guix/build-system/gnu.scm8
1 files changed, 6 insertions, 2 deletions
diff --git a/guix/build-system/gnu.scm b/guix/build-system/gnu.scm
index ae8274a7f7..c9140074b7 100644
--- a/guix/build-system/gnu.scm
+++ b/guix/build-system/gnu.scm
@@ -415,8 +415,12 @@ is one of `host' or `target'."
("cross-binutils" ,(binutils target))))
((target)
(let ((libc (libc target)))
- `(("cross-libc" ,libc)
- ("cross-libc:static" ,libc "static"))))))))
+ `(("cross-libc" ,libc)
+
+ ;; MinGW's libc doesn't have a "static" output.
+ ,@(if (member "static" (package-outputs libc))
+ `(("cross-libc:static" ,libc "static"))
+ '()))))))))
(define* (gnu-cross-build store name
#:key