aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/gtk.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/gtk.scm')
-rw-r--r--gnu/packages/gtk.scm78
1 files changed, 46 insertions, 32 deletions
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 057c808597..d724d79a85 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
-;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015, 2017 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch>
@@ -734,38 +734,52 @@ application suites.")
(name "guile-cairo")
(version "1.4.1")
(source (origin
- (method url-fetch)
- (uri (string-append
- "http://download.gna.org/guile-cairo/guile-cairo-"
- version
- ".tar.gz"))
- (sha256
- (base32
- "1f5nd9n46n6cwfl1byjml02q3y2hgn7nkx98km1czgwarxl7ws3x"))))
+ (method url-fetch)
+ (uri (string-append
+ "http://download.gna.org/guile-cairo/guile-cairo-"
+ version
+ ".tar.gz"))
+ (sha256
+ (base32
+ "1f5nd9n46n6cwfl1byjml02q3y2hgn7nkx98km1czgwarxl7ws3x"))))
(build-system gnu-build-system)
(arguments
- '(#:phases (alist-cons-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")))
- (substitute* "Makefile.in"
- (("scmdir = ([[:graph:]]+).*" _ value)
- (string-append "scmdir = " value "/2.0\n")))
- (substitute* "cairo/Makefile.in"
- (("moduledir = ([[:graph:]]+).*" _ value)
- (string-append "moduledir = "
- "$(prefix)/share/guile/site/2.0/cairo\n'")))))
- (alist-cons-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"))))
- %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"))
+ (effective
+ (read-line
+ (open-pipe* OPEN_READ "guile" "-c"
+ "(display (effective-version))"))))
+ (substitute* "Makefile.in"
+ (("scmdir = ([[:graph:]]+).*" _ value)
+ (string-append "scmdir = " value "/" effective "\n")))
+ (substitute* "cairo/Makefile.in"
+ (("moduledir = ([[:graph:]]+).*" _ value)
+ (string-append "moduledir = "
+ "$(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"))
+ (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)
@@ -774,7 +788,7 @@ application suites.")
;; The .pc file refers to 'cairo'.
`(("cairo" ,cairo)))
(native-inputs
- `(("pkg-config" ,pkg-config)))
+ `(("pkg-config" ,pkg-config)))
(home-page "http://www.nongnu.org/guile-cairo/")
(synopsis "Cairo bindings for GNU Guile")
(description