summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2013-09-03 10:48:52 +0200
committerLudovic Courtès <ludo@gnu.org>2013-09-03 10:48:52 +0200
commitbda44eed939ae251a21ad3cd1337c58e8d349581 (patch)
tree29b53492b4353b67e1f716b2c00fb89ff1dada2c
parent8badfc55588c74dd8890ae5a47d40e2ebe7366df (diff)
downloadguix-bda44eed939ae251a21ad3cd1337c58e8d349581.tar.gz
pull: Compile files in the lexicographic order.
* guix/scripts/pull.scm (unpack): Print the name of the file being
  compiled.  Sort the names of files to compile.
-rw-r--r--guix/scripts/pull.scm6
1 files changed, 5 insertions, 1 deletions
diff --git a/guix/scripts/pull.scm b/guix/scripts/pull.scm
index f4135efc99..f3d87a63c0 100644
--- a/guix/scripts/pull.scm
+++ b/guix/scripts/pull.scm
@@ -106,6 +106,8 @@ files."
                      (when (string-suffix? ".scm" file)
                        (let ((go (string-append (string-drop-right file 4)
                                                 ".go")))
+                         (format (current-error-port)
+                                 "compiling '~a'...~%" file)
                          (compile-file file
                                        #:output-file go
                                        #:opts %auto-compilation-options))))
@@ -114,7 +116,9 @@ files."
                    ;; download), we must build it first to avoid errors since
                    ;; (gnutls) is unavailable.
                    (cons (string-append out "/guix/build/download.scm")
-                         (find-files out "\\.scm")))
+
+                         ;; Sort the file names to get deterministic results.
+                         (sort (find-files out "\\.scm") string<?)))
 
          ;; Remove the "fake" (guix config).
          (delete-file (string-append out "/guix/config.scm"))