aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2018-09-05 14:46:28 +0200
committerLudovic Courtès <ludo@gnu.org>2018-09-05 15:35:54 +0200
commit7903f00a74871ac4ecd41878ac9846fdae91e276 (patch)
tree2afdee863a7879eb6a7d2f243c8693eaf26d4f8b
parent5e3082df1c8eb07f7c7cd02f118cd9975eb32bb8 (diff)
downloadguix-7903f00a74871ac4ecd41878ac9846fdae91e276.tar
guix-7903f00a74871ac4ecd41878ac9846fdae91e276.tar.gz
gnu: cuirass: Add dependency on Guile-Gcrypt.
This is a followup to 53166aec987957efba917c83f093817d6cf6e943, which added a hard dependency of Guix on Guile-Gcrypt. * gnu/packages/ci.scm (cuirass)[inputs]: Add GUILE-GCRYPT. [arguments]: In 'wrap-program' phase, use 'string-join' to compute 'mods'. Define 'objs' for use in GUILE_LOAD_COMPILED_PATH, and take objects from lib/guile/X.Y/site-ccache.
-rw-r--r--gnu/packages/ci.scm30
1 files changed, 17 insertions, 13 deletions
diff --git a/gnu/packages/ci.scm b/gnu/packages/ci.scm
index e26983da3b..067a288004 100644
--- a/gnu/packages/ci.scm
+++ b/gnu/packages/ci.scm
@@ -32,6 +32,7 @@
#:use-module (gnu packages compression)
#:use-module (gnu packages databases)
#:use-module (gnu packages guile)
+ #:use-module (gnu packages gnupg)
#:use-module (gnu packages mail)
#:use-module (gnu packages package-management)
#:use-module (gnu packages perl)
@@ -223,39 +224,42 @@ their dependencies.")
(lambda* (#:key inputs outputs #:allow-other-keys)
;; Wrap the 'cuirass' command to refer to the right modules.
(let* ((out (assoc-ref outputs "out"))
+ (gcrypt (assoc-ref inputs "guile-gcrypt"))
(json (assoc-ref inputs "guile-json"))
(sqlite (assoc-ref inputs "guile-sqlite3"))
(git (assoc-ref inputs "guile-git"))
(bytes (assoc-ref inputs "guile-bytestructures"))
(fibers (assoc-ref inputs "guile-fibers"))
(guix (assoc-ref inputs "guix"))
+ (deps (list gcrypt json sqlite git bytes fibers guix))
(guile (assoc-ref %build-inputs "guile"))
(effective (read-line
(open-pipe* OPEN_READ
(string-append guile "/bin/guile")
"-c" "(display (effective-version))")))
- (mods (string-append json "/share/guile/site/"
- effective ":"
- git "/share/guile/site/"
- effective ":"
- bytes "/share/guile/site/"
- effective ":"
- sqlite "/share/guile/site/"
- effective ":"
- fibers "/share/guile/site/"
- effective ":"
- guix "/share/guile/site/"
- effective)))
+ (mods (string-drop-right ;drop trailing colon
+ (string-join deps
+ (string-append "/share/guile/site/"
+ effective ":")
+ 'suffix)
+ 1))
+ (objs (string-drop-right
+ (string-join deps
+ (string-append "/lib/guile/" effective
+ "/site-ccache:")
+ 'suffix)
+ 1)))
;; Make sure 'cuirass' can find the 'evaluate' command, as
;; well as the relevant Guile modules.
(wrap-program (string-append out "/bin/cuirass")
`("PATH" ":" prefix (,(string-append out "/bin")))
`("GUILE_LOAD_PATH" ":" prefix (,mods))
- `("GUILE_LOAD_COMPILED_PATH" ":" prefix (,mods)))
+ `("GUILE_LOAD_COMPILED_PATH" ":" prefix (,objs)))
#t))))))
(inputs
`(("guile" ,guile-2.2)
("guile-fibers" ,guile-fibers)
+ ("guile-gcrypt" ,guile-gcrypt)
("guile-json" ,guile-json)
("guile-sqlite3" ,guile-sqlite3)
("guile-git" ,guile-git)