summary refs log tree commit diff
diff options
context:
space:
mode:
-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