aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2014-11-09 22:19:17 +0100
committerLudovic Courtès <ludo@gnu.org>2014-11-09 22:33:45 +0100
commit4684f301d5a7ff39a913c8f06507f67ec9b4a1cd (patch)
treea80a102cbebe3b77d06409d54cab476a79213891
parenta2b63d58d43f5d43a2677048b601a16ce132889d (diff)
downloadguix-4684f301d5a7ff39a913c8f06507f67ec9b4a1cd.tar.gz
guix-4684f301d5a7ff39a913c8f06507f67ec9b4a1cd.zip
gexp: Add #:module-path parameter to 'gexp->derivation'.
* guix/gexp.scm (gexp->derivation): Add #:module-path parameter, and pass it to 'imported-modules' and 'compiled-modules'. * doc/guix.texi (G-Expressions): Adjust accordingly.
-rw-r--r--doc/guix.texi5
-rw-r--r--guix/gexp.scm5
2 files changed, 7 insertions, 3 deletions
diff --git a/doc/guix.texi b/doc/guix.texi
index 1bbb66e9a0..cfd4f0b25e 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -2383,6 +2383,7 @@ information about monads.)
[#:system (%current-system)] [#:target #f] [#:inputs '()] @
[#:hash #f] [#:hash-algo #f] @
[#:recursive? #f] [#:env-vars '()] [#:modules '()] @
+ [#:module-path @var{%load-path}] @
[#:references-graphs #f] [#:local-build? #f] @
[#:guile-for-build #f]
Return a derivation @var{name} that runs @var{exp} (a gexp) with
@@ -2391,8 +2392,8 @@ is true, it is used as the cross-compilation target triplet for packages
referred to by @var{exp}.
Make @var{modules} available in the evaluation context of @var{EXP};
-@var{MODULES} is a list of names of Guile modules from the current
-search path to be copied in the store, compiled, and made available in
+@var{MODULES} is a list of names of Guile modules searched in
+@var{MODULE-PATH} to be copied in the store, compiled, and made available in
the load path during the execution of @var{exp}---e.g., @code{((guix
build utils) (guix build gnu-build-system))}.
diff --git a/guix/gexp.scm b/guix/gexp.scm
index ff80e305db..78e11f5850 100644
--- a/guix/gexp.scm
+++ b/guix/gexp.scm
@@ -126,6 +126,7 @@ corresponding derivation."
hash hash-algo recursive?
(env-vars '())
(modules '())
+ (module-path %load-path)
(guile-for-build (%guile-for-build))
references-graphs
local-build?)
@@ -134,7 +135,7 @@ derivation) on SYSTEM. When TARGET is true, it is used as the
cross-compilation target triplet for packages referred to by EXP.
Make MODULES available in the evaluation context of EXP; MODULES is a list of
-names of Guile modules from the current search path to be copied in the store,
+names of Guile modules searched in MODULE-PATH to be copied in the store,
compiled, and made available in the load path during the execution of
EXP---e.g., '((guix build utils) (guix build gnu-build-system)).
@@ -194,11 +195,13 @@ The other arguments are as for 'derivation'."
(modules (if (pair? %modules)
(imported-modules %modules
#:system system
+ #:module-path module-path
#:guile guile-for-build)
(return #f)))
(compiled (if (pair? %modules)
(compiled-modules %modules
#:system system
+ #:module-path module-path
#:guile guile-for-build)
(return #f)))
(graphs (if references-graphs