[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 2/6 v2] gnu: gtk+: enable introspection.
From: |
Cyril Roelandt |
Subject: |
[PATCH 2/6 v2] gnu: gtk+: enable introspection. |
Date: |
Sun, 8 Dec 2013 21:32:17 +0100 |
* gnu/packages/gtk.scm (atk, gdk-pixbuf, gtk+, pango): enable introspection
* guix/build/gnome.scm: New file.
---
Makefile.am | 1 +
gnu/packages/glib.scm | 3 ++-
gnu/packages/gtk.scm | 41 +++++++++++++++++++++++++++++++++++++----
guix/build/gnome.scm | 31 +++++++++++++++++++++++++++++++
4 files changed, 71 insertions(+), 5 deletions(-)
create mode 100644 guix/build/gnome.scm
diff --git a/Makefile.am b/Makefile.am
index a99f8c1..13088ff 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -52,6 +52,7 @@ MODULES = \
guix/ui.scm \
guix/build/download.scm \
guix/build/cmake-build-system.scm \
+ guix/build/gnome.scm \
guix/build/gnu-build-system.scm \
guix/build/gnu-dist.scm \
guix/build/linux-initrd.scm \
diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index 1ff873d..5a1e2e4 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -184,9 +184,10 @@ dynamic loading, and an object system.")
("cairo" ,cairo)
("flex" ,flex)
("glib" ,glib)
- ("libffi" ,libffi)
("pkg-config" ,pkg-config)
("python-2" ,python-2)))
+ (propagated-inputs
+ `(("libffi" ,libffi)))
(arguments
`(#:phases
(alist-replace
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 5aa95fe..d435b03 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -54,6 +54,7 @@
"1c2hbg66wfvibsz2ia0ri48yr62751fn950i97c53j3b0fjifsb3"))))
(build-system gnu-build-system)
(inputs `(("glib" ,glib)
+ ("gobject-introspection" ,gobject-introspection)
("pkg-config" ,pkg-config)))
(synopsis "GNOME accessibility toolkit")
(description
@@ -153,7 +154,8 @@ affine transformation (scale, rotation, shear, etc.)")
`(("cairo" ,cairo)
("harfbuzz" ,harfbuzz)))
(inputs
- `(("pkg-config" ,pkg-config)
+ `(("gobject-introspection" ,gobject-introspection)
+ ("pkg-config" ,pkg-config)
("zlib" ,zlib)))
(synopsis "GNOME text and font handling library")
(description
@@ -231,6 +233,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)
@@ -359,16 +362,23 @@ application suites.")
("libxinerama" ,libxinerama)
("pango" ,pango)))
(inputs
- `(("libxml2" ,libxml2)
+ `(("gobject-introspection" ,gobject-introspection)
+ ("libxml2" ,libxml2)
("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
@@ -377,6 +387,29 @@ 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"))
+
+ (substitute* "gdk/Makefile.in"
+ (("--add-include-path=../gdk")
+ (string-append
+ "--add-include-path=../gdk"
+ " --add-include-path=" (gir-path inputs "gdk-pixbuf")
+ " --add-include-path=" (gir-path inputs "pango")))
+ (("--includedir=\\.")
+ (string-append "--includedir=."
+ " --includedir=" (gir-path inputs "gdk-pixbuf")
+ " --includedir=" (gir-path inputs "pango"))))
+
+ (substitute* "gtk/Makefile.in"
+ (("--add-include-path=../gdk")
+ (string-append "--add-include-path=../gdk"
+ " --add-include-path=" (gir-path inputs "atk")
+ " --add-include-path=" (gir-path inputs "gdk-pixbuf")
+ " --add-include-path=" (gir-path inputs "pango")))
+ (("--includedir=../gdk")
+ (string-append "--includedir=../gdk"
+ " --includedir=" (gir-path inputs "atk")
+ " --includedir=" (gir-path inputs "gdk-pixbuf")
+ " --includedir=" (gir-path inputs "pango"))))
(apply configure args)))
%standard-phases)))))
diff --git a/guix/build/gnome.scm b/guix/build/gnome.scm
new file mode 100644
index 0000000..a295fdf
--- /dev/null
+++ b/guix/build/gnome.scm
@@ -0,0 +1,31 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2013 Cyril Roelandt <address@hidden>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (guix build gnome)
+ #:export (gir-path))
+
+;;; Commentary:
+;;;
+;;; Tools commonly used when building GNOME programs.
+;;;
+;;; Code:
+
+(define (gir-path inputs pkg-name)
+ ""
+ (string-append (assoc-ref inputs pkg-name)
+ "/share/gir-1.0"))
--
1.8.4.rc3