summary refs log tree commit diff
path: root/gnu/packages/guile.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2018-09-05 15:33:25 +0200
committerLudovic Courtès <ludo@gnu.org>2018-09-05 15:35:54 +0200
commit5e3082df1c8eb07f7c7cd02f118cd9975eb32bb8 (patch)
tree5fdcb830a6d3d1c5d50f3aa2f427c6c5c0f2c1d8 /gnu/packages/guile.scm
parent3f5e6ccf9be46381b21f63638f89853ee81bfb64 (diff)
downloadguix-5e3082df1c8eb07f7c7cd02f118cd9975eb32bb8.tar.gz
gnu: guile-fibers: Install .go files to "…/site-ccache".
* gnu/packages/guile.scm (guile-fibers)[arguments]: New field.
Diffstat (limited to 'gnu/packages/guile.scm')
-rw-r--r--gnu/packages/guile.scm14
1 files changed, 14 insertions, 0 deletions
diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm
index a585dd6dc8..f594cd13ed 100644
--- a/gnu/packages/guile.scm
+++ b/gnu/packages/guile.scm
@@ -1817,6 +1817,20 @@ Note that 8sync is only available for Guile 2.2.")
                (base32
                 "0vjkg72ghgdgphzbjz9ig8al8271rq8974viknb2r1rg4lz92ld0"))))
     (build-system gnu-build-system)
+    (arguments
+     '(#:phases (modify-phases %standard-phases
+                  (add-after 'install 'mode-guile-objects
+                    (lambda* (#:key outputs #:allow-other-keys)
+                      ;; .go files are installed to "lib/guile/X.Y/cache".
+                      ;; This phase moves them to "…/site-ccache".
+                      (let* ((out (assoc-ref outputs "out"))
+                             (lib (string-append out "/lib/guile"))
+                             (old (car (find-files lib "^ccache$"
+                                                   #:directories? #t)))
+                             (new (string-append (dirname old)
+                                                 "/site-ccache")))
+                        (rename-file old new)
+                        #t))))))
     (native-inputs
      `(("texinfo" ,texinfo)
        ("pkg-config" ,pkg-config)))