[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[no subject]
From: |
Ludovic Courtès |
Date: |
Wed, 28 Mar 2018 16:50:01 -0400 (EDT) |
branch: master
commit 1872dd95253b4805a00bfe5dee8d1a0ed90af149
Author: Ludovic Courtès <address@hidden>
Date: Wed Mar 28 12:13:58 2018 +0200
evaluate: Tolerate calls to 'build-things' during evaluations.
* bin/evaluate.in (main): 'build-things' replacement no longer calls 'exit'.
---
bin/evaluate.in | 12 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
diff --git a/bin/evaluate.in b/bin/evaluate.in
index a2fa86d..1439ea3 100644
--- a/bin/evaluate.in
+++ b/bin/evaluate.in
@@ -51,14 +51,16 @@ exec ${GUILE:address@hidden@} --no-auto-compile -e main -s
"$0" "$@"
(unless (assoc-ref spec #:use-substitutes?)
;; Make sure we don't resort to substitutes.
(set-build-options store #:use-substitutes? #f #:substitute-urls
'()))
+
;; Grafts can trigger early builds. We do not want that to happen
;; during evaluation, so use a sledgehammer to catch such problems.
+ ;; An exception, though, is the evaluation of Guix itself, which
+ ;; requires building a "trampoline" program.
(set! build-things
- (lambda (store . args)
- (display "error: trying to build things during evaluation!~%"
- stderr)
- (simple-format stderr "'build-things' arguments: ~S~%" args)
- (exit 1)))
+ (lambda (store . args)
+ (simple-format stderr "warning: building things during
evaluation~%")
+ (simple-format stderr "'build-things' arguments: ~S~%" args)
+ (apply real-build-things store args)))
(parameterize ((%use-substitutes? (assoc-ref spec
#:use-substitutes?)))
(unless (string-null? guix-package-path)