diff options
author | Ludovic Courtès <ludo@gnu.org> | 2014-11-24 22:45:41 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2014-11-24 22:45:41 +0100 |
commit | f8bcf1935a18e9a728e824030b3ded4fb63638cf (patch) | |
tree | 0e95bfbfec68ff603cd185e3e867a2ad3859e749 /guix/build/gnu-build-system.scm | |
parent | c23d17095db0611d8ee32357f17da441bcb0bc75 (diff) | |
download | gnu-guix-f8bcf1935a18e9a728e824030b3ded4fb63638cf.tar gnu-guix-f8bcf1935a18e9a728e824030b3ded4fb63638cf.tar.gz |
build-system/gnu: Gracefully handle dangling symlinks in the 'strip' phase.
* guix/build/gnu-build-system.scm (strip): Check whether 'file-exists?'
before calling 'elf-file?' and 'ar-file?'. This should fix build
failures in the presence of dangling symlinks, as in
<http://hydra.gnu.org/build/167521/nixlog/1/raw>.
Diffstat (limited to 'guix/build/gnu-build-system.scm')
-rw-r--r-- | guix/build/gnu-build-system.scm | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/guix/build/gnu-build-system.scm b/guix/build/gnu-build-system.scm index dbbb71af35..e42a6cc48b 100644 --- a/guix/build/gnu-build-system.scm +++ b/guix/build/gnu-build-system.scm @@ -343,7 +343,8 @@ makefiles." debug-output objcopy-command)) (file-system-fold (const #t) (lambda (path stat result) ; leaf - (and (or (elf-file? path) (ar-file? path)) + (and (file-exists? path) ;discard dangling symlinks + (or (elf-file? path) (ar-file? path)) (or (not debug-output) (make-debug-file path)) (zero? (apply system* strip-command |