[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
04/06: build: Show completion percentage while building.
From: |
guix-commits |
Subject: |
04/06: build: Show completion percentage while building. |
Date: |
Fri, 19 Apr 2019 11:48:40 -0400 (EDT) |
civodul pushed a commit to branch master
in repository guix.
commit 04b5ac212f33fc20696fbe43816a1a86aad1a9f2
Author: Ludovic Courtès <address@hidden>
Date: Fri Apr 19 16:49:46 2019 +0200
build: Show completion percentage while building.
* build-aux/compile-all.scm (%): New procedure.
(command-line): Use it to report completion.
---
build-aux/compile-all.scm | 17 +++++++++++++----
1 file changed, 13 insertions(+), 4 deletions(-)
diff --git a/build-aux/compile-all.scm b/build-aux/compile-all.scm
index d2afbda..4259ea5 100644
--- a/build-aux/compile-all.scm
+++ b/build-aux/compile-all.scm
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016 Taylan Ulrich Bayırlı/Kammer <address@hidden>
-;;; Copyright © 2016, 2017 Ludovic Courtès <address@hidden>
+;;; Copyright © 2016, 2017, 2019 Ludovic Courtès <address@hidden>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -17,7 +17,8 @@
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
-(use-modules (ice-9 match)
+(use-modules (ice-9 format)
+ (ice-9 match)
(ice-9 threads)
(srfi srfi-1)
(guix build compile)
@@ -78,6 +79,10 @@ to 'make'."
(current-processor-count))))
(loop tail)))))))))
+(define (% completed total)
+ "Return the completion percentage of COMPLETED over TOTAL as an integer."
+ (inexact->exact (round (* 100. (/ completed total)))))
+
;; Install a SIGINT handler to give unwind handlers in 'compile-file' an
;; opportunity to run upon SIGINT and to remove temporary output files.
(sigaction SIGINT
@@ -92,10 +97,14 @@ to 'make'."
#:host host
#:report-load (lambda (file total completed)
(when file
- (format #t " LOAD ~a~%" file)
+ (format #t "[~3d%] LOAD ~a~%"
+ (% (+ 1 completed) (* 2 total))
+ file)
(force-output)))
#:report-compilation (lambda (file total completed)
(when file
- (format #t " GUILEC ~a~%"
+ (format #t "[~3d%] GUILEC ~a~%"
+ (% (+ total completed 1)
+ (* 2 total))
(scm->go file))
(force-output))))))
- branch master updated (296da6e -> 60ecacd), guix-commits, 2019/04/19
- 01/06: guix build: Accept multiple '-s' options., guix-commits, 2019/04/19
- 02/06: maint: 'release' clears gettext-induced changes in doc/., guix-commits, 2019/04/19
- 03/06: maint: Build all the 'guix' packages in parallel., guix-commits, 2019/04/19
- 05/06: gnu: ocaml-dose3: Shorten patch file name., guix-commits, 2019/04/19
- 04/06: build: Show completion percentage while building.,
guix-commits <=
- 06/06: gnu: linkchecker: Shorten patch file name., guix-commits, 2019/04/19