summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gnu/packages/gtk.scm32
1 files changed, 24 insertions, 8 deletions
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 380fae594b..db19c9c931 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -740,26 +740,42 @@ application suites.")
"1f5nd9n46n6cwfl1byjml02q3y2hgn7nkx98km1czgwarxl7ws3x"))))
(build-system gnu-build-system)
(arguments
- '(#:phases (modify-phases %standard-phases
+ '(#:modules ((guix build utils)
+ (guix build gnu-build-system)
+ (ice-9 popen)
+ (ice-9 rdelim))
+
+ #:phases (modify-phases %standard-phases
(add-before 'configure 'set-module-directory
(lambda* (#:key outputs #:allow-other-keys)
;; Install modules under $out/share/guile/site/2.0.
- (let ((out (assoc-ref outputs "out")))
+ (let ((out (assoc-ref outputs "out"))
+ (effective
+ (read-line
+ (open-pipe* OPEN_READ "guile" "-c"
+ "(display (effective-version))"))))
(substitute* "Makefile.in"
(("scmdir = ([[:graph:]]+).*" _ value)
- (string-append "scmdir = " value "/2.0\n")))
+ (string-append "scmdir = " value "/" effective "\n")))
(substitute* "cairo/Makefile.in"
(("moduledir = ([[:graph:]]+).*" _ value)
(string-append "moduledir = "
- "$(prefix)/share/guile/site/2.0/cairo\n'"))))))
+ "$(prefix)/share/guile/site/"
+ effective "/cairo\n'")))
+ #t)))
(add-after 'install 'install-missing-file
(lambda* (#:key outputs #:allow-other-keys)
;; By default 'vector-types.scm' is not installed, so do
;; it here.
- (let ((out (assoc-ref outputs "out")))
- (copy-file "cairo/vector-types.scm"
- (string-append out "/share/guile/site/2.0"
- "/cairo/vector-types.scm"))))))))
+ (let ((out (assoc-ref outputs "out"))
+ (effective
+ (read-line
+ (open-pipe* OPEN_READ "guile" "-c"
+ "(display (effective-version))"))))
+ (install-file "cairo/vector-types.scm"
+ (string-append out "/share/guile/site/"
+ effective "/cairo"))
+ #t))))))
(inputs
`(("guile-lib" ,guile-lib)
("expat" ,expat)