diff options
author | Ludovic Courtès <ludo@gnu.org> | 2020-03-25 12:43:49 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2020-03-29 15:32:17 +0200 |
commit | 584dfdac3795541ff020aca3f488ceaf2ddd7fc3 (patch) | |
tree | 94fca07baaf9a06e0616e6f62ddb3745487097ec | |
parent | 1213ea9bd91c3051365637731c6baeca791e0f65 (diff) | |
download | patches-584dfdac3795541ff020aca3f488ceaf2ddd7fc3.tar patches-584dfdac3795541ff020aca3f488ceaf2ddd7fc3.tar.gz |
gexp: 'lower-inputs' uses 'mapm/accumulate-builds'.
This doesn't have an noticeable impact on the run time of
'guix system build desktop.tmp --no-grafts -d'.
* guix/gexp.scm (lower-inputs): Use 'mapm/accumulate-builds' instead of 'mapm'.
-rw-r--r-- | guix/gexp.scm | 32 |
1 files changed, 16 insertions, 16 deletions
diff --git a/guix/gexp.scm b/guix/gexp.scm index 133e0f5679..3d21685460 100644 --- a/guix/gexp.scm +++ b/guix/gexp.scm @@ -683,22 +683,22 @@ When TARGET is true, use it as the cross-compilation target triplet." (and (string? obj) (store-path? obj))) (with-monad %store-monad - (mapm %store-monad - (match-lambda - (((? struct? thing) sub-drv ...) - (mlet %store-monad ((obj (lower-object - thing system #:target target))) - (return (match obj - ((? derivation? drv) - (let ((outputs (if (null? sub-drv) - '("out") - sub-drv))) - (derivation-input drv outputs))) - ((? store-item? item) - item))))) - (((? store-item? item)) - (return item))) - inputs))) + (mapm/accumulate-builds + (match-lambda + (((? struct? thing) sub-drv ...) + (mlet %store-monad ((obj (lower-object + thing system #:target target))) + (return (match obj + ((? derivation? drv) + (let ((outputs (if (null? sub-drv) + '("out") + sub-drv))) + (derivation-input drv outputs))) + ((? store-item? item) + item))))) + (((? store-item? item)) + (return item))) + inputs))) (define* (lower-reference-graphs graphs #:key system target) "Given GRAPHS, a list of (FILE-NAME INPUT ...) lists for use as a |