guix-build: Display multiple outputs when needed.

* guix-build.in (guix-build): Display multiple outputs when there's more
  than one.
This commit is contained in:
Ludovic Courtès 2012-07-02 01:24:40 +02:00
parent d66ac374e9
commit 9336b5ab55
1 changed files with 10 additions and 2 deletions

View File

@ -130,6 +130,8 @@ Report bugs to: ~a.~%") "@PACKAGE_BUGREPORT@"))
(setlocale LC_ALL "")
(textdomain "guix")
(setvbuf (current-output-port) _IOLBF)
(setvbuf (current-error-port) _IOLBF)
(let* ((opts (parse-options))
(drv (filter-map (match-lambda
@ -174,6 +176,12 @@ Report bugs to: ~a.~%") "@PACKAGE_BUGREPORT@"))
(or (assoc-ref opts 'dry-run?)
(and (build-derivations %store drv)
(for-each (lambda (d)
(display (derivation-path->output-path d))
(newline))
(let ((drv (call-with-input-file d
read-derivation)))
(format #t "~{~a~%~}"
(map (match-lambda
((out-name . out)
(derivation-path->output-path
d out-name)))
(derivation-outputs drv)))))
drv))))))