mirror of
https://git.savannah.gnu.org/git/guix.git
synced 2026-04-06 13:10:33 +02:00
gexp: Add ‘assume-source-relative-file-name’.
* guix/gexp.scm (assume-source-relative-file-name): New macro.
(local-file): Use assume-source-relative-file-name to look up a non-literal
file relative to the current source directory.
* doc/guix.texi (G-expressions): Document it.
* tests/gexp.scm ("local-file, non-literal source relative file name"):
New test.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Change-Id: I18573c8c7a6c87e8351b34412f9d26bb23b068b4
This commit is contained in:
committed by
Ludovic Courtès
parent
8da7f4a110
commit
f3ea876895
@@ -251,6 +251,12 @@
|
||||
(let ((file (local-file (string-copy "../base32.scm"))))
|
||||
(local-file-absolute-file-name file)))))
|
||||
|
||||
(test-equal "local-file, non-literal source relative file name"
|
||||
(current-filename)
|
||||
(let ((file (local-file (assume-source-relative-file-name
|
||||
(string-append "gexp" ".scm")))))
|
||||
(local-file-absolute-file-name file)))
|
||||
|
||||
(test-assert "local-file, relative file name, within gexp"
|
||||
(let* ((file (search-path %load-path "guix/base32.scm"))
|
||||
(interned (add-to-store %store "base32.scm" #f "sha256" file)))
|
||||
|
||||
Reference in New Issue
Block a user