~ruther/guix-local

9762706b900cda66a3caa3deea2f55432d6ac592 — Ludovic Courtès 13 years ago cc57f25
guix-package: Be verbose when Guile itself needs to be built.

* guix-package.in (guix-package)[guile-missing?]: New procedure.
  (guix-package): Always redirect `current-build-output-port' to
  `current-error-port' when (guile-missing?).
1 files changed, 8 insertions(+), 1 deletions(-)

M guix-package.in
M guix-package.in => guix-package.in +8 -1
@@ 272,6 272,11 @@ Install, remove, or upgrade PACKAGES in a single transaction.\n"))
                 (alist-cons 'argument arg result))
               %default-options))

  (define (guile-missing?)
    ;; Return #t if %GUILE-FOR-BUILD is not available yet.
    (let ((out (derivation-path->output-path (%guile-for-build))))
      (not (valid-path? %store out))))

  (define (show-what-to-build drv dry-run?)
    ;; Show what will/would be built in realizing the derivations listed
    ;; in DRV.


@@ 393,7 398,9 @@ Install, remove, or upgrade PACKAGES in a single transaction.\n"))
                 (if (string=? old-prof prof)
                     (format (current-error-port) (_ "nothing to be done~%"))
                     (and (parameterize ((current-build-output-port
                                          (if verbose?
                                          ;; Output something when Guile
                                          ;; needs to be built.
                                          (if (or verbose? (guile-missing?))
                                              (current-error-port)
                                              (%make-void-port "w"))))
                            (build-derivations %store (list prof-drv)))