summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorCyril Roelandt <tipecaml@gmail.com>2013-10-15 00:14:34 +0200
committerCyril Roelandt <tipecaml@gmail.com>2013-12-15 23:39:43 +0100
commitaf949e8ee7e134e30e559dcfa9cf59a3d28ea350 (patch)
treeb7c26a97dfbcd6d663f6ca7f306301e59584db3c /gnu
parent503c5f6d5d5b61097731158e70ff598fe42d6345 (diff)
gnu: gtk+: enable introspection.
* gnu/packages/gtk.scm (atk, gdk-pixbuf, gtk+, pango): enable introspection * guix/build/gnome.scm: New file.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/glib.scm5
-rw-r--r--gnu/packages/gtk.scm45
2 files changed, 44 insertions, 6 deletions
diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index 2ba1460444..6fc283467c 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -184,9 +184,12 @@ dynamic loading, and an object system.")
("cairo" ,cairo)
("flex" ,flex)
("glib" ,glib)
- ("libffi" ,libffi)
("pkg-config" ,pkg-config)
("python-2" ,python-2)))
+ (propagated-inputs
+ `(;; In practice, GIR users will need libffi when using
+ ;; gobject-introspection.
+ ("libffi" ,libffi)))
(arguments
`(#:phases
(alist-replace
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index d34deb91e5..fcfbcc47ce 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -53,7 +53,8 @@
(base32
"1c2hbg66wfvibsz2ia0ri48yr62751fn950i97c53j3b0fjifsb3"))))
(build-system gnu-build-system)
- (inputs `(("glib" ,glib)))
+ (inputs `(("glib" ,glib)
+ ("gobject-introspection" ,gobject-introspection)))
(native-inputs `(("pkg-config" ,pkg-config)))
(synopsis "GNOME accessibility toolkit")
(description
@@ -155,7 +156,8 @@ affine transformation (scale, rotation, shear, etc.)")
`(("cairo" ,cairo)
("harfbuzz" ,harfbuzz)))
(inputs
- `(("zlib" ,zlib)))
+ `(("gobject-introspection" ,gobject-introspection)
+ ("zlib" ,zlib)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(synopsis "GNOME text and font handling library")
@@ -234,6 +236,7 @@ printing and other features typical of a source code editor.")
(build-system gnu-build-system)
(inputs
`(("glib" ,glib)
+ ("gobject-introspection", gobject-introspection)
("libjpeg" ,libjpeg)
("libpng" ,libpng)
("libtiff" ,libtiff)))
@@ -365,17 +368,24 @@ application suites.")
("libxinerama" ,libxinerama)
("pango" ,pango)))
(inputs
- `(("libxml2" ,libxml2)))
+ `(("gobject-introspection" ,gobject-introspection)
+ ("libxml2" ,libxml2)))
(native-inputs
`(("perl" ,perl)
("pkg-config" ,pkg-config)
("python-wrapper" ,python-wrapper)
("xorg-server" ,xorg-server)))
(arguments
- `(#:phases
+ `(#:modules ((guix build gnome)
+ (guix build gnu-build-system)
+ (guix build utils))
+ #:imported-modules ((guix build gnome)
+ (guix build gnu-build-system)
+ (guix build utils))
+ #:phases
(alist-replace
'configure
- (lambda* (#:key #:allow-other-keys #:rest args)
+ (lambda* (#:key inputs #:allow-other-keys #:rest args)
(let ((configure (assoc-ref %standard-phases 'configure)))
;; Disable most tests, failing in the chroot with the message:
;; D-Bus library appears to be incorrectly set up; failed to read
@@ -384,6 +394,31 @@ application suites.")
;; See the manual page for dbus-uuidgen to correct this issue.
(substitute* "testsuite/Makefile.in"
(("SUBDIRS = gdk gtk a11y css reftests") "SUBDIRS = gdk"))
+
+ ;; We need to tell GIR where it can find some of the required .gir
+ ;; files.
+ (substitute* "gdk/Makefile.in"
+ (("--add-include-path=../gdk")
+ (string-append
+ "--add-include-path=../gdk"
+ " --add-include-path=" (gir-directory inputs "gdk-pixbuf")
+ " --add-include-path=" (gir-directory inputs "pango")))
+ (("--includedir=\\.")
+ (string-append "--includedir=."
+ " --includedir=" (gir-directory inputs "gdk-pixbuf")
+ " --includedir=" (gir-directory inputs "pango"))))
+
+ (substitute* "gtk/Makefile.in"
+ (("--add-include-path=../gdk")
+ (string-append "--add-include-path=../gdk"
+ " --add-include-path=" (gir-directory inputs "atk")
+ " --add-include-path=" (gir-directory inputs "gdk-pixbuf")
+ " --add-include-path=" (gir-directory inputs "pango")))
+ (("--includedir=../gdk")
+ (string-append "--includedir=../gdk"
+ " --includedir=" (gir-directory inputs "atk")
+ " --includedir=" (gir-directory inputs "gdk-pixbuf")
+ " --includedir=" (gir-directory inputs "pango"))))
(apply configure args)))
%standard-phases)))))