mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2025-01-12 22:26:40 -05:00
build-system: copy-build-system: Keep symlinks symbolic.
guix/build/copy-build-system.scm (install)[install-file]: Read symlinks as is done in install-simple through copy-recursively. Signed-off-by: Pierre Neidhardt <mail@ambrevar.xyz>
This commit is contained in:
parent
2e76ddd67f
commit
a3b1f878df
1 changed files with 7 additions and 1 deletions
|
@ -91,7 +91,13 @@ (define (install-file file target)
|
||||||
file))))
|
file))))
|
||||||
(format (current-output-port) "`~a' -> `~a'~%" file dest)
|
(format (current-output-port) "`~a' -> `~a'~%" file dest)
|
||||||
(mkdir-p (dirname dest))
|
(mkdir-p (dirname dest))
|
||||||
(copy-file file dest)))
|
(let ((stat (lstat file)))
|
||||||
|
(case (stat:type stat)
|
||||||
|
((symlink)
|
||||||
|
(let ((target (readlink file)))
|
||||||
|
(symlink target dest)))
|
||||||
|
(else
|
||||||
|
(copy-file file dest))))))
|
||||||
|
|
||||||
(define* (make-file-predicate suffixes matches-regexp #:optional (default-value #t))
|
(define* (make-file-predicate suffixes matches-regexp #:optional (default-value #t))
|
||||||
"Return a predicate that returns #t if its file argument matches the
|
"Return a predicate that returns #t if its file argument matches the
|
||||||
|
|
Loading…
Reference in a new issue