Process each system target pair individually

As the cross targets take quite some time.
This commit is contained in:
Christopher Baines 2022-03-11 11:12:18 +00:00
parent 9db755f27d
commit 8379427cbb

View file

@ -589,10 +589,9 @@ WHERE job_id = $1")
(append-map
(match-lambda
((system . targets)
(list
(map (lambda (target)
(cons system target))
targets))))
targets)))
cross-derivations))
(define (proc packages system-target-pairs)
@ -726,14 +725,14 @@ WHERE job_id = $1")
(list ,@(map inferior-package-id packages)))))
(append-map
(lambda (system-target-pairs)
(lambda (system-target-pair)
(format (current-error-port)
"heap size: ~a MiB~%"
(round
(/ (assoc-ref (gc-stats) 'heap-size)
(expt 2. 20))))
(with-time-logging
(simple-format #f "getting derivations for ~A" system-target-pairs)
(simple-format #f "getting derivations for ~A" system-target-pair)
(catch
'match-error
(lambda ()
@ -742,8 +741,8 @@ WHERE job_id = $1")
(simple-format
(current-error-port)
"warning: ignoring match-error from calling inferior invalidate-derivation-caches!\n")))
(inferior-eval-with-store inf store (proc packages system-target-pairs))))
(append (map list supported-system-pairs)
(inferior-eval-with-store inf store (proc packages (list system-target-pair)))))
(append supported-system-pairs
supported-system-cross-build-pairs)))
(define (deduplicate-inferior-packages packages)