guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

06/11: build-system/guile: Install .scm files first.


From: guix-commits
Subject: 06/11: build-system/guile: Install .scm files first.
Date: Sat, 2 Mar 2024 11:27:15 -0500 (EST)

civodul pushed a commit to branch master
in repository guix.

commit ef788ee2dc3d7de3bcf49ca1856ff06fc14b4541
Author: Tomas Volf <~@wolfsden.cz>
AuthorDate: Fri Feb 23 19:18:14 2024 +0100

    build-system/guile: Install .scm files first.
    
    Until now the .go files were generated first, and only after that the .scm
    files were installed into the target location.  That led to a lot of 
messages
    about `source file ... newer than compiled' if the custom 'check phase tried
    to load the compiled files.
    
    Swapping the order of the actions resolves the issue allowing the tests to 
be
    written without lot of noise in the build log.
    
    For final artifacts it was not a problem, since daemon resets the 
timestamps.
    
    * guix/build/guile-build-system.scm (build): Install .scm before producing
    .go.
    
    Change-Id: I3428d144fcbaa6c904ee662193c3bca82589e344
    Signed-off-by: Ludovic Courtès <ludo@gnu.org>
---
 guix/build/guile-build-system.scm | 15 +++++++--------
 1 file changed, 7 insertions(+), 8 deletions(-)

diff --git a/guix/build/guile-build-system.scm 
b/guix/build/guile-build-system.scm
index 421e358b20..8927da224a 100644
--- a/guix/build/guile-build-system.scm
+++ b/guix/build/guile-build-system.scm
@@ -187,6 +187,12 @@ installed; this is useful for files that are meant to be 
included."
     (let ((source-files
            (with-directory-excursion source-directory
              (find-files "." scheme-file-regexp))))
+      (for-each
+       (lambda (file)
+         (install-file (string-append source-directory "/" file)
+                       (string-append module-dir
+                                      "/" (dirname file))))
+       source-files)
       (invoke-each
        (filter-map (lambda (file)
                      (and (or (not not-compiled-file-regexp)
@@ -202,14 +208,7 @@ installed; this is useful for files that are meant to be 
included."
                                  flags)))
                    source-files)
        #:max-processes (parallel-job-count)
-       #:report-progress report-build-progress)
-
-      (for-each
-       (lambda (file)
-         (install-file (string-append source-directory "/" file)
-                       (string-append module-dir
-                                      "/" (dirname file))))
-       source-files))
+       #:report-progress report-build-progress))
     #t))
 
 (define* (install-documentation #:key outputs



reply via email to

[Prev in Thread] Current Thread [Next in Thread]