hydra: Build for all the specified systems.
* build-aux/hydra/gnu-system.scm (hydra-jobs): Pick all the `system' keys in ARGUMENTS. [cross-jobs]: Turn into a procedure, with a `system' parameter. Build packages for all of SYSTEMS and %CROSS-TARGETS.
This commit is contained in:
parent
195e81aa52
commit
77bed84246
|
@ -95,14 +95,21 @@ SYSTEM."
|
||||||
|
|
||||||
(define (hydra-jobs store arguments)
|
(define (hydra-jobs store arguments)
|
||||||
"Return Hydra jobs."
|
"Return Hydra jobs."
|
||||||
(define system
|
(define systems
|
||||||
(or (assoc-ref arguments 'system)
|
(match (filter-map (match-lambda
|
||||||
(%current-system)))
|
(('system . value)
|
||||||
|
value)
|
||||||
|
(_ #f))
|
||||||
|
arguments)
|
||||||
|
((lst ..1)
|
||||||
|
lst)
|
||||||
|
(_
|
||||||
|
(list (%current-system)))))
|
||||||
|
|
||||||
(define job-name
|
(define job-name
|
||||||
(compose string->symbol package-full-name))
|
(compose string->symbol package-full-name))
|
||||||
|
|
||||||
(define cross-jobs
|
(define (cross-jobs system)
|
||||||
(append-map (lambda (target)
|
(append-map (lambda (target)
|
||||||
(map (lambda (package)
|
(map (lambda (package)
|
||||||
(package-cross-job store (job-name package)
|
(package-cross-job store (job-name package)
|
||||||
|
@ -119,10 +126,12 @@ SYSTEM."
|
||||||
(((_ inputs _ ...) ...)
|
(((_ inputs _ ...) ...)
|
||||||
inputs))))
|
inputs))))
|
||||||
%final-inputs))))
|
%final-inputs))))
|
||||||
(fold-packages (lambda (package result)
|
(append-map (lambda (system)
|
||||||
(if (member package base-packages)
|
(fold-packages (lambda (package result)
|
||||||
result
|
(if (member package base-packages)
|
||||||
(cons (package-job store (job-name package)
|
result
|
||||||
package system)
|
(append (package-job store (job-name package)
|
||||||
result)))
|
package system)
|
||||||
cross-jobs)))
|
result)))
|
||||||
|
(cross-jobs system)))
|
||||||
|
systems)))
|
||||||
|
|
Loading…
Reference in New Issue