From 34faf63ebc9221f5cac460bc54237ea8436d5046 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Wed, 22 Apr 2020 15:24:47 +0200 Subject: gexp: Add 'load-path?' field to . * guix/gexp.scm ()[load-path?]: New field. (scheme-file): Add #:set-load-path? and honor it. (scheme-file-compiler): Pass #:set-load-path? to 'gexp->file'. * doc/guix.texi (G-Expressions): Document it. --- guix/gexp.scm | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'guix/gexp.scm') diff --git a/guix/gexp.scm b/guix/gexp.scm index 4ac0411da1..c320065546 100644 --- a/guix/gexp.scm +++ b/guix/gexp.scm @@ -472,24 +472,26 @@ This is the declarative counterpart of 'gexp->script'." #:target target)))) (define-record-type - (%scheme-file name gexp splice?) + (%scheme-file name gexp splice? load-path?) scheme-file? (name scheme-file-name) ;string (gexp scheme-file-gexp) ;gexp - (splice? scheme-file-splice?)) ;Boolean + (splice? scheme-file-splice?) ;Boolean + (load-path? scheme-file-set-load-path?)) ;Boolean -(define* (scheme-file name gexp #:key splice?) +(define* (scheme-file name gexp #:key splice? (set-load-path? #t)) "Return an object representing the Scheme file NAME that contains GEXP. This is the declarative counterpart of 'gexp->file'." - (%scheme-file name gexp splice?)) + (%scheme-file name gexp splice? set-load-path?)) (define-gexp-compiler (scheme-file-compiler (file ) system target) ;; Compile FILE by returning a derivation that builds the file. (match file - (($ name gexp splice?) + (($ name gexp splice? set-load-path?) (gexp->file name gexp + #:set-load-path? set-load-path? #:splice? splice? #:system system #:target target)))) -- cgit v1.2.3