summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--build-aux/hydra/gnu-system.scm9
1 files changed, 8 insertions, 1 deletions
diff --git a/build-aux/hydra/gnu-system.scm b/build-aux/hydra/gnu-system.scm
index 6e61739d94..4573e60d3b 100644
--- a/build-aux/hydra/gnu-system.scm
+++ b/build-aux/hydra/gnu-system.scm
@@ -129,12 +129,19 @@ SYSTEM."
     (compose string->symbol package-full-name))
 
   (define (cross-jobs system)
+    (define (from-32-to-64? target)
+      ;; Return true if SYSTEM is 32-bit and TARGET is 64-bit.
+      ;; This hacks prevents known-to-fail cross-builds from i686-linux to
+      ;; mips64el-linux-gnuabi64.
+      (and (string-prefix? "i686-" system)
+           (string-suffix? "64" target)))
+
     (append-map (lambda (target)
                   (map (lambda (package)
                          (package-cross-job store (job-name package)
                                             package target system))
                        %packages-to-cross-build))
-                %cross-targets))
+                (remove from-32-to-64? %cross-targets)))
 
   ;; Return one job for each package, except bootstrap packages.
   (let ((base-packages (delete-duplicates