aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2013-10-16 16:15:07 +0200
committerLudovic Courtès <ludo@gnu.org>2013-10-16 16:15:07 +0200
commit63760b5bab223131d3cef39755eaff9ea3c4d70b (patch)
tree388cf9f61ab305aa5b8089ac6868f67fb813a9d0
parentf1352766fa64e5b2d12b1c64373463783e10cb53 (diff)
downloadguix-63760b5bab223131d3cef39755eaff9ea3c4d70b.tar
guix-63760b5bab223131d3cef39755eaff9ea3c4d70b.tar.gz
gnu: base: Fix circular dependency between %final-outputs and <origin> inputs.
* gnu/packages/base.scm (%final-inputs): Add 'package-with-bootstrap-guile' to 'finalize'.
-rw-r--r--gnu/packages/base.scm10
1 files changed, 7 insertions, 3 deletions
diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
index c24675598b..7cf328a80c 100644
--- a/gnu/packages/base.scm
+++ b/gnu/packages/base.scm
@@ -1001,9 +1001,13 @@ store.")
'("guile" "bash"))))))
(define-public %final-inputs
- ;; Final derivations used as implicit inputs by `gnu-build-system'.
- (let ((finalize (cut package-with-explicit-inputs <> %boot4-inputs
- (current-source-location))))
+ ;; Final derivations used as implicit inputs by 'gnu-build-system'. We
+ ;; still use 'package-with-bootstrap-guile' so that the bootstrap tools are
+ ;; used for origins that have patches, thereby avoiding circular
+ ;; dependencies.
+ (let ((finalize (compose package-with-bootstrap-guile
+ (cut package-with-explicit-inputs <> %boot4-inputs
+ (current-source-location)))))
`(,@(map (match-lambda
((name package)
(list name (finalize package))))