[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#36351] [PATCH 01/10] derivations: Add 'derivation-input'.
From: |
Ludovic Courtès |
Subject: |
[bug#36351] [PATCH 01/10] derivations: Add 'derivation-input'. |
Date: |
Mon, 24 Jun 2019 14:22:03 +0200 |
* guix/derivations.scm (derivation-input): New procedure.
* tests/grafts.scm (make-derivation-input): Remove.
("graft-derivation, unused outputs not depended on"): Use
'derivation-input'.
---
guix/derivations.scm | 8 ++++++++
tests/grafts.scm | 16 ++++------------
2 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/guix/derivations.scm b/guix/derivations.scm
index 8145d51143..4df7b06181 100644
--- a/guix/derivations.scm
+++ b/guix/derivations.scm
@@ -157,6 +157,14 @@
"Return the <derivation> object INPUT refers to."
(read-derivation-from-file (derivation-input-path input)))
+(define* (derivation-input drv #:optional
+ (outputs (derivation-output-names drv)))
+ "Return a <derivation-input> for the OUTPUTS of DRV."
+ ;; This is a public interface meant to be more convenient than
+ ;; 'make-derivation-input' and giving us more control.
+ (make-derivation-input (derivation-file-name drv)
+ outputs))
+
(set-record-type-printer! <derivation>
(lambda (drv port)
(format port "#<derivation ~a => ~a ~a>"
diff --git a/tests/grafts.scm b/tests/grafts.scm
index f85f3c6913..6fd3d5e171 100644
--- a/tests/grafts.scm
+++ b/tests/grafts.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <address@hidden>
+;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès
<address@hidden>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -45,9 +45,6 @@
(define %mkdir
(bootstrap-binary "mkdir"))
-(define make-derivation-input
- (@@ (guix derivations) make-derivation-input))
-
(test-begin "grafts")
@@ -356,16 +353,11 @@
(p1r-inputs (filter (match-input p1r) inputs))
(p2-inputs (filter (match-input p2) inputs)))
(and (equal? p1-inputs
- (list (make-derivation-input (derivation-file-name p1)
- '("one"))))
+ (list (derivation-input p1 '("one"))))
(equal? p1r-inputs
- (list
- (make-derivation-input (derivation-file-name p1r)
- '("ONE"))))
+ (list (derivation-input p1r '("ONE"))))
(equal? p2-inputs
- (list
- (make-derivation-input (derivation-file-name p2)
- '("aaa"))))
+ (list (derivation-input p2 '("aaa"))))
(derivation-output-names p2g))))))
(test-assert "graft-derivation, renaming" ;<http://bugs.gnu.org/23132>
--
2.22.0
- [bug#36351] [PATCH 00/10] Add 'derivation-build-plan', improve (guix derivations), Ludovic Courtès, 2019/06/24
- [bug#36351] [PATCH 01/10] derivations: Add 'derivation-input'.,
Ludovic Courtès <=
- [bug#36351] [PATCH 03/10] ui: 'show-what-to-build' uses 'derivation-build-plan'., Ludovic Courtès, 2019/06/24
- [bug#36351] [PATCH 04/10] graph: Use 'derivation-input-derivation'., Ludovic Courtès, 2019/06/24
- [bug#36351] [PATCH 06/10] derivations: 'derivation' preserves pointer equality., Ludovic Courtès, 2019/06/24
- [bug#36351] [PATCH 07/10] derivations: 'build-derivations' can be passed derivation inputs., Ludovic Courtès, 2019/06/24
- [bug#36351] [PATCH 02/10] derivations: Rewrite and replace 'derivations-prerequisites-to-build'., Ludovic Courtès, 2019/06/24
- [bug#36351] [PATCH 10/10] ui: 'show-derivation-outputs' accepts <derivation-input> records., Ludovic Courtès, 2019/06/24
- [bug#36351] [PATCH 08/10] packages: 'specification->package+output' distinguishes "no output specified"., Ludovic Courtès, 2019/06/24
- [bug#36351] [PATCH 09/10] ui: 'show-what-to-build' accepts derivation inputs., Ludovic Courtès, 2019/06/24
- [bug#36351] [PATCH 05/10] derivations: <derivation-input> now aggregates a <derivation>., Ludovic Courtès, 2019/06/24
- bug#36351: [PATCH 00/10] Add 'derivation-build-plan', improve (guix derivations), Ludovic Courtès, 2019/06/27