summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2021-07-10 19:59:31 +0200
committerLudovic Courtès <ludo@gnu.org>2021-07-10 19:59:31 +0200
commitac815ecd6321d8f167abb4f0dde1293fd9798ba1 (patch)
tree6f144f477bf004ed1d6a9b82feef64984e36e5c2
parent80506bc6daa1d106e6f836f741eedfa92ad4e4b6 (diff)
downloadguix-ac815ecd6321d8f167abb4f0dde1293fd9798ba1.tar.gz
ci: Build commencement packages supported on the target system.
This is a followup to df49fe2a13d933c640e3189413c5adfced1103c5.

* gnu/ci.scm (%bootstrap-packages): Rename to...
(commencement-packages): ... this, and turn into a procedure.  Filter
packages that pass 'supported-package?'.
(cuirass-jobs): Adjust accordingly.
-rw-r--r--gnu/ci.scm22
1 files changed, 13 insertions, 9 deletions
diff --git a/gnu/ci.scm b/gnu/ci.scm
index 19ec5fbd7b..15a4815ff4 100644
--- a/gnu/ci.scm
+++ b/gnu/ci.scm
@@ -69,7 +69,6 @@
   #:export (derivation->job
             image->job
 
-            %bootstrap-packages
             %core-packages
             %cross-targets
             channel-source->package
@@ -149,13 +148,18 @@ SYSTEM."
         %guile-bootstrap-tarball
         %bootstrap-tarballs))
 
-(define %bootstrap-packages
-  ;; Return the list of bootstrap packages from the commencement module.
-  (filter package?
-          (module-map
-           (lambda (sym var)
-             (variable-ref var))
-           (resolve-module '(gnu packages commencement)))))
+(define (commencement-packages system)
+  "Return the list of bootstrap packages from the commencement module for
+SYSTEM."
+  ;; Only include packages supported on SYSTEM.  For example, the Mes
+  ;; bootstrap graph is currently not supported on ARM so it should be
+  ;; excluded.
+  (filter (lambda (obj)
+            (and (package? obj)
+                 (supported-package? obj system)))
+          (module-map (lambda (sym var)
+                        (variable-ref var))
+                      (resolve-module '(gnu packages commencement)))))
 
 (define (packages-to-cross-build target)
   "Return the list of packages to cross-build for TARGET."
@@ -517,7 +521,7 @@ valid."
            (map (lambda (package)
                   (package-job store (job-name package)
                                package system))
-                (append %bootstrap-packages %core-packages))
+                (append (commencement-packages system) %core-packages))
            (cross-jobs store system)))
          ('guix
           ;; Build Guix modules only.