From 2ef22a9f371276be0b1474c512f125d1f0d0c064 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Wed, 19 Jun 2019 21:49:22 +0200 Subject: derivations: Add 'derivation-input-derivation'. * guix/derivations.scm (derivation-input-derivation): New procedure. (derivation-prerequisites): Use it. --- guix/derivations.scm | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/guix/derivations.scm b/guix/derivations.scm index cad77bdb06..8145d51143 100644 --- a/guix/derivations.scm +++ b/guix/derivations.scm @@ -62,6 +62,7 @@ (define-module (guix derivations) derivation-input? derivation-input-path + derivation-input-derivation derivation-input-sub-derivations derivation-input-output-paths valid-derivation-input? @@ -152,6 +153,10 @@ (define-immutable-record-type (path derivation-input-path) ; store path (sub-derivations derivation-input-sub-derivations)) ; list of strings +(define (derivation-input-derivation input) + "Return the object INPUT refers to." + (read-derivation-from-file (derivation-input-path input))) + (set-record-type-printer! (lambda (drv port) (format port "# ~a ~a>" @@ -243,9 +248,7 @@ (define* (derivation-prerequisites drv #:optional (cut? (const #f))) (fold2 loop (append inputs result) (fold set-insert input-set inputs) - (map (lambda (i) - (read-derivation-from-file (derivation-input-path i))) - inputs))))) + (map derivation-input-derivation inputs))))) (define (offloadable-derivation? drv) "Return true if DRV can be offloaded, false otherwise." -- cgit v1.2.3