~ruther/guix-local

ac815ecd6321d8f167abb4f0dde1293fd9798ba1 — Ludovic Courtès 5 years ago 80506bc
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.
1 files changed, 13 insertions(+), 9 deletions(-)

M gnu/ci.scm
M gnu/ci.scm => gnu/ci.scm +13 -9
@@ 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.