summaryrefslogtreecommitdiff
path: root/guix/build
diff options
context:
space:
mode:
authorMarius Bakke <mbakke@fastmail.com>2020-01-15 00:09:46 +0100
committerMarius Bakke <mbakke@fastmail.com>2020-01-15 00:09:46 +0100
commit3cfe76bec06fbd8bb7e7cb3387866fefbcad674f (patch)
treeb66780d205fb50fd44d0bbb38f5df99cf3167ba1 /guix/build
parentec836b46bf52a5f86c61f50e3a2c3330a7ee3665 (diff)
parent574a71a7a9668aa184661c58e1f18a4d4fccd792 (diff)
downloadpatches-3cfe76bec06fbd8bb7e7cb3387866fefbcad674f.tar
patches-3cfe76bec06fbd8bb7e7cb3387866fefbcad674f.tar.gz
Merge branch 'master' into core-updates
Diffstat (limited to 'guix/build')
-rw-r--r--guix/build/asdf-build-system.scm9
1 files changed, 9 insertions, 0 deletions
diff --git a/guix/build/asdf-build-system.scm b/guix/build/asdf-build-system.scm
index 1be2b3c5f0..f3f4b49bcf 100644
--- a/guix/build/asdf-build-system.scm
+++ b/guix/build/asdf-build-system.scm
@@ -79,6 +79,15 @@ valid."
(let ((source (getcwd))
(target (source-directory out name))
(system-path (string-append out %system-install-prefix)))
+ ;; SBCL keeps the modification time of the source file in the compiled
+ ;; file, and the source files might just have been patched by a custom
+ ;; phase. Therefore we reset the modification time of all the source
+ ;; files before compiling.
+ (for-each (lambda (file)
+ (let ((s (lstat file)))
+ (unless (eq? (stat:type s) 'symlink)
+ (utime file 0 0 0 0))))
+ (find-files source #:directories? #t))
(copy-recursively source target #:keep-mtime? #t)
(mkdir-p system-path)
(for-each