summaryrefslogtreecommitdiff
path: root/guix/build/guile-build-system.scm
diff options
context:
space:
mode:
authorLiliana Marie Prikler <liliana.prikler@gmail.com>2023-11-19 10:02:15 +0100
committerLiliana Marie Prikler <liliana.prikler@gmail.com>2023-11-19 10:02:15 +0100
commit1cc3b7e80f60a2a5a6a1400ed0b025efeae7a523 (patch)
tree77cbf407563c8c4b1acc00fe0fdb8ac79b1fdd95 /guix/build/guile-build-system.scm
parentf64ec2b15132c46bcdf0546196646237890832f6 (diff)
parentb7abea0fd6a146563830db1dc4ddd0cceb6fcf1c (diff)
Merge branch 'master' into gnome-team
Change-Id: I62da840b7600f2d3d8541e666d09e2f2a1b7d8c4
Diffstat (limited to 'guix/build/guile-build-system.scm')
-rw-r--r--guix/build/guile-build-system.scm13
1 files changed, 12 insertions, 1 deletions
diff --git a/guix/build/guile-build-system.scm b/guix/build/guile-build-system.scm
index 32a431d347..e7e7f2d0be 100644
--- a/guix/build/guile-build-system.scm
+++ b/guix/build/guile-build-system.scm
@@ -28,6 +28,7 @@
#:use-module (ice-9 format)
#:use-module (guix build utils)
#:export (target-guile-effective-version
+ target-guile-scm+go
%standard-phases
guile-build))
@@ -44,7 +45,17 @@ Return #false if it cannot be determined."
(string? line)
line)))
-(define (file-sans-extension file) ;TODO: factorize
+(define* (target-guile-scm+go output #:optional guile)
+ "Return paths under `output' for scm and go files for effective version of
+GUILE or whichever `guile' is in $PATH. Raises an error if they cannot be
+determined."
+ (let* ((version (or (target-guile-effective-version guile)
+ (error "Cannot determine the effective target guile version.")))
+ (scm (string-append output "/share/guile/site/" version))
+ (go (string-append output "/lib/guile/" version "/site-ccache")))
+ (values scm go)))
+
+(define (file-sans-extension file) ;TODO: factorize
"Return the substring of FILE without its extension, if any."
(let ((dot (string-rindex file #\.)))
(if dot