summaryrefslogtreecommitdiffstats
path: root/meta/recipes-gnome
diff options
context:
space:
mode:
authorTudor Florea <tudor.florea@enea.com>2015-10-09 22:59:03 +0200
committerTudor Florea <tudor.florea@enea.com>2015-10-09 22:59:03 +0200
commit972dcfcdbfe75dcfeb777150c136576cf1a71e99 (patch)
tree97a61cd7e293d7ae9d56ef7ed0f81253365bb026 /meta/recipes-gnome
downloadpoky-972dcfcdbfe75dcfeb777150c136576cf1a71e99.tar.gz
initial commit for Enea Linux 5.0 arm
Signed-off-by: Tudor Florea <tudor.florea@enea.com>
Diffstat (limited to 'meta/recipes-gnome')
-rw-r--r--meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/extending-libinstall-dependencies.patch42
-rw-r--r--meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/fatal-loader.patch79
-rw-r--r--meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/hardcoded_libtool.patch33
-rw-r--r--meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/run-ptest3
-rw-r--r--meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.30.8.bb96
-rw-r--r--meta/recipes-gnome/gnome/gconf/remove_plus_from_invalid_characters_list.patch19
-rw-r--r--meta/recipes-gnome/gnome/gconf/unable-connect-dbus.patch95
-rw-r--r--meta/recipes-gnome/gnome/gconf_3.2.6.bb60
-rw-r--r--meta/recipes-gnome/gnome/gnome-common_3.12.0.bb22
-rw-r--r--meta/recipes-gnome/gnome/gnome-desktop.inc23
-rw-r--r--meta/recipes-gnome/gnome/gnome-desktop_2.32.1.bb7
-rw-r--r--meta/recipes-gnome/gnome/gnome-doc-utils.inc31
-rw-r--r--meta/recipes-gnome/gnome/gnome-doc-utils/sysrooted-pkg-config.patch35
-rw-r--r--meta/recipes-gnome/gnome/gnome-doc-utils/use-usr-bin-env-for-python-in-xml2po.patch30
-rw-r--r--meta/recipes-gnome/gnome/gnome-doc-utils/xsltproc_nonet.patch95
-rw-r--r--meta/recipes-gnome/gnome/gnome-doc-utils_0.20.10.bb13
-rw-r--r--meta/recipes-gnome/gnome/gnome-icon-theme/iconpath-option.patch49
-rw-r--r--meta/recipes-gnome/gnome/gnome-icon-theme_2.31.0.bb24
-rw-r--r--meta/recipes-gnome/gnome/gnome-mime-data/pkgconfig.patch14
-rw-r--r--meta/recipes-gnome/gnome/gnome-mime-data_2.18.0.bb18
-rw-r--r--meta/recipes-gnome/gnome/gsettings-desktop-schemas_3.10.1.bb16
-rw-r--r--meta/recipes-gnome/gnome/libart-lgpl/Makefile.am.patch17
-rw-r--r--meta/recipes-gnome/gnome/libart-lgpl/aarch64/art_config.h10
-rw-r--r--meta/recipes-gnome/gnome/libart-lgpl/arm/art_config.h10
-rw-r--r--meta/recipes-gnome/gnome/libart-lgpl/i386/art_config.h10
-rw-r--r--meta/recipes-gnome/gnome/libart-lgpl/i586/art_config.h10
-rw-r--r--meta/recipes-gnome/gnome/libart-lgpl/i686/art_config.h10
-rw-r--r--meta/recipes-gnome/gnome/libart-lgpl/mips/art_config.h10
-rw-r--r--meta/recipes-gnome/gnome/libart-lgpl/mips64/art_config.h10
-rw-r--r--meta/recipes-gnome/gnome/libart-lgpl/mips64el/art_config.h10
-rw-r--r--meta/recipes-gnome/gnome/libart-lgpl/mipsel/art_config.h10
-rw-r--r--meta/recipes-gnome/gnome/libart-lgpl/powerpc/art_config.h10
-rw-r--r--meta/recipes-gnome/gnome/libart-lgpl/powerpc64/art_config.h10
-rw-r--r--meta/recipes-gnome/gnome/libart-lgpl/x86_64/art_config.h10
-rw-r--r--meta/recipes-gnome/gnome/libart-lgpl_2.3.21.bb28
-rw-r--r--meta/recipes-gnome/gtk+/gtk+-2.24.24/0001-GtkButton-do-not-prelight-in-touchscreen-mode.patch48
-rw-r--r--meta/recipes-gnome/gtk+/gtk+-2.24.24/0001-bgo-584832-Duplicate-the-exec-string-returned-by-gtk.patch30
-rw-r--r--meta/recipes-gnome/gtk+/gtk+-2.24.24/cellrenderer-cairo.patch31
-rw-r--r--meta/recipes-gnome/gtk+/gtk+-2.24.24/configure-nm.patch21
-rw-r--r--meta/recipes-gnome/gtk+/gtk+-2.24.24/configurefix.patch87
-rw-r--r--meta/recipes-gnome/gtk+/gtk+-2.24.24/doc-fixes.patch22
-rw-r--r--meta/recipes-gnome/gtk+/gtk+-2.24.24/entry-cairo.patch105
-rw-r--r--meta/recipes-gnome/gtk+/gtk+-2.24.24/hardcoded_libtool.patch1814
-rw-r--r--meta/recipes-gnome/gtk+/gtk+-2.24.24/run-iconcache.patch24
-rw-r--r--meta/recipes-gnome/gtk+/gtk+-2.24.24/toggle-font.diff102
-rw-r--r--meta/recipes-gnome/gtk+/gtk+-2.24.24/xsettings.patch20
-rw-r--r--meta/recipes-gnome/gtk+/gtk+.inc94
-rw-r--r--meta/recipes-gnome/gtk+/gtk+3.inc110
-rw-r--r--meta/recipes-gnome/gtk+/gtk+3/fix-flags-for-native.patch33
-rw-r--r--meta/recipes-gnome/gtk+/gtk+3/hardcoded_libtool.patch35
-rw-r--r--meta/recipes-gnome/gtk+/gtk+3_3.12.2.bb18
-rw-r--r--meta/recipes-gnome/gtk+/gtk+_2.24.24.bb50
-rw-r--r--meta/recipes-gnome/gtk+/gtk-update-icon-cache-native_3.4.4.bb47
-rw-r--r--meta/recipes-gnome/gtk-doc-stub/gtk-doc-stub_git.bb20
-rw-r--r--meta/recipes-gnome/gtk-engines/gtk-engines-2.20.2/glib-2.32.patch23
-rw-r--r--meta/recipes-gnome/gtk-engines/gtk-engines-2.20.2/substitute-tests.patch37
-rw-r--r--meta/recipes-gnome/gtk-engines/gtk-engines_2.20.2.bb46
-rw-r--r--meta/recipes-gnome/gtk-theme-torturer/gtk-theme-torturer_git.bb21
-rw-r--r--meta/recipes-gnome/hicolor-icon-theme/files/index.theme1731
-rw-r--r--meta/recipes-gnome/hicolor-icon-theme/hicolor-icon-theme_0.13.bb23
-rw-r--r--meta/recipes-gnome/json-glib/json-glib_1.0.0.bb20
-rw-r--r--meta/recipes-gnome/libffi/libffi/fix-libffi.la-location.patch18
-rw-r--r--meta/recipes-gnome/libffi/libffi_3.1.bb24
-rw-r--r--meta/recipes-gnome/libglade/libglade-2.6.4/glade-cruft.patch102
-rw-r--r--meta/recipes-gnome/libglade/libglade-2.6.4/no-xml2.patch501
-rw-r--r--meta/recipes-gnome/libglade/libglade-2.6.4/python_environment.patch14
-rw-r--r--meta/recipes-gnome/libglade/libglade_2.6.4.bb29
-rw-r--r--meta/recipes-gnome/libnotify/libnotify_0.6.0.bb17
-rw-r--r--meta/recipes-gnome/librsvg/librsvg/gtk-option.patch62
-rw-r--r--meta/recipes-gnome/librsvg/librsvg/vapigen.m496
-rw-r--r--meta/recipes-gnome/librsvg/librsvg_2.40.2.bb59
-rw-r--r--meta/recipes-gnome/libunique/libunique/build.patch421
-rw-r--r--meta/recipes-gnome/libunique/libunique/fix_for_compile_with_gcc-4.6.0.patch36
-rw-r--r--meta/recipes-gnome/libunique/libunique/noconst.patch130
-rw-r--r--meta/recipes-gnome/libunique/libunique_1.1.6.bb25
75 files changed, 7115 insertions, 0 deletions
diff --git a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/extending-libinstall-dependencies.patch b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/extending-libinstall-dependencies.patch
new file mode 100644
index 0000000000..edbdced43a
--- /dev/null
+++ b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/extending-libinstall-dependencies.patch
@@ -0,0 +1,42 @@
1Upstream-Status: Pending
2
3This patch fixes parallel install issue that lib libpixbufloader-png.la
4depends on libgdk_pixbuf-2.0.la which will be regenerated during insta-
5llation, if libgdk_pixbuf-2.0.la is regenerating and at the same time
6libpixbufloader-png.la links it, the error will happen.
7
8Error message is:
9* usr/bin/ld: cannot find -lgdk_pixbuf-2.0
10* collect2: ld returned 1 exit status
11
12Make an explicit dependency to the libs install targets would fix this
13issue.
14
15Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com>
16---
17 gdk-pixbuf/Makefile.am | 1 +
18 libdeps.mk | 3 +++
19 2 files changed, 4 insertions(+), 0 deletions(-)
20 create mode 100644 libdeps.mk
21
22diff --git a/gdk-pixbuf/Makefile.am b/gdk-pixbuf/Makefile.am
23index 95a93a8..db44cae 100644
24--- a/gdk-pixbuf/Makefile.am
25+++ b/gdk-pixbuf/Makefile.am
26@@ -783,3 +783,4 @@ loaders.cache:
27 endif
28
29 -include $(top_srcdir)/git.mk
30+-include $(top_srcdir)/libdeps.mk
31diff --git a/libdeps.mk b/libdeps.mk
32new file mode 100644
33index 0000000..d7a10a8
34--- /dev/null
35+++ b/libdeps.mk
36@@ -0,0 +1,3 @@
37+# Extending dependencies of install-loaderLTLIBRARIES:
38+# The $(lib-LTLIBRARIES) is needed by relinking $(loader_LTLIBRARIES)
39+install-loaderLTLIBRARIES: install-libLTLIBRARIES
40--
411.7.6.1
42
diff --git a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/fatal-loader.patch b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/fatal-loader.patch
new file mode 100644
index 0000000000..70146c6181
--- /dev/null
+++ b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/fatal-loader.patch
@@ -0,0 +1,79 @@
1If an environment variable is specified set the return value from main() to
2non-zero if the loader had errors (missing libraries, generally).
3
4Upstream-Status: Pending
5Signed-off-by: Ross Burton <ross.burton@intel.com>
6
7diff --git a/gdk-pixbuf/queryloaders.c b/gdk-pixbuf/queryloaders.c
8index a9ca015..395674a 100644
9--- a/gdk-pixbuf/queryloaders.c
10+++ b/gdk-pixbuf/queryloaders.c
11@@ -146,7 +146,7 @@ write_loader_info (GString *contents, const char *path, GdkPixbufFormat *info)
12 g_string_append_c (contents, '\n');
13 }
14
15-static void
16+static gboolean
17 query_module (GString *contents, const char *dir, const char *file)
18 {
19 char *path;
20@@ -155,6 +155,7 @@ query_module (GString *contents, const char *dir, const char *file)
21 void (*fill_vtable) (GdkPixbufModule *module);
22 gpointer fill_info_ptr;
23 gpointer fill_vtable_ptr;
24+ gboolean ret = TRUE;
25
26 if (g_path_is_absolute (file))
27 path = g_strdup (file);
28@@ -204,10 +205,13 @@ query_module (GString *contents, const char *dir, const char *file)
29 g_module_error());
30 else
31 g_fprintf (stderr, "Cannot load loader %s\n", path);
32+ ret = FALSE;
33 }
34 if (module)
35 g_module_close (module);
36 g_free (path);
37+
38+ return ret;
39 }
40
41 #ifdef G_OS_WIN32
42@@ -257,6 +261,7 @@ int main (int argc, char **argv)
43 GString *contents;
44 gchar *cache_file = NULL;
45 gint first_file = 1;
46+ gboolean success = TRUE;
47
48 #ifdef G_OS_WIN32
49 gchar *libdir;
50@@ -360,7 +365,8 @@ int main (int argc, char **argv)
51 gint len = strlen (dent);
52 if (len > SOEXT_LEN &&
53 strcmp (dent + len - SOEXT_LEN, SOEXT) == 0) {
54- query_module (contents, path, dent);
55+ if (!query_module (contents, path, dent))
56+ success = FALSE;
57 }
58 }
59 g_dir_close (dir);
60@@ -378,7 +384,8 @@ int main (int argc, char **argv)
61 infilename = g_locale_to_utf8 (infilename,
62 -1, NULL, NULL, NULL);
63 #endif
64- query_module (contents, cwd, infilename);
65+ if (!query_module (contents, cwd, infilename))
66+ success = FALSE;
67 }
68 g_free (cwd);
69 }
70@@ -394,5 +401,8 @@ int main (int argc, char **argv)
71 else
72 g_print ("%s\n", contents->str);
73
74- return 0;
75+ if (g_getenv ("GDK_PIXBUF_FATAL_LOADER"))
76+ return success ? 0 : 1;
77+ else
78+ return 0;
79 }
diff --git a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/hardcoded_libtool.patch b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/hardcoded_libtool.patch
new file mode 100644
index 0000000000..ecca62a712
--- /dev/null
+++ b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/hardcoded_libtool.patch
@@ -0,0 +1,33 @@
1Upstream-Status: Inappropriate [configuration]
2
3Index: gdk-pixbuf-2.22.1/configure.ac
4===================================================================
5--- gdk-pixbuf-2.22.1.orig/configure.ac 2010-11-26 09:06:34.000000000 +0800
6+++ gdk-pixbuf-2.22.1/configure.ac 2010-11-26 09:07:33.000000000 +0800
7@@ -287,7 +287,7 @@
8 case $enable_explicit_deps in
9 auto)
10 export SED
11- deplibs_check_method=`(./libtool --config; echo 'eval echo \"$deplibs_check_method\"') | sh`
12+ deplibs_check_method=`(./$host_alias-libtool --config; echo 'eval echo \"$deplibs_check_method\"') | sh`
13 if test "x$deplibs_check_method" '!=' xpass_all || test "x$enable_static" = xyes ; then
14 enable_explicit_deps=yes
15 else
16@@ -484,7 +484,7 @@
17 dnl Now we check to see if our libtool supports shared lib deps
18 dnl (in a rather ugly way even)
19 if $dynworks; then
20- pixbuf_libtool_config="${CONFIG_SHELL-/bin/sh} ./libtool --config"
21+ pixbuf_libtool_config="${CONFIG_SHELL-/bin/sh} ./$host_alias-libtool --config"
22 pixbuf_deplibs_check=`$pixbuf_libtool_config | \
23 grep '^[[a-z_]]*check[[a-z_]]*_method=[['\''"]]' | \
24 sed 's/.*[['\''"]]\(.*\)[['\''"]]$/\1/'`
25@@ -957,7 +957,7 @@
26 # We are using gmodule-no-export now, but I'm leaving the stripping
27 # code in place for now, since pango and atk still require gmodule.
28 export SED
29-export_dynamic=`(./libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh`
30+export_dynamic=`(./$host_alias-libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh`
31 if test -n "$export_dynamic"; then
32 GDK_PIXBUF_DEP_LIBS=`echo $GDK_PIXBUF_DEP_LIBS | sed -e "s/$export_dynamic//"`
33 fi
diff --git a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/run-ptest b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/run-ptest
new file mode 100644
index 0000000000..8f9072386e
--- /dev/null
+++ b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/run-ptest
@@ -0,0 +1,3 @@
1#! /bin/sh
2
3gnome-desktop-testing-runner gdk-pixbuf
diff --git a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.30.8.bb b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.30.8.bb
new file mode 100644
index 0000000000..a63d4546f6
--- /dev/null
+++ b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.30.8.bb
@@ -0,0 +1,96 @@
1SUMMARY = "Image loading library for GTK+"
2HOMEPAGE = "http://www.gtk.org/"
3BUGTRACKER = "https://bugzilla.gnome.org/"
4
5LICENSE = "LGPLv2"
6LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7 \
7 file://gdk-pixbuf/gdk-pixbuf.h;endline=26;md5=72b39da7cbdde2e665329fef618e1d6b"
8
9SECTION = "libs"
10
11DEPENDS = "glib-2.0"
12DEPENDS_append_linuxstdbase = " virtual/libx11"
13
14MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}"
15
16SRC_URI = "${GNOME_MIRROR}/${BPN}/${MAJ_VER}/${BPN}-${PV}.tar.xz \
17 file://hardcoded_libtool.patch \
18 file://extending-libinstall-dependencies.patch \
19 file://run-ptest \
20 file://fatal-loader.patch \
21 "
22
23SRC_URI[md5sum] = "4fed0d54432f1b69fc6e66e608bd5542"
24SRC_URI[sha256sum] = "4853830616113db4435837992c0aebd94cbb993c44dc55063cee7f72a7bef8be"
25
26inherit autotools pkgconfig gettext pixbufcache ptest-gnome
27
28LIBV = "2.10.0"
29
30GDK_PIXBUF_LOADERS ?= "png jpeg"
31
32PACKAGECONFIG ??= "${GDK_PIXBUF_LOADERS}"
33PACKAGECONFIG_linuxstdbase = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)} ${GDK_PIXBUF_LOADERS}"
34PACKAGECONFIG_class-native = "${GDK_PIXBUF_LOADERS}"
35
36PACKAGECONFIG[png] = "--with-libpng,--without-libpng,libpng"
37PACKAGECONFIG[jpeg] = "--with-libjpeg,--without-libjpeg,jpeg"
38PACKAGECONFIG[tiff] = "--with-libtiff,--without-libtiff,tiff"
39PACKAGECONFIG[jpeg2000] = "--with-libjasper,--without-libjasper,jasper"
40
41# Use GIO to sniff image format instead of trying all loaders
42PACKAGECONFIG[gio-sniff] = "--enable-gio-sniffing,--disable-gio-sniffing,,shared-mime-info"
43PACKAGECONFIG[x11] = "--with-x11,--without-x11,virtual/libx11"
44
45EXTRA_OECONF = "--disable-introspection"
46
47PACKAGES =+ "${PN}-xlib"
48
49FILES_${PN}-xlib = "${libdir}/*pixbuf_xlib*${SOLIBS}"
50ALLOW_EMPTY_${PN}-xlib = "1"
51
52FILES_${PN} = "${bindir}/gdk-pixbuf-query-loaders \
53 ${bindir}/gdk-pixbuf-pixdata \
54 ${libdir}/lib*.so.*"
55
56FILES_${PN}-dev += " \
57 ${bindir}/gdk-pixbuf-csource \
58 ${includedir}/* \
59 ${libdir}/gdk-pixbuf-2.0/${LIBV}/loaders/*.la \
60"
61
62FILES_${PN}-dbg += " \
63 ${libdir}/.debug/* \
64 ${libdir}/gdk-pixbuf-2.0/${LIBV}/loaders/.debug/* \
65"
66
67PACKAGES_DYNAMIC += "^gdk-pixbuf-loader-.*"
68PACKAGES_DYNAMIC_class-native = ""
69
70python populate_packages_prepend () {
71 postinst_pixbufloader = d.getVar("postinst_pixbufloader", True)
72
73 loaders_root = d.expand('${libdir}/gdk-pixbuf-2.0/${LIBV}/loaders')
74
75 packages = ' '.join(do_split_packages(d, loaders_root, '^libpixbufloader-(.*)\.so$', 'gdk-pixbuf-loader-%s', 'GDK pixbuf loader for %s'))
76 d.setVar('PIXBUF_PACKAGES', packages)
77
78 # The test suite exercises all the loaders, so ensure they are all
79 # dependencies of the ptest package.
80 d.appendVar("RDEPENDS_gdk-pixbuf-ptest", " " + packages)
81}
82
83do_install_append_class-native() {
84 find ${D}${libdir} -name "libpixbufloader-*.la" -exec rm \{\} \;
85
86 create_wrapper ${D}/${bindir}/gdk-pixbuf-csource \
87 GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders.cache
88
89 create_wrapper ${D}/${bindir}/gdk-pixbuf-pixdata \
90 GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders.cache
91
92 create_wrapper ${D}/${bindir}/gdk-pixbuf-query-loaders \
93 GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders.cache \
94 GDK_PIXBUF_MODULEDIR=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders
95}
96BBCLASSEXTEND = "native"
diff --git a/meta/recipes-gnome/gnome/gconf/remove_plus_from_invalid_characters_list.patch b/meta/recipes-gnome/gnome/gconf/remove_plus_from_invalid_characters_list.patch
new file mode 100644
index 0000000000..59a7ca7802
--- /dev/null
+++ b/meta/recipes-gnome/gnome/gconf/remove_plus_from_invalid_characters_list.patch
@@ -0,0 +1,19 @@
1Upstream-Status: Pending
2
3Remove '+' from invalid characters list
4
5Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
6
7Index: GConf-3.2.5/gconf/gconf-backend.c
8===================================================================
9--- GConf-3.2.5.orig/gconf/gconf-backend.c
10+++ GConf-3.2.5/gconf/gconf-backend.c
11@@ -37,7 +37,7 @@ static const char invalid_chars[] =
12 /* Space is common in user names (and thus home directories) on Windows */
13 " "
14 #endif
15- "\t\r\n\"$&<>,+=#!()'|{}[]?~`;%\\";
16+ "\t\r\n\"$&<>,=#!()'|{}[]?~`;%\\";
17
18 static gboolean
19 gconf_address_valid (const char *address,
diff --git a/meta/recipes-gnome/gnome/gconf/unable-connect-dbus.patch b/meta/recipes-gnome/gnome/gconf/unable-connect-dbus.patch
new file mode 100644
index 0000000000..f758a4bcc5
--- /dev/null
+++ b/meta/recipes-gnome/gnome/gconf/unable-connect-dbus.patch
@@ -0,0 +1,95 @@
1Fixes errors such as this in the rootfs generation:
2
3(gconftool-2.real:10095): GConf-WARNING **: Client failed to connect to the D-BUS daemon:
4Using X11 for dbus-daemon autolaunch was disabled at compile time, set your DBUS_SESSION_BUS_ADDRESS instead
5
6Upstream-Status: Backport
7Signed-off-by: Ross Burton <ross.burton@intel.com>
8
9From b0895e1998ebc83ab030ec0f17c0685439f5b404 Mon Sep 17 00:00:00 2001
10From: Ray Strode <rstrode@redhat.com>
11Date: Mon, 15 Apr 2013 09:57:34 -0400
12Subject: [PATCH] dbus: Don't spew to console when unable to connect to dbus
13 daemon
14
15Instead pass the error up for the caller to decide what to do.
16
17This prevent untrappable warning messages from showing up at the
18console if gconftool --makefile-install-rule is called.
19---
20 gconf/gconf-dbus.c | 24 ++++++++++++------------
21 1 file changed, 12 insertions(+), 12 deletions(-)
22
23diff --git a/gconf/gconf-dbus.c b/gconf/gconf-dbus.c
24index 5610fcf..048e3ea 100644
25--- a/gconf/gconf-dbus.c
26+++ b/gconf/gconf-dbus.c
27@@ -105,7 +105,7 @@ static GHashTable *engines_by_db = NULL;
28 static GHashTable *engines_by_address = NULL;
29 static gboolean dbus_disconnected = FALSE;
30
31-static gboolean ensure_dbus_connection (void);
32+static gboolean ensure_dbus_connection (GError **error);
33 static gboolean ensure_service (gboolean start_if_not_found,
34 GError **err);
35 static gboolean ensure_database (GConfEngine *conf,
36@@ -383,7 +383,7 @@ gconf_engine_detach (GConfEngine *conf)
37 }
38
39 static gboolean
40-ensure_dbus_connection (void)
41+ensure_dbus_connection (GError **err)
42 {
43 DBusError error;
44
45@@ -392,7 +392,9 @@ ensure_dbus_connection (void)
46
47 if (dbus_disconnected)
48 {
49- g_warning ("The connection to DBus was broken. Can't reinitialize it.");
50+ g_set_error (err, GCONF_ERROR,
51+ GCONF_ERROR_NO_SERVER,
52+ "The connection to DBus was broken. Can't reinitialize it.");
53 return FALSE;
54 }
55
56@@ -402,7 +404,10 @@ ensure_dbus_connection (void)
57
58 if (!global_conn)
59 {
60- g_warning ("Client failed to connect to the D-BUS daemon:\n%s", error.message);
61+ g_set_error (err, GCONF_ERROR,
62+ GCONF_ERROR_NO_SERVER,
63+ "Client failed to connect to the D-BUS daemon:\n%s",
64+ error.message);
65
66 dbus_error_free (&error);
67 return FALSE;
68@@ -431,13 +436,8 @@ ensure_service (gboolean start_if_not_found,
69
70 if (global_conn == NULL)
71 {
72- if (!ensure_dbus_connection ())
73- {
74- g_set_error (err, GCONF_ERROR,
75- GCONF_ERROR_NO_SERVER,
76- _("No D-BUS daemon running\n"));
77- return FALSE;
78- }
79+ if (!ensure_dbus_connection (err))
80+ return FALSE;
81
82 g_assert (global_conn != NULL);
83 }
84@@ -2512,7 +2512,7 @@ gconf_ping_daemon (void)
85 {
86 if (global_conn == NULL)
87 {
88- if (!ensure_dbus_connection ())
89+ if (!ensure_dbus_connection (NULL))
90 {
91 return FALSE;
92 }
93--
941.7.10.4
95
diff --git a/meta/recipes-gnome/gnome/gconf_3.2.6.bb b/meta/recipes-gnome/gnome/gconf_3.2.6.bb
new file mode 100644
index 0000000000..17fdafa969
--- /dev/null
+++ b/meta/recipes-gnome/gnome/gconf_3.2.6.bb
@@ -0,0 +1,60 @@
1SUMMARY = "GNOME configuration system"
2SECTION = "x11/gnome"
3LICENSE = "LGPLv2+"
4LIC_FILES_CHKSUM = "file://COPYING;md5=55ca817ccb7d5b5b66355690e9abc605"
5
6DEPENDS = "glib-2.0 dbus dbus-glib libxml2 intltool-native gobject-introspection-stub"
7DEPENDS_class-native = "glib-2.0-native dbus-native dbus-glib-native libxml2-native intltool-native gnome-common-native gobject-introspection-stub-native"
8
9
10inherit gnomebase gtk-doc gettext
11
12SRC_URI = "${GNOME_MIRROR}/GConf/${@gnome_verdir("${PV}")}/GConf-${PV}.tar.xz;name=archive \
13 file://remove_plus_from_invalid_characters_list.patch \
14 file://unable-connect-dbus.patch \
15"
16
17SRC_URI[archive.md5sum] = "2b16996d0e4b112856ee5c59130e822c"
18SRC_URI[archive.sha256sum] = "1912b91803ab09a5eed34d364bf09fe3a2a9c96751fde03a4e0cfa51a04d784c"
19
20S = "${WORKDIR}/GConf-${PV}"
21
22EXTRA_OECONF = "--enable-shared --disable-static --enable-debug=yes \
23 --disable-introspection --disable-orbit --with-openldap=no --disable-gtk"
24
25# Disable PolicyKit by default
26PACKAGECONFIG ??= ""
27# We really don't want PolicyKit for native or uclibc
28PACKAGECONFIG_class-native = ""
29PACKAGECONFIG_libc-uclibc = ""
30
31PACKAGECONFIG[policykit] = "--enable-defaults-service,--disable-defaults-service,polkit"
32
33do_install_append() {
34 # this directory need to be created to avoid an Error 256 at gdm launch
35 install -d ${D}${sysconfdir}/gconf/gconf.xml.system
36
37 # this stuff is unusable
38 rm -f ${D}${libdir}/GConf/*/*.*a
39 rm -f ${D}${libdir}/gio/*/*.*a
40}
41
42do_install_append_class-native() {
43 create_wrapper ${D}/${bindir}/gconftool-2 \
44 GCONF_BACKEND_DIR=${STAGING_LIBDIR_NATIVE}/GConf/2
45}
46
47# disable dbus-x11 when x11 isn't in DISTRO_FEATURES
48RDEPENDS_${PN} += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'dbus-x11', '', d)}"
49RDEPENDS_${PN}_class-native = ""
50
51FILES_${PN} += "${libdir}/GConf/* \
52 ${libdir}/gio/*/*.so \
53 ${datadir}/polkit* \
54 ${datadir}/dbus-1/services/*.service \
55 ${datadir}/dbus-1/system-services/*.service \
56 "
57FILES_${PN}-dbg += "${libdir}/*/*/.debug"
58FILES_${PN}-dev += "${datadir}/sgml/gconf/gconf-1.0.dtd"
59
60BBCLASSEXTEND = "native"
diff --git a/meta/recipes-gnome/gnome/gnome-common_3.12.0.bb b/meta/recipes-gnome/gnome/gnome-common_3.12.0.bb
new file mode 100644
index 0000000000..d3b6683090
--- /dev/null
+++ b/meta/recipes-gnome/gnome/gnome-common_3.12.0.bb
@@ -0,0 +1,22 @@
1SUMMARY = "Common macros for building GNOME applications"
2HOMEPAGE = "http://www.gnome.org/"
3BUGTRACKER = "https://bugzilla.gnome.org/"
4
5LICENSE = "GPLv2+"
6LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
7
8SECTION = "x11/gnome"
9inherit gnomebase allarch
10
11GNOME_COMPRESS_TYPE = "xz"
12
13SRC_URI[archive.md5sum] = "da903a1c89b0a24e062227fa97d42fe7"
14SRC_URI[archive.sha256sum] = "18712bc2df6b2dd88a11b9f7f874096d1c0c6e7ebc9cfc0686ef963bd590e1d8"
15
16EXTRA_AUTORECONF = ""
17DEPENDS = ""
18
19FILES_${PN} += "${datadir}/aclocal"
20FILES_${PN}-dev = ""
21
22BBCLASSEXTEND = "native"
diff --git a/meta/recipes-gnome/gnome/gnome-desktop.inc b/meta/recipes-gnome/gnome/gnome-desktop.inc
new file mode 100644
index 0000000000..3853022710
--- /dev/null
+++ b/meta/recipes-gnome/gnome/gnome-desktop.inc
@@ -0,0 +1,23 @@
1SUMMARY = "GNOME library for reading .desktop files"
2SECTION = "x11/gnome"
3LICENSE = "GPLv2 & LGPLv2"
4DEPENDS = "gconf libxrandr virtual/libx11 gtk+ glib-2.0 gnome-doc-utils startup-notification"
5
6EXTRA_OECONF = "--disable-scrollkeeper --disable-desktop-docs"
7
8do_configure_prepend () {
9 cp ${STAGING_DATADIR_NATIVE}/gnome-common/data/omf.make ${S}
10}
11
12FILES_${PN} += "${datadir}/gnome-about ${datadir}/libgnome-desktop/pnp.ids"
13
14PR = "r6"
15
16inherit gnomebase
17
18do_install_append () {
19 sed -i -e's,${STAGING_BINDIR_NATIVE},${bindir},g' ${D}${bindir}/gnome-about
20 sed -i -e '1s,#!.*python,#! ${USRBINPATH}/env python,' ${D}${bindir}/gnome-about
21}
22
23
diff --git a/meta/recipes-gnome/gnome/gnome-desktop_2.32.1.bb b/meta/recipes-gnome/gnome/gnome-desktop_2.32.1.bb
new file mode 100644
index 0000000000..424eafeaf0
--- /dev/null
+++ b/meta/recipes-gnome/gnome/gnome-desktop_2.32.1.bb
@@ -0,0 +1,7 @@
1require gnome-desktop.inc
2
3LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
4 file://COPYING.LIB;md5=5f30f0716dfdd0d91eb439ebec522ec2"
5
6SRC_URI[archive.md5sum] = "5c80d628a240eb9d9ff78913b31f2f67"
7SRC_URI[archive.sha256sum] = "55cbecf67efe1fa1e57ac966520a7c46d799c8ba3c652a1219f60cafccb3739d"
diff --git a/meta/recipes-gnome/gnome/gnome-doc-utils.inc b/meta/recipes-gnome/gnome/gnome-doc-utils.inc
new file mode 100644
index 0000000000..e148ce3350
--- /dev/null
+++ b/meta/recipes-gnome/gnome/gnome-doc-utils.inc
@@ -0,0 +1,31 @@
1SUMMARY = "A collection of documentation utilities for the Gnome project"
2DESCRIPTION = "The GNOME Documentation Build Utilities (gnome-doc- \
3utils) were created to make it easier for application developers to \
4include and create documentation in their releases. They include the \
5xml2po tool which makes it easier to translate and keep up to date \
6translations of documentation."
7LICENSE = "GPLv2 & LGPLv2.1"
8DEPENDS = "libxml2 libxslt libxslt-native gnome-doc-utils-native glib-2.0"
9DEPENDS_class-native = "libxml2-native libxslt-native intltool-native glib-2.0-native"
10
11inherit gnomebase gettext python-dir pythonnative autotools-brokensep
12
13EXTRA_OECONF += "--disable-scrollkeeper"
14
15do_install_append() {
16 mkdir -p ${D}${datadir}/xml/gnome/xslt/
17 cp -pPr ${S}/xslt/* ${D}${datadir}/xml/gnome/xslt/
18
19 chown -R root:root ${D}
20}
21
22do_install_append_class-native () {
23 sed -i -e 's|^#!.*/usr/bin/env python|#! /usr/bin/env nativepython|' ${D}${bindir}/xml2po
24}
25
26FILES_${PN} += "${datadir}/xml* ${PYTHON_SITEPACKAGES_DIR}/*"
27
28RDEPENDS_${PN} = "bash"
29RDEPENDS_${PN}_class-native = ""
30
31BBCLASSEXTEND = "native"
diff --git a/meta/recipes-gnome/gnome/gnome-doc-utils/sysrooted-pkg-config.patch b/meta/recipes-gnome/gnome/gnome-doc-utils/sysrooted-pkg-config.patch
new file mode 100644
index 0000000000..416d698641
--- /dev/null
+++ b/meta/recipes-gnome/gnome/gnome-doc-utils/sysrooted-pkg-config.patch
@@ -0,0 +1,35 @@
1In cross environment we have to prepend the sysroot to the path found by
2pkgconfig since the path returned from pkgconfig does not have sysroot prefixed
3it ends up using the files from host system. Now usually people have gnome installed
4so the build succeeds but if you dont have gnome installed on build host then
5it wont find the files on host system and packages using gnome-doc-utils wont
6compile.
7
8This should work ok with non sysrooted builds too since in those cases PKG_CONFIG_SYSROOT_DIR
9will be empty
10
11Upstream-Status: Pending
12Signed-off-by: Khem Raj <raj.khem@gmail.com>
13Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
14
15Index: gnome-doc-utils-0.20.10/tools/gnome-doc-utils.make
16===================================================================
17--- gnome-doc-utils-0.20.10.orig/tools/gnome-doc-utils.make
18+++ gnome-doc-utils-0.20.10/tools/gnome-doc-utils.make
19@@ -133,11 +133,11 @@ _DOC_ABS_SRCDIR = @abs_srcdir@
20 _xml2po ?= `which xml2po`
21 _xml2po_mode = $(if $(DOC_ID),mallard,docbook)
22
23-_db2html ?= `$(PKG_CONFIG) --variable db2html gnome-doc-utils`
24-_db2omf ?= `$(PKG_CONFIG) --variable db2omf gnome-doc-utils`
25-_chunks ?= `$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/chunks.xsl
26-_credits ?= `$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/credits.xsl
27-_ids ?= $(shell $(PKG_CONFIG) --variable xmldir gnome-doc-utils)/gnome/xslt/docbook/utils/ids.xsl
28+_db2html ?= ${PKG_CONFIG_SYSROOT_DIR}`$(PKG_CONFIG) --variable db2html gnome-doc-utils`
29+_db2omf ?= ${PKG_CONFIG_SYSROOT_DIR}`$(PKG_CONFIG) --variable db2omf gnome-doc-utils`
30+_chunks ?= ${PKG_CONFIG_SYSROOT_DIR}`$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/chunks.xsl
31+_credits ?= ${PKG_CONFIG_SYSROOT_DIR}`$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/credits.xsl
32+_ids ?= ${PKG_CONFIG_SYSROOT_DIR}$(shell $(PKG_CONFIG) --variable xmldir gnome-doc-utils)/gnome/xslt/docbook/utils/ids.xsl
33
34 if ENABLE_SK
35 _ENABLE_SK = true
diff --git a/meta/recipes-gnome/gnome/gnome-doc-utils/use-usr-bin-env-for-python-in-xml2po.patch b/meta/recipes-gnome/gnome/gnome-doc-utils/use-usr-bin-env-for-python-in-xml2po.patch
new file mode 100644
index 0000000000..0e196c0634
--- /dev/null
+++ b/meta/recipes-gnome/gnome/gnome-doc-utils/use-usr-bin-env-for-python-in-xml2po.patch
@@ -0,0 +1,30 @@
1We can't use #!/full/path/to/python -u as this can be longer than shebang
2allows for. In order to be appropraite for upstream more work would be
3needed to make sure that the main xml2po code doesn't rely on python
4being invoked with -u (force stdin/out/err to be used raw).
5
6Upstream-Status: Inappropriate [Would break behavior on Windows]
7Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
8
9Index: gnome-doc-utils-0.20.10/xml2po/xml2po/Makefile.am
10===================================================================
11--- gnome-doc-utils-0.20.10.orig/xml2po/xml2po/Makefile.am
12+++ gnome-doc-utils-0.20.10/xml2po/xml2po/Makefile.am
13@@ -7,7 +7,6 @@ CLEANFILES = xml2po
14
15 xml2po: xml2po.py.in
16 $(AM_V_GEN)sed -e "s/^VERSION =.*/VERSION = \"@VERSION@\"/" \
17- -e "s+^#!.*python.*+#!$(PYTHON)+" \
18 < $(srcdir)/xml2po.py.in > xml2po
19 $(AM_V_at)chmod +x xml2po
20
21Index: gnome-doc-utils-0.20.10/xml2po/xml2po/xml2po.py.in
22===================================================================
23--- gnome-doc-utils-0.20.10.orig/xml2po/xml2po/xml2po.py.in
24+++ gnome-doc-utils-0.20.10/xml2po/xml2po/xml2po.py.in
25@@ -1,4 +1,4 @@
26-#!/usr/bin/python -u
27+#!/usr/bin/env python
28 # -*- encoding: utf-8 -*-
29 # Copyright (c) 2004, 2005, 2006 Danilo Å egan <danilo@gnome.org>.
30 # Copyright (c) 2009 Claude Paroz <claude@2xlibre.net>.
diff --git a/meta/recipes-gnome/gnome/gnome-doc-utils/xsltproc_nonet.patch b/meta/recipes-gnome/gnome/gnome-doc-utils/xsltproc_nonet.patch
new file mode 100644
index 0000000000..9346494e95
--- /dev/null
+++ b/meta/recipes-gnome/gnome/gnome-doc-utils/xsltproc_nonet.patch
@@ -0,0 +1,95 @@
1This adds the -nonet option to xsltproc invocations, which fixes
2compile errors when building the gnome-doc-utils docs.
3
4Upstream-Status: Inappropriate [configuration]
5Signed-off-by: Scott Garman <scott.a.garman@intel.com>
6Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
7
8Index: gnome-doc-utils-0.20.10/doc/xslt/Makefile.am
9===================================================================
10--- gnome-doc-utils-0.20.10.orig/doc/xslt/Makefile.am
11+++ gnome-doc-utils-0.20.10/doc/xslt/Makefile.am
12@@ -21,14 +21,14 @@ all: $(xsldoc_docs) $(xsldoc_xmls)
13
14 $(xsldoc_docs): $(xsldoc_xsls) xsldoc.awk xsldoc-fill.xsl
15 $(AM_V_GEN)$(GDU_AWK) -f "$(srcdir)/xsldoc.awk" "$(filter %/$(basename $(notdir $@)).xsl,$(xsldoc_xsls))" \
16- | xsltproc -o "$@" \
17+ | xsltproc -nonet -o "$@" \
18 --stringparam basename "$(basename $(notdir $@))" \
19 --stringparam xsl_file "$(filter %/$(basename $(notdir $@)).xsl,$(xsldoc_xsls))" \
20 "$(srcdir)/xsldoc-fill.xsl" -
21
22 $(xsldoc_xmls): xsldoc-docbook.xsl
23 $(xsldoc_xmls): C/%.xml : C/%.xsldoc
24- $(AM_V_GEN)xsltproc -o "$@" \
25+ $(AM_V_GEN)xsltproc -nonet -o "$@" \
26 --stringparam basename "$(basename $(notdir $@))" \
27 --stringparam xsl_file "$(filter %/$(basename $(notdir $@)).xsl,$(xsldoc_xsls))" \
28 "$(srcdir)/xsldoc-docbook.xsl" "$<"
29@@ -62,7 +62,7 @@ gnome-doc-xslt-check-includes:
30 gnome-doc-xslt-check-xsldoc: $(xsldoc_docs)
31 @echo "Running xsldoc checks";
32 @(echo "<xsldoc>"; cat $(xsldoc_docs); echo "</xsldoc>") \
33- | xsltproc "$(srcdir)/xsldoc-check.xsl" - 1> /dev/null
34+ | xsltproc -nonet "$(srcdir)/xsldoc-check.xsl" - 1> /dev/null
35
36 .PHONY: clean-xsldoc
37 clean-local: clean_xsldoc
38Index: gnome-doc-utils-0.20.10/tools/gnome-doc-utils.make
39===================================================================
40--- gnome-doc-utils-0.20.10.orig/tools/gnome-doc-utils.make
41+++ gnome-doc-utils-0.20.10/tools/gnome-doc-utils.make
42@@ -37,7 +37,7 @@ $(DOC_H_FILE): $(DOC_H_DOCS);
43 list='$(DOC_H_DOCS)'; for doc in $$list; do \
44 xmlpath="`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`:$(srcdir)/`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`"; \
45 if ! test -f "$$doc"; then doc="$(srcdir)/$$doc"; fi; \
46- xsltproc --path "$$xmlpath" $(_credits) $$doc; \
47+ xsltproc -nonet --path "$$xmlpath" $(_credits) $$doc; \
48 done | sort | uniq \
49 | awk 'BEGIN{s=""}{n=split($$0,w,"<");if(s!=""&&s!=substr(w[1],1,length(w[1])-1)){print s};if(n>1){print $$0;s=""}else{s=$$0}};END{if(s!=""){print s}}' \
50 | sed -e 's/\\/\\\\/' -e 's/"/\\"/' -e 's/\(.*\)/\t"\1",/' >> $@.tmp
51@@ -50,7 +50,7 @@ $(DOC_H_FILE): $(DOC_H_DOCS);
52 docid=`echo "$$doc" | sed -e 's/.*\/\([^/]*\)\.xml/\1/' \
53 | sed -e 's/[^a-zA-Z_]/_/g' | tr 'a-z' 'A-Z'`; \
54 echo $$xmlpath; \
55- ids=`xsltproc --xinclude --path "$$xmlpath" $(_ids) $$doc`; \
56+ ids=`xsltproc -nonet --xinclude --path "$$xmlpath" $(_ids) $$doc`; \
57 for id in $$ids; do \
58 echo '#define HELP_'`echo $$docid`'_'`echo $$id \
59 | sed -e 's/[^a-zA-Z_]/_/g' | tr 'a-z' 'A-Z'`' "'$$id'"' >> $@.tmp; \
60@@ -197,7 +197,7 @@ $(_DOC_OMF_DB) : $(DOC_MODULE)-%.omf : %
61 echo "The file '$(_skcontentslist)' does not exist." >&2; \
62 echo "Please check your ScrollKeeper installation." >&2; \
63 exit 1; }
64- $(GDU_V_DB2OMF)xsltproc -o $@ $(call db2omf_args,$@,$<,'docbook') || { rm -f "$@"; exit 1; }
65+ $(GDU_V_DB2OMF)xsltproc -nonet -o $@ $(call db2omf_args,$@,$<,'docbook') || { rm -f "$@"; exit 1; }
66
67 ## @ _DOC_OMF_HTML
68 ## The OMF files for HTML output
69@@ -212,7 +212,7 @@ if ENABLE_SK
70 echo "Please check your ScrollKeeper installation." >&2; \
71 exit 1; }
72 endif
73- $(GDU_V_DB2OMF)xsltproc -o $@ $(call db2omf_args,$@,$<,'xhtml') || { rm -f "$@"; exit 1; }
74+ $(GDU_V_DB2OMF)xsltproc -nonet -o $@ $(call db2omf_args,$@,$<,'xhtml') || { rm -f "$@"; exit 1; }
75
76 ## @ _DOC_OMF_ALL
77 ## All OMF output files to be built
78@@ -267,7 +267,7 @@ _DOC_C_FIGURES = $(if $(DOC_FIGURES),
79 ## All HTML documentation in the C locale
80 # FIXME: probably have to shell escape to determine the file names
81 _DOC_C_HTML = $(foreach f, \
82- $(shell xsltproc --xinclude \
83+ $(shell xsltproc -nonet --xinclude \
84 --stringparam db.chunk.basename "$(DOC_MODULE)" \
85 $(_chunks) "C/$(DOC_MODULE).xml"), \
86 C/$(f).xhtml)
87@@ -393,7 +393,7 @@ _DOC_HTML_ALL = $(if $(filter html HTML,
88 _DOC_HTML_TOPS = $(foreach lc,C $(_DOC_REAL_LINGUAS),$(lc)/$(DOC_MODULE).xhtml)
89
90 $(_DOC_HTML_TOPS): $(_DOC_C_DOCS) $(_DOC_LC_DOCS)
91- $(GDU_V_DB2HTM)xsltproc -o $@ --xinclude --param db.chunk.chunk_top "false()" --stringparam db.chunk.basename "$(DOC_MODULE)" --stringparam db.chunk.extension ".xhtml" $(_db2html) $(patsubst %.xhtml,%.xml,$@)
92+ $(GDU_V_DB2HTM)xsltproc -nonet -o $@ --xinclude --param db.chunk.chunk_top "false()" --stringparam db.chunk.basename "$(DOC_MODULE)" --stringparam db.chunk.extension ".xhtml" $(_db2html) $(patsubst %.xhtml,%.xml,$@)
93
94
95 ################################################################################
diff --git a/meta/recipes-gnome/gnome/gnome-doc-utils_0.20.10.bb b/meta/recipes-gnome/gnome/gnome-doc-utils_0.20.10.bb
new file mode 100644
index 0000000000..321eb7f700
--- /dev/null
+++ b/meta/recipes-gnome/gnome/gnome-doc-utils_0.20.10.bb
@@ -0,0 +1,13 @@
1require gnome-doc-utils.inc
2LIC_FILES_CHKSUM = "file://COPYING.GPL;md5=eb723b61539feef013de476e68b5c50a \
3 file://COPYING.LGPL;md5=a6f89e2100d9b6cdffcea4f398e37343"
4
5GNOME_COMPRESS_TYPE = "xz"
6
7SRC_URI += "file://xsltproc_nonet.patch \
8 file://use-usr-bin-env-for-python-in-xml2po.patch \
9 file://sysrooted-pkg-config.patch \
10 "
11
12SRC_URI[archive.md5sum] = "3c64ad7bacd617b04999e4a168afaac5"
13SRC_URI[archive.sha256sum] = "cb0639ffa9550b6ddf3b62f3b1add92fb92ab4690d351f2353cffe668be8c4a6"
diff --git a/meta/recipes-gnome/gnome/gnome-icon-theme/iconpath-option.patch b/meta/recipes-gnome/gnome/gnome-icon-theme/iconpath-option.patch
new file mode 100644
index 0000000000..f840fca599
--- /dev/null
+++ b/meta/recipes-gnome/gnome/gnome-icon-theme/iconpath-option.patch
@@ -0,0 +1,49 @@
1Version of the patch of the same name from sato-icon-theme JL - 20/10/10
2"
3pkg-config will only search the target sysroot and we want the native script. This
4patch adds an option to allow the path to the tool to be specified.
5
6RP - 12/8/10"
7
8Upstream-Status: Pending
9
10Index: gnome-icon-theme-2.31.0/configure.ac
11===================================================================
12--- gnome-icon-theme-2.31.0.orig/configure.ac 2010-12-01 11:00:22.000000000 +0800
13+++ gnome-icon-theme-2.31.0/configure.ac 2010-12-01 11:02:16.000000000 +0800
14@@ -38,18 +38,24 @@
15 ICONMAP="true"
16 if test "x$enable_mapping" != "xno"; then
17 UTILS_REQUIRED=0.8.7
18+ PKG_PROG_PKG_CONFIG()
19
20- AC_MSG_CHECKING([icon-naming-utils >= $UTILS_REQUIRED])
21- PKG_CHECK_EXISTS(icon-naming-utils >= $UTILS_REQUIRED,
22- have_utils=yes, have_utils=no)
23- if test "x$have_utils" = "xyes"; then
24- UTILS_PATH="`$PKG_CONFIG --variable=program_path icon-naming-utils`"
25- ICONMAP="$UTILS_PATH/icon-name-mapping"
26- AC_MSG_RESULT([yes])
27- else
28- AC_MSG_RESULT([no])
29- AC_MSG_ERROR([icon-naming-utils >= $UTILS_REQUIRED is required to build
30- and install gnome-icon-theme])
31+ AC_ARG_WITH(iconmap,
32+ AC_HELP_STRING([--with-iconmap=<dir>], [The location of the icon-name-mapping script to use]),
33+ ICONMAP=$withval, ICONMAP="")
34+ if test "x$ICONMAP" = "x"; then
35+ AC_MSG_CHECKING([icon-naming-utils >= $UTILS_REQUIRED])
36+ PKG_CHECK_EXISTS(icon-naming-utils >= $UTILS_REQUIRED,
37+ have_utils=yes, have_utils=no)
38+ if test "x$have_utils" = "xyes"; then
39+ UTILS_PATH="`$PKG_CONFIG --variable=program_path icon-naming-utils`"
40+ ICONMAP="$UTILS_PATH/icon-name-mapping"
41+
42+ AC_MSG_RESULT([yes])
43+ else
44+ AC_MSG_RESULT([no])
45+ AC_MSG_ERROR([icon-naming-utils >= $UTILS_REQUIRED is required to build and install sato-icon-theme"])
46+ fi
47 fi
48 else
49 ICONMAP="false"
diff --git a/meta/recipes-gnome/gnome/gnome-icon-theme_2.31.0.bb b/meta/recipes-gnome/gnome/gnome-icon-theme_2.31.0.bb
new file mode 100644
index 0000000000..ee018bdc40
--- /dev/null
+++ b/meta/recipes-gnome/gnome/gnome-icon-theme_2.31.0.bb
@@ -0,0 +1,24 @@
1SUMMARY = "GNOME 2 default icon themes"
2HOMEPAGE = "http://www.gnome.org/"
3BUGTRACKER = "https://bugzilla.gnome.org/"
4SECTION = "x11/gnome"
5
6LICENSE = "LGPLv3+ | CC-BY-SA-3.0"
7LIC_FILES_CHKSUM = "file://COPYING;md5=e7e289d90fc8bdceed5e3f142f98229e"
8
9PR = "r5"
10
11DEPENDS = "icon-naming-utils-native glib-2.0 intltool-native libxml-simple-perl-native"
12
13inherit autotools perlnative gtk-icon-cache pkgconfig
14
15SRC_URI = "${GNOME_MIRROR}/${BPN}/2.31/${BPN}-${PV}.tar.bz2 \
16 file://iconpath-option.patch"
17
18SRC_URI[md5sum] = "8e727703343d4c18c73c79dd2009f8ed"
19SRC_URI[sha256sum] = "ea7e05b77ead159379392b3b275ca0c9cbacd7d936014e447cc7c5e27a767982"
20
21EXTRA_OECONF = "--with-iconmap=${@d.getVar('STAGING_LIBEXECDIR_NATIVE', True).replace('gnome-icon-theme', 'icon-naming-utils')}/icon-name-mapping"
22
23FILES_${PN} += "${datadir}/*"
24RRECOMMENDS_${PN} += "librsvg-gtk"
diff --git a/meta/recipes-gnome/gnome/gnome-mime-data/pkgconfig.patch b/meta/recipes-gnome/gnome/gnome-mime-data/pkgconfig.patch
new file mode 100644
index 0000000000..09034255d8
--- /dev/null
+++ b/meta/recipes-gnome/gnome/gnome-mime-data/pkgconfig.patch
@@ -0,0 +1,14 @@
1Upstream-Status: Inappropriate [configuration]
2
3Index: gnome-mime-data-2.18.0/Makefile.am
4===================================================================
5--- gnome-mime-data-2.18.0.orig/Makefile.am 2009-06-11 17:27:48.000000000 +0100
6+++ gnome-mime-data-2.18.0/Makefile.am 2009-06-11 17:27:59.000000000 +0100
7@@ -1,6 +1,6 @@
8 SUBDIRS = man po
9
10-pkgconfigdir = $(datadir)/pkgconfig
11+pkgconfigdir = $(libdir)/pkgconfig
12 pkgconfig_DATA = gnome-mime-data-2.0.pc
13
14 NULL=
diff --git a/meta/recipes-gnome/gnome/gnome-mime-data_2.18.0.bb b/meta/recipes-gnome/gnome/gnome-mime-data_2.18.0.bb
new file mode 100644
index 0000000000..65b79f0dc2
--- /dev/null
+++ b/meta/recipes-gnome/gnome/gnome-mime-data_2.18.0.bb
@@ -0,0 +1,18 @@
1SUMMARY = "Base MIME and Application database for GNOME"
2HOMEPAGE = "http://www.gnome.org/"
3BUGTRACKER = "https://bugzilla.gnome.org/"
4
5LICENSE = "GPLv2 & GPLv2+"
6LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \
7 file://check-mime.pl;endline=26;md5=a95b63c92c33d4ca1af61a315888f450"
8
9inherit gnomebase mime
10PR = "r4"
11
12SRC_URI += "file://pkgconfig.patch"
13
14SRC_URI[archive.md5sum] = "541858188f80090d12a33b5a7c34d42c"
15SRC_URI[archive.sha256sum] = "37196b5b37085bbcd45c338c36e26898fe35dd5975295f69f48028b1e8436fd7"
16
17DEPENDS += "shared-mime-info intltool-native"
18RDEPENDS_${PN} = "shared-mime-info"
diff --git a/meta/recipes-gnome/gnome/gsettings-desktop-schemas_3.10.1.bb b/meta/recipes-gnome/gnome/gsettings-desktop-schemas_3.10.1.bb
new file mode 100644
index 0000000000..a0123d9005
--- /dev/null
+++ b/meta/recipes-gnome/gnome/gsettings-desktop-schemas_3.10.1.bb
@@ -0,0 +1,16 @@
1SUMMARY = "GNOME desktop-wide GSettings schemas"
2HOMEPAGE = "http://live.gnome.org/gsettings-desktop-schemas"
3BUGTRACKER = "https://bugzilla.gnome.org/"
4
5LICENSE = "LGPLv2.1"
6LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
7PR = "r1"
8
9DEPENDS = "glib-2.0 intltool-native gobject-introspection-stub-native"
10
11inherit gnomebase gsettings gettext
12
13GNOME_COMPRESS_TYPE = "xz"
14
15SRC_URI[archive.md5sum] = "f9ffca591a984f19a1dd9caeb96b5f23"
16SRC_URI[archive.sha256sum] = "452378c4960a145747ec69f8c6a874e5b7715454df3e2452d1ff1a0a82e76811"
diff --git a/meta/recipes-gnome/gnome/libart-lgpl/Makefile.am.patch b/meta/recipes-gnome/gnome/libart-lgpl/Makefile.am.patch
new file mode 100644
index 0000000000..190ba96085
--- /dev/null
+++ b/meta/recipes-gnome/gnome/libart-lgpl/Makefile.am.patch
@@ -0,0 +1,17 @@
1Upstream-Status: Inappropriate [configuration]
2
3Index: libart_lgpl-2.3.21/Makefile.am
4===================================================================
5--- libart_lgpl-2.3.21.orig/Makefile.am 2009-04-18 05:29:25.000000000 -0700
6+++ libart_lgpl-2.3.21/Makefile.am 2010-11-23 23:12:32.445450075 -0800
7@@ -7,8 +7,8 @@
8
9 BUILT_SOURCES = art_config.h
10
11-art_config.h:
12- ./gen_art_config.sh > art_config.h
13+#art_config.h:
14+# ./gen_art_config.sh > art_config.h
15
16 EXTRA_DIST = \
17 libart.def \
diff --git a/meta/recipes-gnome/gnome/libart-lgpl/aarch64/art_config.h b/meta/recipes-gnome/gnome/libart-lgpl/aarch64/art_config.h
new file mode 100644
index 0000000000..500ffc38f1
--- /dev/null
+++ b/meta/recipes-gnome/gnome/libart-lgpl/aarch64/art_config.h
@@ -0,0 +1,10 @@
1/* Automatically generated by gen_art_config.c */
2
3#define ART_SIZEOF_CHAR 1
4#define ART_SIZEOF_SHORT 2
5#define ART_SIZEOF_INT 4
6#define ART_SIZEOF_LONG 8
7
8typedef unsigned char art_u8;
9typedef unsigned short art_u16;
10typedef unsigned int art_u32;
diff --git a/meta/recipes-gnome/gnome/libart-lgpl/arm/art_config.h b/meta/recipes-gnome/gnome/libart-lgpl/arm/art_config.h
new file mode 100644
index 0000000000..b0e74ad6ae
--- /dev/null
+++ b/meta/recipes-gnome/gnome/libart-lgpl/arm/art_config.h
@@ -0,0 +1,10 @@
1/* Automatically generated by gen_art_config.c */
2
3#define ART_SIZEOF_CHAR 1
4#define ART_SIZEOF_SHORT 2
5#define ART_SIZEOF_INT 4
6#define ART_SIZEOF_LONG 4
7
8typedef unsigned char art_u8;
9typedef unsigned short art_u16;
10typedef unsigned int art_u32;
diff --git a/meta/recipes-gnome/gnome/libart-lgpl/i386/art_config.h b/meta/recipes-gnome/gnome/libart-lgpl/i386/art_config.h
new file mode 100644
index 0000000000..b0e74ad6ae
--- /dev/null
+++ b/meta/recipes-gnome/gnome/libart-lgpl/i386/art_config.h
@@ -0,0 +1,10 @@
1/* Automatically generated by gen_art_config.c */
2
3#define ART_SIZEOF_CHAR 1
4#define ART_SIZEOF_SHORT 2
5#define ART_SIZEOF_INT 4
6#define ART_SIZEOF_LONG 4
7
8typedef unsigned char art_u8;
9typedef unsigned short art_u16;
10typedef unsigned int art_u32;
diff --git a/meta/recipes-gnome/gnome/libart-lgpl/i586/art_config.h b/meta/recipes-gnome/gnome/libart-lgpl/i586/art_config.h
new file mode 100644
index 0000000000..b0e74ad6ae
--- /dev/null
+++ b/meta/recipes-gnome/gnome/libart-lgpl/i586/art_config.h
@@ -0,0 +1,10 @@
1/* Automatically generated by gen_art_config.c */
2
3#define ART_SIZEOF_CHAR 1
4#define ART_SIZEOF_SHORT 2
5#define ART_SIZEOF_INT 4
6#define ART_SIZEOF_LONG 4
7
8typedef unsigned char art_u8;
9typedef unsigned short art_u16;
10typedef unsigned int art_u32;
diff --git a/meta/recipes-gnome/gnome/libart-lgpl/i686/art_config.h b/meta/recipes-gnome/gnome/libart-lgpl/i686/art_config.h
new file mode 100644
index 0000000000..b0e74ad6ae
--- /dev/null
+++ b/meta/recipes-gnome/gnome/libart-lgpl/i686/art_config.h
@@ -0,0 +1,10 @@
1/* Automatically generated by gen_art_config.c */
2
3#define ART_SIZEOF_CHAR 1
4#define ART_SIZEOF_SHORT 2
5#define ART_SIZEOF_INT 4
6#define ART_SIZEOF_LONG 4
7
8typedef unsigned char art_u8;
9typedef unsigned short art_u16;
10typedef unsigned int art_u32;
diff --git a/meta/recipes-gnome/gnome/libart-lgpl/mips/art_config.h b/meta/recipes-gnome/gnome/libart-lgpl/mips/art_config.h
new file mode 100644
index 0000000000..b0e74ad6ae
--- /dev/null
+++ b/meta/recipes-gnome/gnome/libart-lgpl/mips/art_config.h
@@ -0,0 +1,10 @@
1/* Automatically generated by gen_art_config.c */
2
3#define ART_SIZEOF_CHAR 1
4#define ART_SIZEOF_SHORT 2
5#define ART_SIZEOF_INT 4
6#define ART_SIZEOF_LONG 4
7
8typedef unsigned char art_u8;
9typedef unsigned short art_u16;
10typedef unsigned int art_u32;
diff --git a/meta/recipes-gnome/gnome/libart-lgpl/mips64/art_config.h b/meta/recipes-gnome/gnome/libart-lgpl/mips64/art_config.h
new file mode 100644
index 0000000000..d10cd957d5
--- /dev/null
+++ b/meta/recipes-gnome/gnome/libart-lgpl/mips64/art_config.h
@@ -0,0 +1,10 @@
1/* Automatically generated by gen_art_config */
2
3#define ART_SIZEOF_CHAR 1
4#define ART_SIZEOF_SHORT 2
5#define ART_SIZEOF_INT 4
6#define ART_SIZEOF_LONG 8
7
8typedef unsigned char art_u8;
9typedef unsigned short art_u16;
10typedef unsigned int art_u32;
diff --git a/meta/recipes-gnome/gnome/libart-lgpl/mips64el/art_config.h b/meta/recipes-gnome/gnome/libart-lgpl/mips64el/art_config.h
new file mode 100644
index 0000000000..d10cd957d5
--- /dev/null
+++ b/meta/recipes-gnome/gnome/libart-lgpl/mips64el/art_config.h
@@ -0,0 +1,10 @@
1/* Automatically generated by gen_art_config */
2
3#define ART_SIZEOF_CHAR 1
4#define ART_SIZEOF_SHORT 2
5#define ART_SIZEOF_INT 4
6#define ART_SIZEOF_LONG 8
7
8typedef unsigned char art_u8;
9typedef unsigned short art_u16;
10typedef unsigned int art_u32;
diff --git a/meta/recipes-gnome/gnome/libart-lgpl/mipsel/art_config.h b/meta/recipes-gnome/gnome/libart-lgpl/mipsel/art_config.h
new file mode 100644
index 0000000000..b0e74ad6ae
--- /dev/null
+++ b/meta/recipes-gnome/gnome/libart-lgpl/mipsel/art_config.h
@@ -0,0 +1,10 @@
1/* Automatically generated by gen_art_config.c */
2
3#define ART_SIZEOF_CHAR 1
4#define ART_SIZEOF_SHORT 2
5#define ART_SIZEOF_INT 4
6#define ART_SIZEOF_LONG 4
7
8typedef unsigned char art_u8;
9typedef unsigned short art_u16;
10typedef unsigned int art_u32;
diff --git a/meta/recipes-gnome/gnome/libart-lgpl/powerpc/art_config.h b/meta/recipes-gnome/gnome/libart-lgpl/powerpc/art_config.h
new file mode 100644
index 0000000000..b0e74ad6ae
--- /dev/null
+++ b/meta/recipes-gnome/gnome/libart-lgpl/powerpc/art_config.h
@@ -0,0 +1,10 @@
1/* Automatically generated by gen_art_config.c */
2
3#define ART_SIZEOF_CHAR 1
4#define ART_SIZEOF_SHORT 2
5#define ART_SIZEOF_INT 4
6#define ART_SIZEOF_LONG 4
7
8typedef unsigned char art_u8;
9typedef unsigned short art_u16;
10typedef unsigned int art_u32;
diff --git a/meta/recipes-gnome/gnome/libart-lgpl/powerpc64/art_config.h b/meta/recipes-gnome/gnome/libart-lgpl/powerpc64/art_config.h
new file mode 100644
index 0000000000..500ffc38f1
--- /dev/null
+++ b/meta/recipes-gnome/gnome/libart-lgpl/powerpc64/art_config.h
@@ -0,0 +1,10 @@
1/* Automatically generated by gen_art_config.c */
2
3#define ART_SIZEOF_CHAR 1
4#define ART_SIZEOF_SHORT 2
5#define ART_SIZEOF_INT 4
6#define ART_SIZEOF_LONG 8
7
8typedef unsigned char art_u8;
9typedef unsigned short art_u16;
10typedef unsigned int art_u32;
diff --git a/meta/recipes-gnome/gnome/libart-lgpl/x86_64/art_config.h b/meta/recipes-gnome/gnome/libart-lgpl/x86_64/art_config.h
new file mode 100644
index 0000000000..500ffc38f1
--- /dev/null
+++ b/meta/recipes-gnome/gnome/libart-lgpl/x86_64/art_config.h
@@ -0,0 +1,10 @@
1/* Automatically generated by gen_art_config.c */
2
3#define ART_SIZEOF_CHAR 1
4#define ART_SIZEOF_SHORT 2
5#define ART_SIZEOF_INT 4
6#define ART_SIZEOF_LONG 8
7
8typedef unsigned char art_u8;
9typedef unsigned short art_u16;
10typedef unsigned int art_u32;
diff --git a/meta/recipes-gnome/gnome/libart-lgpl_2.3.21.bb b/meta/recipes-gnome/gnome/libart-lgpl_2.3.21.bb
new file mode 100644
index 0000000000..4966ea4c7a
--- /dev/null
+++ b/meta/recipes-gnome/gnome/libart-lgpl_2.3.21.bb
@@ -0,0 +1,28 @@
1SUMMARY = "Library of functions for 2D graphics"
2SECTION = "x11/gnome"
3LICENSE = "LGPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7"
5PR = "r2"
6
7ART_CONFIG = "${HOST_ARCH}/art_config.h"
8
9# can't use gnome.oeclass due to _ in filename
10SRC_URI = "${GNOME_MIRROR}/libart_lgpl/2.3/libart_lgpl-${PV}.tar.bz2 \
11 file://${ART_CONFIG} \
12 file://Makefile.am.patch"
13
14SRC_URI[md5sum] = "08559ff3c67fd95d57b0c5e91a6b4302"
15SRC_URI[sha256sum] = "fdc11e74c10fc9ffe4188537e2b370c0abacca7d89021d4d303afdf7fd7476fa"
16
17inherit autotools pkgconfig
18
19DEPENDS = ""
20
21FILES_${PN} = "${libdir}/*.so.*"
22FILES_${PN}-dev += "${bindir}/libart2-config"
23
24S = "${WORKDIR}/libart_lgpl-${PV}"
25
26do_configure_prepend() {
27 cp ${WORKDIR}/${ART_CONFIG} ${S}/art_config.h
28}
diff --git a/meta/recipes-gnome/gtk+/gtk+-2.24.24/0001-GtkButton-do-not-prelight-in-touchscreen-mode.patch b/meta/recipes-gnome/gtk+/gtk+-2.24.24/0001-GtkButton-do-not-prelight-in-touchscreen-mode.patch
new file mode 100644
index 0000000000..71e334d897
--- /dev/null
+++ b/meta/recipes-gnome/gtk+/gtk+-2.24.24/0001-GtkButton-do-not-prelight-in-touchscreen-mode.patch
@@ -0,0 +1,48 @@
1From d1f7a894674dfdd6769f1bbae31eb1a69e451a5c Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
3Date: Fri, 16 Nov 2012 22:07:28 +0100
4Subject: [PATCH] GtkButton: do not prelight in touchscreen mode
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8
9Code was copied from GtkToggleButton.
10
11Upstream-Status: submitted [1]
12
13[1] https://bugzilla.gnome.org/show_bug.cgi?id=689138
14
15Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
16---
17 gtk/gtkbutton.c | 8 ++++++--
18 1 files changed, 6 insertions(+), 2 deletions(-)
19
20diff --git a/gtk/gtkbutton.c b/gtk/gtkbutton.c
21index f472007..1beb1b6 100644
22--- a/gtk/gtkbutton.c
23+++ b/gtk/gtkbutton.c
24@@ -2079,15 +2079,19 @@ _gtk_button_set_depressed (GtkButton *button,
25 static void
26 gtk_button_update_state (GtkButton *button)
27 {
28- gboolean depressed;
29+ gboolean depressed, touchscreen;
30 GtkStateType new_state;
31
32+ g_object_get (gtk_widget_get_settings (GTK_WIDGET (button)),
33+ "gtk-touchscreen-mode", &touchscreen,
34+ NULL);
35+
36 if (button->activate_timeout)
37 depressed = button->depress_on_activate;
38 else
39 depressed = button->in_button && button->button_down;
40
41- if (button->in_button && (!button->button_down || !depressed))
42+ if (!touchscreen && button->in_button && (!button->button_down || !depressed))
43 new_state = GTK_STATE_PRELIGHT;
44 else
45 new_state = depressed ? GTK_STATE_ACTIVE : GTK_STATE_NORMAL;
46--
471.7.6.5
48
diff --git a/meta/recipes-gnome/gtk+/gtk+-2.24.24/0001-bgo-584832-Duplicate-the-exec-string-returned-by-gtk.patch b/meta/recipes-gnome/gtk+/gtk+-2.24.24/0001-bgo-584832-Duplicate-the-exec-string-returned-by-gtk.patch
new file mode 100644
index 0000000000..354f0ab376
--- /dev/null
+++ b/meta/recipes-gnome/gtk+/gtk+-2.24.24/0001-bgo-584832-Duplicate-the-exec-string-returned-by-gtk.patch
@@ -0,0 +1,30 @@
1From 69b9441eab2a7215509687dc22b48b6f212d22aa Mon Sep 17 00:00:00 2001
2From: Rob Bradford <rob@linux.intel.com>
3Date: Thu, 4 Jun 2009 15:43:20 +0100
4Subject: [PATCH] =?utf-8?q?bgo#584832=20=E2=80=93=20Duplicate=20the=20exec=20string=20returned=20by=20gtk=5Frecent=5Finfo=5Fget=5Fapplication=5Finfo?=
5MIME-Version: 1.0
6Content-Type: text/plain; charset=utf-8
7Content-Transfer-Encoding: 8bit
8
9This function states that the caller is responsible for freeing the string
10passed returned by reference. Unfortunately if you do this you get a crash
11since the internal value is returned without being duplicated.
12---
13 gtk/gtkrecentmanager.c | 2 +-
14 1 files changed, 1 insertions(+), 1 deletions(-)
15
16Upstream-Status: Pending
17
18Index: gtk+-2.21.2/gtk/gtkrecentmanager.c
19===================================================================
20--- gtk+-2.21.2.orig/gtk/gtkrecentmanager.c 2010-06-22 18:11:30.000000000 +0800
21+++ gtk+-2.21.2/gtk/gtkrecentmanager.c 2010-06-22 18:11:53.000000000 +0800
22@@ -1766,7 +1766,7 @@
23 }
24
25 if (app_exec)
26- *app_exec = ai->exec;
27+ *app_exec = g_strdup (ai->exec);
28
29 if (count)
30 *count = ai->count;
diff --git a/meta/recipes-gnome/gtk+/gtk+-2.24.24/cellrenderer-cairo.patch b/meta/recipes-gnome/gtk+/gtk+-2.24.24/cellrenderer-cairo.patch
new file mode 100644
index 0000000000..ba893292d6
--- /dev/null
+++ b/meta/recipes-gnome/gtk+/gtk+-2.24.24/cellrenderer-cairo.patch
@@ -0,0 +1,31 @@
1Upstream-Status: Pending
2
3Index: gtk/gtkcellrenderer.c
4===================================================================
5--- gtk/gtkcellrenderer.c.orig 2010-06-22 17:21:22.000000000 +0800
6+++ gtk/gtkcellrenderer.c 2010-06-22 17:21:25.000000000 +0800
7@@ -566,6 +566,7 @@
8
9 if (cell->cell_background_set && !selected)
10 {
11+#ifdef USE_CAIRO_INTERNALLY
12 cairo_t *cr = gdk_cairo_create (window);
13
14 gdk_cairo_rectangle (cr, background_area);
15@@ -573,6 +574,16 @@
16 cairo_fill (cr);
17
18 cairo_destroy (cr);
19+#else
20+ GdkGC *gc;
21+
22+ gc = gdk_gc_new (window);
23+ gdk_gc_set_rgb_fg_color (gc, &priv->cell_background);
24+ gdk_draw_rectangle (window, gc, TRUE,
25+ background_area->x, background_area->y,
26+ background_area->width, background_area->height);
27+ g_object_unref (gc);
28+#endif
29 }
30
31 GTK_CELL_RENDERER_GET_CLASS (cell)->render (cell,
diff --git a/meta/recipes-gnome/gtk+/gtk+-2.24.24/configure-nm.patch b/meta/recipes-gnome/gtk+/gtk+-2.24.24/configure-nm.patch
new file mode 100644
index 0000000000..d67b797852
--- /dev/null
+++ b/meta/recipes-gnome/gtk+/gtk+-2.24.24/configure-nm.patch
@@ -0,0 +1,21 @@
1Upstream-Status: Pending
2https://bugzilla.gnome.org/show_bug.cgi?id=671515
3
4Signed-Off-By: Xiaofeng Yan <xiaofeng.yan@windriver.com>
5# Pick up ${NM} from the environment
6
7Updated to apply to gtk+-2.24.15
8
9Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
10diff -Nurd gtk+-2.24.15/configure.ac gtk+-2.24.15/configure.ac
11--- gtk+-2.24.15/configure.ac 2013-01-12 20:52:54.000000000 +0200
12+++ gtk+-2.24.15/configure.ac 2013-02-12 21:25:06.073937041 +0200
13@@ -190,7 +190,7 @@
14 AC_SYS_LARGEFILE
15
16 AM_PROG_AS
17-AC_PATH_PROG(NM, nm, nm)
18+AC_CHECK_TOOLS(NM, [$NM nm], nm)
19
20 dnl Initialize maintainer mode
21 AM_MAINTAINER_MODE([enable])
diff --git a/meta/recipes-gnome/gtk+/gtk+-2.24.24/configurefix.patch b/meta/recipes-gnome/gtk+/gtk+-2.24.24/configurefix.patch
new file mode 100644
index 0000000000..2803691246
--- /dev/null
+++ b/meta/recipes-gnome/gtk+/gtk+-2.24.24/configurefix.patch
@@ -0,0 +1,87 @@
1Upstream-Status: Inappropriate [configuration]
2
3Index: gtk+-2.21.2/docs/faq/Makefile.am
4===================================================================
5--- gtk+-2.21.2.orig/docs/faq/Makefile.am 2010-04-09 10:29:53.000000000 +0800
6+++ gtk+-2.21.2/docs/faq/Makefile.am 2010-06-22 17:39:24.000000000 +0800
7@@ -3,34 +3,36 @@
8 EXTRA_DIST += \
9 gtk-faq.sgml
10
11-if HAVE_DOCBOOK
12+
13 html:
14+if HAVE_DOCBOOK
15 if test -w $(srcdir); then \
16 (cd $(srcdir); \
17 db2html gtk-faq.sgml; \
18 test -d html && rm -r html; \
19 mv gtk-faq html); \
20 fi
21-
22-pdf:
23- if test -w $(srcdir); then \
24- (cd $(srcdir); db2pdf gtk-faq.sgml); \
25- fi
26-
27-dist-hook: html
28- cp -Rp $(srcdir)/html $(distdir)
29 else
30-html:
31 echo "***"
32 echo "*** Warning: FAQ not built"
33 echo "***"
34+endif
35
36 pdf:
37+if HAVE_DOCBOOK
38+ if test -w $(srcdir); then \
39+ (cd $(srcdir); db2pdf gtk-faq.sgml); \
40+ fi
41+else
42 echo "***"
43 echo "*** Warning: FAQ not built"
44 echo "***"
45+endif
46
47-dist-hook:
48+dist-hook: html
49+if HAVE_DOCBOOK
50+ cp -Rp $(srcdir)/html $(distdir)
51+else
52 echo "***"
53 echo "*** Warning: FAQ not built"
54 echo "*** DISTRIBUTION IS INCOMPLETE"
55Index: gtk+-2.21.2/gtk-doc.make
56===================================================================
57--- gtk+-2.21.2.orig/gtk-doc.make 2010-05-28 00:01:48.000000000 +0800
58+++ gtk+-2.21.2/gtk-doc.make 2010-06-22 17:39:24.000000000 +0800
59@@ -23,7 +23,7 @@
60
61 TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE)
62
63-EXTRA_DIST = \
64+EXTRA_DIST += \
65 $(content_files) \
66 $(HTML_IMAGES) \
67 $(DOC_MAIN_SGML_FILE) \
68Index: gtk+-2.21.2/gtk/tests/Makefile.am
69===================================================================
70--- gtk+-2.21.2.orig/gtk/tests/Makefile.am 2010-06-10 20:53:46.000000000 +0800
71+++ gtk+-2.21.2/gtk/tests/Makefile.am 2010-06-22 17:39:24.000000000 +0800
72@@ -58,13 +58,13 @@
73 # this doesn't work in make distcheck, since running
74 # on a naked X server creates slightly different event
75 # sequences than running on a normal desktop
76-# TEST_PROGS += crossingevents
77+#TEST_PROGS += crossingevents
78 crossingevents_SOURCES = crossingevents.c
79 crossingevents_LDADD = $(progs_ldadd)
80
81 # this doesn't work in make distcheck, since it doesn't
82 # find file-chooser-test-dir
83-# TEST_PROGS += filechooser
84+#TEST_PROGS += filechooser
85 filechooser_SOURCES = filechooser.c pixbuf-init.c
86 filechooser_LDADD = $(progs_ldadd)
87
diff --git a/meta/recipes-gnome/gtk+/gtk+-2.24.24/doc-fixes.patch b/meta/recipes-gnome/gtk+/gtk+-2.24.24/doc-fixes.patch
new file mode 100644
index 0000000000..74e479fd1b
--- /dev/null
+++ b/meta/recipes-gnome/gtk+/gtk+-2.24.24/doc-fixes.patch
@@ -0,0 +1,22 @@
1There are issues building the gtk+ tutorial and faq documentation.
2Since they were removed in gtk+ upstream and are superfluous in
3embedded applications, just don't build them.
4
5Thanks to Joshua Lock for suggesting this approach.
6
7Signed-off-by: Scott Garman <scott.a.garman@intel.com>
8
9Upstream-Status: Inappropriate [embedded specific]
10
11diff -urN gtk+-2.22.1.orig/docs/Makefile.am gtk+-2.22.1/docs/Makefile.am
12--- gtk+-2.22.1.orig/docs/Makefile.am 2010-11-15 04:13:09.000000000 -0800
13+++ gtk+-2.22.1/docs/Makefile.am 2011-02-23 19:25:16.914815097 -0800
14@@ -1,7 +1,7 @@
15 ## Process this file with automake to produce Makefile.in
16 include $(top_srcdir)/Makefile.decl
17
18-SUBDIRS = tutorial faq reference tools
19+SUBDIRS = reference tools
20
21 EXTRA_DIST += \
22 defsformat.txt \
diff --git a/meta/recipes-gnome/gtk+/gtk+-2.24.24/entry-cairo.patch b/meta/recipes-gnome/gtk+/gtk+-2.24.24/entry-cairo.patch
new file mode 100644
index 0000000000..3083b77830
--- /dev/null
+++ b/meta/recipes-gnome/gtk+/gtk+-2.24.24/entry-cairo.patch
@@ -0,0 +1,105 @@
1Upstream-Status: Pending
2
3Index: gtk/gtkentry.c
4===================================================================
5RCS file: /cvs/gnome/gtk+/gtk/gtkentry.c,v
6retrieving revision 1.317
7diff -u -r1.317 gtkentry.c
8--- gtk/gtkentry.c 29 Jun 2006 09:18:05 -0000 1.317
9+++ gtk/gtkentry.c 2 Jul 2006 14:14:24 -0000
10@@ -3337,7 +3337,9 @@
11 if (GTK_WIDGET_DRAWABLE (entry))
12 {
13 PangoLayout *layout = gtk_entry_ensure_layout (entry, TRUE);
14+#ifdef USE_CAIRO_INTERNALLY
15 cairo_t *cr;
16+#endif
17 gint x, y;
18 gint start_pos, end_pos;
19
20@@ -3345,23 +3347,35 @@
21
22 get_layout_position (entry, &x, &y);
23
24+#ifdef USE_CAIRO_INTERNALLY
25 cr = gdk_cairo_create (entry->text_area);
26
27 cairo_move_to (cr, x, y);
28 gdk_cairo_set_source_color (cr, &widget->style->text [widget->state]);
29 pango_cairo_show_layout (cr, layout);
30+#else
31+ gdk_draw_layout (entry->text_area, widget->style->text_gc [widget->state],
32+ x, y,
33+ layout);
34+#endif
35
36 if (gtk_editable_get_selection_bounds (GTK_EDITABLE (entry), &start_pos, &end_pos))
37 {
38 gint *ranges;
39 gint n_ranges, i;
40 PangoRectangle logical_rect;
41- GdkColor *selection_color, *text_color;
42 GtkBorder inner_border;
43+#ifdef USE_CAIRO_INTERNALLY
44+ GdkColor *selection_color, *text_color;
45+#else
46+ GdkGC *selection_gc, *text_gc;
47+ GdkRegion *clip_region;
48+#endif
49
50 pango_layout_get_pixel_extents (layout, NULL, &logical_rect);
51 gtk_entry_get_pixel_ranges (entry, &ranges, &n_ranges);
52
53+#ifdef USE_CAIRO_INTERNALLY
54 if (GTK_WIDGET_HAS_FOCUS (entry))
55 {
56 selection_color = &widget->style->base [GTK_STATE_SELECTED];
57@@ -3390,11 +3404,46 @@
58 cairo_move_to (cr, x, y);
59 gdk_cairo_set_source_color (cr, text_color);
60 pango_cairo_show_layout (cr, layout);
61-
62+#else
63+ if (GTK_WIDGET_HAS_FOCUS (entry))
64+ {
65+ selection_gc = widget->style->base_gc [GTK_STATE_SELECTED];
66+ text_gc = widget->style->text_gc [GTK_STATE_SELECTED];
67+ }
68+ else
69+ {
70+ selection_gc = widget->style->base_gc [GTK_STATE_ACTIVE];
71+ text_gc = widget->style->text_gc [GTK_STATE_ACTIVE];
72+ }
73+
74+ clip_region = gdk_region_new ();
75+ for (i = 0; i < n_ranges; ++i)
76+ {
77+ GdkRectangle rect;
78+
79+ rect.x = inner_border.left - entry->scroll_offset + ranges[2 * i];
80+ rect.y = y;
81+ rect.width = ranges[2 * i + 1];
82+ rect.height = logical_rect.height;
83+
84+ gdk_draw_rectangle (entry->text_area, selection_gc, TRUE,
85+ rect.x, rect.y, rect.width, rect.height);
86+
87+ gdk_region_union_with_rect (clip_region, &rect);
88+ }
89+
90+ gdk_gc_set_clip_region (text_gc, clip_region);
91+ gdk_draw_layout (entry->text_area, text_gc,
92+ x, y,
93+ layout);
94+ gdk_gc_set_clip_region (text_gc, NULL);
95+ gdk_region_destroy (clip_region);
96+#endif
97 g_free (ranges);
98 }
99-
100+#ifdef USE_CAIRO_INTERNALLY
101 cairo_destroy (cr);
102+#endif
103 }
104 }
105
diff --git a/meta/recipes-gnome/gtk+/gtk+-2.24.24/hardcoded_libtool.patch b/meta/recipes-gnome/gtk+/gtk+-2.24.24/hardcoded_libtool.patch
new file mode 100644
index 0000000000..13ff318768
--- /dev/null
+++ b/meta/recipes-gnome/gtk+/gtk+-2.24.24/hardcoded_libtool.patch
@@ -0,0 +1,1814 @@
1Upstream-Status: Inappropriate [embedded specific]
2
3Updated to apply to gtk+-2.24.15
4
5Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
6diff -Nurd gtk+-2.24.15/configure.ac gtk+-2.24.15/configure.ac
7--- gtk+-2.24.15/configure.ac 2013-01-12 20:52:54.000000000 +0200
8+++ gtk+-2.24.15/configure.ac 2013-02-12 21:33:30.689925967 +0200
9@@ -415,7 +415,7 @@
10 case $enable_explicit_deps in
11 auto)
12 export SED
13- deplibs_check_method=`(./libtool --config; echo 'eval echo \"$deplibs_check_method\"') | sh`
14+ deplibs_check_method=`(./$host_alias-libtool --config; echo 'eval echo \"$deplibs_check_method\"') | sh`
15 if test "x$deplibs_check_method" '!=' xpass_all || test "x$enable_static" = xyes ; then
16 enable_explicit_deps=yes
17 else
18@@ -774,7 +774,7 @@
19 dnl Now we check to see if our libtool supports shared lib deps
20 dnl (in a rather ugly way even)
21 if $dynworks; then
22- module_libtool_config="${CONFIG_SHELL-/bin/sh} ./libtool --config"
23+ module_libtool_config="${CONFIG_SHELL-/bin/sh} $host_alias-libtool --config"
24 module_deplibs_check=`$module_libtool_config | \
25 grep '^[[a-z_]]*check[[a-z_]]*_method=[['\''"]]' | \
26 sed 's/.*[['\''"]]\(.*\)[['\''"]]$/\1/'`
27@@ -1574,7 +1574,7 @@
28 # We are using gmodule-no-export now, but I'm leaving the stripping
29 # code in place for now, since pango and atk still require gmodule.
30 export SED
31-export_dynamic=`(./libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh`
32+export_dynamic=`($host_alias-libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh`
33 if test -n "$export_dynamic"; then
34 GDK_DEP_LIBS=`echo $GDK_DEP_LIBS | sed -e "s/$export_dynamic//"`
35 GTK_DEP_LIBS=`echo $GTK_DEP_LIBS | sed -e "s/$export_dynamic//"`
36diff -Nurd gtk+-2.24.15/configure.ac.orig gtk+-2.24.15/configure.ac.orig
37--- gtk+-2.24.15/configure.ac.orig 1970-01-01 02:00:00.000000000 +0200
38+++ gtk+-2.24.15/configure.ac.orig 2013-02-12 21:33:21.821926163 +0200
39@@ -0,0 +1,1775 @@
40+# Process this file with autoconf to produce a configure script.
41+# Process this file with autoconf to produce a configure script.
42+# require autoconf 2.54
43+AC_PREREQ(2.62)
44+
45+# Making releases:
46+# GTK_MICRO_VERSION += 1;
47+# GTK_INTERFACE_AGE += 1;
48+# GTK_BINARY_AGE += 1;
49+# if any functions have been added, set GTK_INTERFACE_AGE to 0.
50+# if backwards compatibility has been broken,
51+# set GTK_BINARY_AGE and GTK_INTERFACE_AGE to 0.
52+
53+m4_define([gtk_major_version], [2])
54+m4_define([gtk_minor_version], [24])
55+m4_define([gtk_micro_version], [15])
56+m4_define([gtk_interface_age], [15])
57+m4_define([gtk_binary_age],
58+ [m4_eval(100 * gtk_minor_version + gtk_micro_version)])
59+m4_define([gtk_version],
60+ [gtk_major_version.gtk_minor_version.gtk_micro_version])
61+# This is the X.Y used in -lgtk-FOO-X.Y
62+m4_define([gtk_api_version], [2.0])
63+
64+# Define a string for the earliest version that this release has
65+# backwards binary compatibility with for all interfaces a module
66+# might. Unless we add module-only API with lower stability
67+# guarantees, this should be unchanged until we break binary compat
68+# for GTK+.
69+#
70+#GTK_BINARY_VERSION=$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION.$LT_CURRENT
71+m4_define([gtk_binary_version], [2.10.0])
72+
73+# required versions of other packages
74+m4_define([glib_required_version], [2.28.0])
75+m4_define([pango_required_version], [1.20])
76+m4_define([atk_required_version], [1.29.2])
77+m4_define([cairo_required_version], [1.6])
78+m4_define([gdk_pixbuf_required_version], [2.21.0])
79+
80+
81+AC_INIT([gtk+], [gtk_version],
82+ [http://bugzilla.gnome.org/enter_bug.cgi?product=gtk%2B],
83+ [gtk+])
84+
85+AC_CONFIG_SRCDIR([gdk/gdktypes.h])
86+AC_CONFIG_HEADERS([config.h])
87+AC_CONFIG_MACRO_DIR([m4])
88+
89+# Save this value here, since automake will set cflags later
90+cflags_set=${CFLAGS+set}
91+
92+AM_INIT_AUTOMAKE([no-define -Wno-portability dist-bzip2])
93+
94+# Support silent build rules, requires at least automake-1.11. Enable
95+# by either passing --enable-silent-rules to configure or passing V=0
96+# to make
97+m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([no])])
98+
99+#
100+# For each of the libraries we build, we define the following
101+
102+# substituted variables:
103+#
104+# foo_PACKAGES: pkg-config packages this library requires
105+# foo_EXTRA_LIBS: Libraries this module requires not pulled in by pkg-config
106+# foo_EXTRA_CFLAGS: cflags this module requires not pulled in by pkg-config
107+# foo_DEP_LIBS: All libraries this module requires
108+# foo_DEP_CFLAGS: All cflags this module requires
109+
110+
111+GTK_MAJOR_VERSION=gtk_major_version
112+GTK_MINOR_VERSION=gtk_minor_version
113+GTK_MICRO_VERSION=gtk_micro_version
114+GTK_INTERFACE_AGE=gtk_interface_age
115+GTK_BINARY_AGE=gtk_binary_age
116+GTK_VERSION=gtk_version
117+GTK_API_VERSION=gtk_api_version
118+GTK_BINARY_VERSION=gtk_binary_version
119+AC_SUBST(GTK_MAJOR_VERSION)
120+AC_SUBST(GTK_MINOR_VERSION)
121+AC_SUBST(GTK_MICRO_VERSION)
122+AC_SUBST(GTK_INTERFACE_AGE)
123+AC_SUBST(GTK_BINARY_AGE)
124+AC_SUBST(GTK_API_VERSION)
125+AC_SUBST(GTK_VERSION)
126+AC_SUBST(GTK_BINARY_VERSION)
127+
128+# libtool versioning
129+#LT_RELEASE=$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION
130+#LT_CURRENT=`expr $GTK_MICRO_VERSION - $GTK_INTERFACE_AGE`
131+#LT_REVISION=$GTK_INTERFACE_AGE
132+#LT_AGE=`expr $GTK_BINARY_AGE - $GTK_INTERFACE_AGE`
133+#LT_CURRENT_MINUS_AGE=`expr $LT_CURRENT - $LT_AGE`
134+
135+m4_define([lt_current], [m4_eval(100 * gtk_minor_version + gtk_micro_version - gtk_interface_age)])
136+m4_define([lt_revision], [gtk_interface_age])
137+m4_define([lt_age], [m4_eval(gtk_binary_age - gtk_interface_age)])
138+LT_VERSION_INFO="lt_current:lt_revision:lt_age"
139+LT_CURRENT_MINUS_AGE=m4_eval(lt_current - lt_age)
140+AC_SUBST(LT_VERSION_INFO)
141+AC_SUBST(LT_CURRENT_MINUS_AGE)
142+
143+m4_define([gail_lt_current],[18])
144+m4_define([gail_lt_revision],[1])
145+m4_define([gail_lt_age],[0])
146+m4_define([gail_lt_version_info],[gail_lt_current:gail_lt_revision:gail_lt_age])
147+m4_define([gail_lt_current_minus_age],[m4_eval(gail_lt_current - gail_lt_age)])
148+AC_SUBST([GAIL_LT_VERSION_INFO],[gail_lt_version_info])
149+AC_SUBST([GAIL_LT_CURRENT_MINUS_AGE],[gail_lt_current_minus_age])
150+
151+GETTEXT_PACKAGE=gtk20
152+AC_SUBST(GETTEXT_PACKAGE)
153+AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE",
154+ [The prefix for our gettext translation domains.])
155+
156+AC_CANONICAL_HOST
157+
158+MATH_LIB=-lm
159+AC_MSG_CHECKING([for native Win32])
160+LIB_EXE_MACHINE_FLAG=X86
161+EXE_MANIFEST_ARCHITECTURE=X86
162+case "$host" in
163+ *-*-mingw*)
164+ os_win32=yes
165+ gio_can_sniff=no
166+ MATH_LIB=
167+ case "$host" in
168+ x86_64-*-*)
169+ LIB_EXE_MACHINE_FLAG=X64
170+ EXE_MANIFEST_ARCHITECTURE=AMD64
171+ ;;
172+ esac
173+ ;;
174+ *)
175+ os_win32=no
176+ ;;
177+esac
178+AC_MSG_RESULT([$os_win32])
179+
180+AC_SUBST(LIB_EXE_MACHINE_FLAG)
181+AC_SUBST(EXE_MANIFEST_ARCHITECTURE)
182+
183+case $host in
184+ *-*-linux*)
185+ os_linux=yes
186+ ;;
187+esac
188+
189+dnl Initialize libtool
190+AC_PROG_CC
191+AM_DISABLE_STATIC
192+
193+dnl
194+dnl Check for a working C++ compiler, but do not bail out, if none is found.
195+dnl We use this for an automated test for C++ header correctness.
196+dnl
197+AC_CHECK_TOOLS(CXX, [$CCC c++ g++ gcc CC cxx cc++ cl], gcc)
198+AC_LANG_SAVE
199+AC_LANG_CPLUSPLUS
200+
201+AC_TRY_COMPILE(,[class a { int b; } c;], ,CXX=)
202+AM_CONDITIONAL(HAVE_CXX, test "$CXX" != "")
203+
204+gtk_save_cxxflags="$CXXFLAGS"
205+CXXFLAGS="$CXXFLAGS -x objective-c++"
206+AC_TRY_COMPILE([@interface Foo @end],,OBJC=yes,OBJC=no)
207+AM_CONDITIONAL(HAVE_OBJC, test "$OBJC" = "yes")
208+CXXFLAGS="$gtk_save_cxxflags"
209+AC_LANG_RESTORE
210+
211+if test "$os_win32" = "yes"; then
212+ if test x$enable_static = xyes -o x$enable_static = x; then
213+ AC_MSG_WARN([Disabling static library build, must build as DLL on Windows.])
214+ enable_static=no
215+ fi
216+ if test x$enable_shared = xno; then
217+ AC_MSG_WARN([Enabling shared library build, must build as DLL on Windows.])
218+ fi
219+ enable_shared=yes
220+fi
221+
222+AC_LIBTOOL_WIN32_DLL
223+AM_PROG_LIBTOOL
224+dnl when using libtool 2.x create libtool early, because it's used in configure
225+m4_ifdef([LT_OUTPUT], [LT_OUTPUT])
226+
227+
228+# Make sure we use 64-bit versions of various file stuff.
229+AC_SYS_LARGEFILE
230+
231+AM_PROG_AS
232+AC_PATH_PROG(NM, nm, nm)
233+
234+dnl Initialize maintainer mode
235+AM_MAINTAINER_MODE([enable])
236+
237+AC_MSG_CHECKING([for some Win32 platform])
238+case "$host" in
239+ *-*-mingw*|*-*-cygwin*)
240+ platform_win32=yes
241+ ;;
242+ *)
243+ platform_win32=no
244+ ;;
245+esac
246+AC_MSG_RESULT([$platform_win32])
247+AM_CONDITIONAL(PLATFORM_WIN32, test "$platform_win32" = "yes")
248+
249+AM_CONDITIONAL(OS_WIN32, test "$os_win32" = "yes")
250+AM_CONDITIONAL(OS_UNIX, test "$os_win32" != "yes")
251+AM_CONDITIONAL(OS_LINUX, test "$os_linux" = "yes")
252+
253+if test "$os_win32" = "yes"; then
254+ AC_CHECK_TOOL(WINDRES, windres, no)
255+ if test "$WINDRES" = no; then
256+ AC_MSG_ERROR([*** Could not find an implementation of windres in your PATH.])
257+ fi
258+ AC_CHECK_PROG(ms_librarian, lib.exe, yes, no)
259+fi
260+AM_CONDITIONAL(MS_LIB_AVAILABLE, test x$ms_librarian = xyes)
261+
262+m4_define([debug_default],
263+ m4_if(m4_eval(gtk_minor_version % 2), [1], [yes], [minimum]))
264+
265+dnl declare --enable-* args and collect ac_help strings
266+AC_ARG_ENABLE(debug,
267+ AC_HELP_STRING([--enable-debug=@<:@no/minimum/yes@:>@],
268+ [turn on debugging @<:@default=debug_default@:>@]),,
269+ enable_debug=debug_default)
270+AC_ARG_ENABLE(shm,
271+ [AC_HELP_STRING([--enable-shm],
272+ [support shared memory if available [default=yes]])],,
273+ [enable_shm="yes"])
274+AC_ARG_ENABLE(xkb,
275+ [AC_HELP_STRING([--enable-xkb],
276+ [support XKB [default=maybe]])],,
277+ [enable_xkb="maybe"])
278+AC_ARG_ENABLE(xinerama,
279+ [AC_HELP_STRING([--enable-xinerama],
280+ [support xinerama extension if available [default=yes]])],,
281+ [enable_xinerama="yes"])
282+AC_ARG_ENABLE(rebuilds,
283+ [AC_HELP_STRING([--disable-rebuilds],
284+ [disable all source autogeneration rules])],,
285+ [enable_rebuilds=yes])
286+AC_ARG_ENABLE(visibility,
287+ [AC_HELP_STRING([--disable-visibility],
288+ [don't use ELF visibility attributes])],,
289+ [enable_visibility=yes])
290+
291+AC_ARG_WITH(xinput,
292+ [AC_HELP_STRING([--with-xinput=@<:@no/yes@:>@], [support XInput])])
293+
294+if test "$platform_win32" = yes; then
295+ gdktarget=win32
296+else
297+ gdktarget=x11
298+fi
299+
300+AC_ARG_WITH(gdktarget, [ --with-gdktarget=[[x11/win32/quartz/directfb]] select non-default GDK target],
301+ gdktarget=$with_gdktarget)
302+
303+AC_SUBST(gdktarget)
304+case $gdktarget in
305+ x11|win32|quartz|directfb) ;;
306+ *) AC_MSG_ERROR([Invalid target for GDK: use x11, quartz, directfb or win32.]);;
307+esac
308+
309+gdktargetlib=libgdk-$gdktarget-$GTK_API_VERSION.la
310+gtktargetlib=libgtk-$gdktarget-$GTK_API_VERSION.la
311+
312+AC_SUBST(gdktargetlib)
313+AC_SUBST(gtktargetlib)
314+
315+if test "x$enable_debug" = "xyes"; then
316+ test "$cflags_set" = set || CFLAGS="$CFLAGS -g"
317+ GTK_DEBUG_FLAGS="-DG_ENABLE_DEBUG -DG_ERRORCHECK_MUTEXES"
318+else
319+ if test "x$enable_debug" = "xno"; then
320+ GTK_DEBUG_FLAGS="-DG_DISABLE_ASSERT -DG_DISABLE_CHECKS -DG_DISABLE_CAST_CHECKS"
321+ else
322+ GTK_DEBUG_FLAGS="-DG_DISABLE_CAST_CHECKS"
323+ fi
324+fi
325+
326+
327+if test "x$enable_visibility" = "xno"; then
328+ GTK_DEBUG_FLAGS="$GTK_DEBUG_FLAGS -DDISABLE_VISIBILITY"
329+fi
330+
331+
332+AC_DEFINE_UNQUOTED(GTK_COMPILED_WITH_DEBUGGING, "${enable_debug}",
333+ [Define if debugging is enabled])
334+
335+
336+# Build time sanity check...
337+AM_SANITY_CHECK
338+
339+# Checks for programs.
340+AC_ISC_POSIX
341+AM_PROG_CC_C_O
342+AC_PROG_INSTALL
343+AC_PROG_MAKE_SET
344+
345+changequote(,)dnl
346+if test "x$GCC" = "xyes"; then
347+ case " $CFLAGS " in
348+ *[\ \ ]-Wall[\ \ ]*) ;;
349+ *) CFLAGS="$CFLAGS -Wall" ;;
350+ esac
351+
352+ if test "x$enable_ansi" = "xyes"; then
353+ case " $CFLAGS " in
354+ *[\ \ ]-ansi[\ \ ]*) ;;
355+ *) CFLAGS="$CFLAGS -ansi" ;;
356+ esac
357+
358+ case " $CFLAGS " in
359+ *[\ \ ]-pedantic[\ \ ]*) ;;
360+ *) CFLAGS="$CFLAGS -pedantic" ;;
361+ esac
362+ fi
363+fi
364+changequote([,])dnl
365+
366+CPPFLAGS="$CPPFLAGS -DG_DISABLE_SINGLE_INCLUDES -DATK_DISABLE_SINGLE_INCLUDES -DGDK_PIXBUF_DISABLE_SINGLE_INCLUDES -DGTK_DISABLE_SINGLE_INCLUDES"
367+
368+# Ensure MSVC-compatible struct packing convention is used when
369+# compiling for Win32 with gcc.
370+# What flag to depends on gcc version: gcc3 uses "-mms-bitfields", while
371+# gcc2 uses "-fnative-struct".
372+if test x"$os_win32" = xyes; then
373+ if test x"$GCC" = xyes; then
374+ msnative_struct=''
375+ AC_MSG_CHECKING([how to get MSVC-compatible struct packing])
376+ if test -z "$ac_cv_prog_CC"; then
377+ our_gcc="$CC"
378+ else
379+ our_gcc="$ac_cv_prog_CC"
380+ fi
381+ case `$our_gcc --version | sed -e 's,\..*,.,' -e q` in
382+ 2.)
383+ if $our_gcc -v --help 2>/dev/null | grep fnative-struct >/dev/null; then
384+ msnative_struct='-fnative-struct'
385+ fi
386+ ;;
387+ *)
388+ if $our_gcc -v --help 2>/dev/null | grep ms-bitfields >/dev/null; then
389+ msnative_struct='-mms-bitfields'
390+ fi
391+ ;;
392+ esac
393+ if test x"$msnative_struct" = x ; then
394+ AC_MSG_RESULT([no way])
395+ AC_MSG_WARN([produced libraries might be incompatible with MSVC-compiled code])
396+ else
397+ CFLAGS="$CFLAGS $msnative_struct"
398+ AC_MSG_RESULT([${msnative_struct}])
399+ fi
400+ fi
401+fi
402+
403+# Honor aclocal flags
404+ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
405+
406+## Initial sanity check, done here so that users get told they
407+## have the wrong dependencies as early in the process as possible.
408+## Later on we actually use the cflags/libs from separate pkg-config
409+## calls. Oh, also the later pkg-config calls don't include
410+## the version requirements since those make the module lists
411+## annoying to construct
412+PKG_CHECK_MODULES(BASE_DEPENDENCIES,
413+ [glib-2.0 >= glib_required_version dnl
414+ atk >= atk_required_version dnl
415+ pango >= pango_required_version dnl
416+ cairo >= cairo_required_version dnl
417+ gdk-pixbuf-2.0 >= gdk_pixbuf_required_version])
418+
419+## In addition to checking that cairo is present, we also need to
420+## check that the correct cairo backend is there. E.g. if the GDK
421+## target is win32 we need the cairo-win32 backend and so on.
422+cairo_backend=$gdktarget
423+
424+# GDK calls the xlib backend "x11," cairo calls it "xlib." Other
425+# backend names are identical.
426+if test "x$cairo_backend" = "xx11"; then
427+ cairo_backend=xlib
428+fi
429+PKG_CHECK_MODULES(CAIRO_BACKEND,
430+ [cairo-$cairo_backend >= cairo_required_version])
431+
432+PKG_CHECK_MODULES(GMODULE, [gmodule-2.0])
433+
434+if test "$os_win32" != yes; then
435+ # libtool option to control which symbols are exported
436+ # right now, symbols starting with _ are not exported
437+ LIBTOOL_EXPORT_OPTIONS='-export-symbols-regex "^[[^_]].*"'
438+else
439+ # We currently use .def files on Windows (for gdk and gtk)
440+ LIBTOOL_EXPORT_OPTIONS=
441+fi
442+AC_SUBST(LIBTOOL_EXPORT_OPTIONS)
443+
444+dnl ******************************************************
445+dnl * See whether to include shared library dependencies *
446+dnl ******************************************************
447+
448+AC_ARG_ENABLE(explicit-deps,
449+ [AC_HELP_STRING([--enable-explicit-deps=@<:@yes/no/auto@:>@],
450+ [use explicit dependencies in .pc files [default=auto]])],,
451+ [enable_explicit_deps=auto])
452+
453+AC_MSG_CHECKING([Whether to write dependencies into .pc files])
454+case $enable_explicit_deps in
455+ auto)
456+ export SED
457+ deplibs_check_method=`(./libtool --config; echo 'eval echo \"$deplibs_check_method\"') | sh`
458+ if test "x$deplibs_check_method" '!=' xpass_all || test "x$enable_static" = xyes ; then
459+ enable_explicit_deps=yes
460+ else
461+ enable_explicit_deps=no
462+ fi
463+ ;;
464+ yes|no)
465+ ;;
466+ *) AC_MSG_ERROR([Value given to --enable-explicit-deps must be one of yes, no or auto])
467+ ;;
468+esac
469+AC_MSG_RESULT($enable_explicit_deps)
470+
471+AM_CONDITIONAL(DISABLE_EXPLICIT_DEPS, test $enable_explicit_deps = no)
472+
473+# define a MAINT-like variable REBUILD which is set if Perl
474+# and awk are found, so autogenerated sources can be rebuilt
475+
476+AC_PATH_PROGS(PERL, perl5 perl)
477+
478+# We would like indent, but don't require it.
479+AC_CHECK_PROG(INDENT, indent, indent)
480+
481+REBUILD=\#
482+if test "x$enable_rebuilds" = "xyes" && \
483+ test -n "$PERL" && \
484+ $PERL -e 'exit !($] >= 5.002)' > /dev/null 2>&1 ; then
485+ REBUILD=
486+fi
487+AC_SUBST(REBUILD)
488+
489+AC_CHECK_FUNCS(lstat mkstemp flockfile getc_unlocked)
490+AC_CHECK_FUNCS(localtime_r)
491+
492+# _NL_TIME_FIRST_WEEKDAY is an enum and not a define
493+AC_MSG_CHECKING([for _NL_TIME_FIRST_WEEKDAY])
494+AC_TRY_LINK([#include <langinfo.h>], [
495+char c;
496+c = *((unsigned char *) nl_langinfo(_NL_TIME_FIRST_WEEKDAY));
497+], gtk_ok=yes, gtk_ok=no)
498+AC_MSG_RESULT($gtk_ok)
499+if test "$gtk_ok" = "yes"; then
500+ AC_DEFINE([HAVE__NL_TIME_FIRST_WEEKDAY], [1],
501+ [Define if _NL_TIME_FIRST_WEEKDAY is available])
502+fi
503+
504+# _NL_MEASUREMENT_MEASUREMENT is an enum and not a define
505+AC_MSG_CHECKING([for _NL_MEASUREMENT_MEASUREMENT])
506+AC_TRY_LINK([#include <langinfo.h>], [
507+char c;
508+c = *((unsigned char *) nl_langinfo(_NL_MEASUREMENT_MEASUREMENT));
509+], gtk_ok=yes, gtk_ok=no)
510+AC_MSG_RESULT($gtk_ok)
511+if test "$gtk_ok" = "yes"; then
512+ AC_DEFINE([HAVE__NL_MEASUREMENT_MEASUREMENT], [1],
513+ [Define if _NL_MEASUREMENT_MEASUREMENT is available])
514+fi
515+
516+# _NL_PAPER_HEIGHT is an enum and not a define
517+AC_MSG_CHECKING([for _NL_PAPER_HEIGHT])
518+AC_TRY_LINK([#include <langinfo.h>], [
519+char c;
520+c = *((unsigned char *) nl_langinfo(_NL_PAPER_HEIGHT));
521+], gtk_ok=yes, gtk_ok=no)
522+AC_MSG_RESULT($gtk_ok)
523+if test "$gtk_ok" = "yes"; then
524+ AC_DEFINE([HAVE__NL_PAPER_HEIGHT], [1],
525+ [Define if _NL_PAPER_HEIGHT is available])
526+fi
527+
528+# _NL_PAPER_WIDTH is an enum and not a define
529+AC_MSG_CHECKING([for _NL_PAPER_WIDTH])
530+AC_TRY_LINK([#include <langinfo.h>], [
531+char c;
532+c = *((unsigned char *) nl_langinfo(_NL_PAPER_WIDTH));
533+], gtk_ok=yes, gtk_ok=no)
534+AC_MSG_RESULT($gtk_ok)
535+if test "$gtk_ok" = "yes"; then
536+ AC_DEFINE([HAVE__NL_PAPER_WIDTH], [1],
537+ [Define if _NL_PAPER_WIDTH is available])
538+fi
539+
540+# sigsetjmp is a macro on some platforms, so AC_CHECK_FUNCS is not reliable
541+AC_MSG_CHECKING(for sigsetjmp)
542+AC_TRY_LINK([#include <setjmp.h>], [
543+sigjmp_buf env;
544+sigsetjmp(env, 0);
545+], gtk_ok=yes, gtk_ok=no)
546+AC_MSG_RESULT($gtk_ok)
547+if test "$gtk_ok" = "yes"; then
548+ AC_DEFINE(HAVE_SIGSETJMP, 1,
549+ [Define to 1 if sigsetjmp is available])
550+fi
551+
552+# i18n stuff
553+ALL_LINGUAS="`grep -v '^#' "$srcdir/po/LINGUAS" | tr '\n' ' '`"
554+AM_GLIB_GNU_GETTEXT
555+LIBS="$LIBS $INTLLIBS"
556+AC_OUTPUT_COMMANDS([case "$CONFIG_FILES" in *po-properties/Makefile.in*)
557+ sed -e "/POTFILES =/r po-properties/POTFILES" po-properties/Makefile.in > po-properties/Makefile
558+ esac])
559+
560+dnl Snippet below is copied from AM_GLIB_GNU_GETTEXT to generate a first
561+dnl po-properties/POTFILES during configure; see GNOME #573515.
562+dnl
563+dnl Generate list of files to be processed by xgettext which will
564+dnl be included in po-properties/Makefile.
565+test -d po-properties || mkdir po-properties
566+if test "x$srcdir" != "x."; then
567+ if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then
568+ popropsrcprefix="$srcdir/"
569+ else
570+ popropsrcprefix="../$srcdir/"
571+ fi
572+else
573+ popropsrcprefix="../"
574+fi
575+rm -f po-properties/POTFILES
576+sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $popropsrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \
577+< $srcdir/po-properties/POTFILES.in > po-properties/POTFILES
578+dnl (End of adapted AM_GLIB_GNU_GETTEXT snippet.)
579+
580+AM_GLIB_DEFINE_LOCALEDIR(GTK_LOCALEDIR)
581+
582+dnl The DU4 header files don't provide library prototypes unless
583+dnl -std1 is given to the native cc.
584+AC_MSG_CHECKING([for extra flags to get ANSI library prototypes])
585+
586+gtk_save_LIBS=$LIBS
587+LIBS="$LIBS -lm"
588+AC_TRY_RUN([#include <math.h>
589+ int main (void) { return (log(1) != log(1.)); }],
590+ AC_MSG_RESULT(none needed),
591+ gtk_save_CFLAGS="$CFLAGS"
592+ CFLAGS="$CFLAGS -std1"
593+ AC_TRY_RUN([#include <math.h>
594+ int main (void) { return (log(1) != log(1.)); }],
595+ AC_MSG_RESULT(-std1),
596+ AC_MSG_RESULT()
597+ CFLAGS="$gtk_save_CFLAGS"
598+ AC_MSG_WARN(
599+ [No ANSI prototypes found in library. (-std1 didn't work.)]),
600+ true
601+ ),
602+ AC_MSG_RESULT(none needed)
603+)
604+LIBS=$gtk_save_LIBS
605+
606+AC_MSG_CHECKING(for the BeOS)
607+case $host in
608+ *-*-beos*)
609+ AC_MSG_RESULT(yes)
610+ MATH_LIB=
611+ ;;
612+ *)
613+ AC_MSG_RESULT(no)
614+ ;;
615+esac
616+
617+AC_SUBST(MATH_LIB)
618+#
619+# see bug 162979
620+#
621+AC_MSG_CHECKING(for HP-UX)
622+case $host_os in
623+ hpux9* | hpux10* | hpux11*)
624+ AC_MSG_RESULT(yes)
625+ CFLAGS="$CFLAGS -DHPPEX -DSHMLINK"
626+ ;;
627+ *)
628+ AC_MSG_RESULT(no)
629+ ;;
630+esac
631+
632+dnl NeXTStep cc seems to need this
633+AC_MSG_CHECKING([for extra flags for POSIX compliance])
634+AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;],
635+ AC_MSG_RESULT(none needed),
636+ gtk_save_CFLAGS="$CFLAGS"
637+ CFLAGS="$CFLAGS -posix"
638+ AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;],
639+ AC_MSG_RESULT(-posix),
640+ AC_MSG_RESULT()
641+ CFLAGS="$gtk_save_CFLAGS"
642+ AC_MSG_WARN([Could not determine POSIX flag. (-posix didn't work.)])))
643+
644+#
645+# Run AM_PATH_GLIB_2_0 to make sure that GLib is installed and working
646+#
647+
648+GLIB_PACKAGES="gobject-2.0 gio-2.0 gmodule-no-export-2.0"
649+
650+AM_PATH_GLIB_2_0(glib_required_version, :,
651+ AC_MSG_ERROR([
652+*** GLIB glib_required_version or better is required. The latest version of
653+*** GLIB is always available from ftp://ftp.gtk.org/pub/gtk/.]),
654+ gobject gmodule-no-export gthread)
655+
656+# See if it's safe to turn G_DISABLE_DEPRECATED on.
657+GLIB_VERSION_MAJOR_MINOR=`$PKG_CONFIG --modversion glib-2.0 | sed "s/\.@<:@^.@:>@*\$//"`
658+GLIB_REQUIRED_VERSION_MAJOR_MINOR=`echo glib_required_version | sed "s/\.@<:@^.@:>@*\$//"`
659+if test "x$GLIB_VERSION_MAJOR_MINOR" = "x$GLIB_REQUIRED_VERSION_MAJOR_MINOR"; then
660+ CFLAGS="-DG_DISABLE_DEPRECATED $CFLAGS"
661+fi
662+
663+CFLAGS="-DGDK_PIXBUF_DISABLE_DEPRECATED $CFLAGS"
664+
665+
666+dnl
667+dnl Check for bind_textdomain_codeset, including -lintl if GLib brings it in.
668+dnl
669+gtk_save_LIBS=$LIBS
670+LIBS="$LIBS $GLIB_LIBS"
671+AC_CHECK_FUNCS(bind_textdomain_codeset)
672+LIBS=$gtk_save_LIBS
673+
674+AC_CHECK_HEADERS(pwd.h,
675+ AC_DEFINE(HAVE_PWD_H, 1,
676+ [Define to 1 if pwd.h is available]))
677+AC_CHECK_HEADERS(sys/time.h,
678+ AC_DEFINE(HAVE_SYS_TIME_H, 1,
679+ [Define to 1 if time.h is available]))
680+AC_CHECK_HEADERS(unistd.h,
681+ AC_DEFINE(HAVE_UNISTD_H, 1,
682+ [Define to 1 if unistd.h is available]))
683+AC_CHECK_HEADERS(ftw.h,
684+ AC_DEFINE(HAVE_FTW_H, 1,
685+ [Define to 1 if ftw.h is available]))
686+
687+AC_MSG_CHECKING([for GNU ftw extensions])
688+AC_TRY_COMPILE([#define _XOPEN_SOURCE 500
689+#define _GNU_SOURCE
690+#include <ftw.h>], [int flags = FTW_ACTIONRETVAL;], gtk_ok=yes, gtk_ok=no)
691+if test $gtk_ok = yes; then
692+ AC_MSG_RESULT([yes])
693+ AC_DEFINE(HAVE_GNU_FTW, 1, [Have GNU ftw])
694+else
695+ AC_MSG_RESULT([no])
696+fi
697+
698+saved_cflags="$CFLAGS"
699+saved_ldflags="$LDFLAGS"
700+
701+
702+# Checks for header files.
703+AC_HEADER_STDC
704+
705+# Checks for typedefs, structures, and compiler characteristics.
706+AC_C_CONST
707+
708+# Checks for library functions.
709+AC_TYPE_SIGNAL
710+AC_FUNC_MMAP
711+
712+AC_CHECK_FUNCS(mallinfo)
713+AC_CHECK_FUNCS(getresuid)
714+AC_TYPE_UID_T
715+
716+# Check if <sys/select.h> needs to be included for fd_set
717+AC_MSG_CHECKING([for fd_set])
718+AC_TRY_COMPILE([#include <sys/types.h>],
719+ [fd_set readMask, writeMask;], gtk_ok=yes, gtk_ok=no)
720+if test $gtk_ok = yes; then
721+ AC_MSG_RESULT([yes, found in sys/types.h])
722+else
723+ AC_HEADER_EGREP(fd_mask, sys/select.h, gtk_ok=yes)
724+ if test $gtk_ok = yes; then
725+ AC_DEFINE(HAVE_SYS_SELECT_H, 1,
726+ [Define to 1 if sys/select.h is available])
727+ AC_MSG_RESULT([yes, found in sys/select.h])
728+ else
729+ AC_DEFINE(NO_FD_SET, 1,
730+ [Define to 1 if fd_set is not available])
731+ AC_MSG_RESULT(no)
732+ fi
733+fi
734+
735+# `widechar' tests for gdki18n.h
736+AC_MSG_CHECKING(for wchar.h)
737+AC_TRY_CPP([#include <wchar.h>], gdk_wchar_h=yes, gdk_wchar_h=no)
738+if test $gdk_wchar_h = yes; then
739+ AC_DEFINE(HAVE_WCHAR_H, 1, [Have wchar.h include file])
740+fi
741+AC_MSG_RESULT($gdk_wchar_h)
742+
743+# Check for wctype.h (for iswalnum)
744+AC_MSG_CHECKING(for wctype.h)
745+AC_TRY_CPP([#include <wctype.h>], gdk_wctype_h=yes, gdk_wctype_h=no)
746+if test $gdk_wctype_h = yes; then
747+ AC_DEFINE(HAVE_WCTYPE_H, 1, [Have wctype.h include file])
748+fi
749+AC_MSG_RESULT($gdk_wctype_h)
750+
751+# in Solaris 2.5, `iswalnum' is in -lw
752+GDK_WLIBS=
753+AC_CHECK_FUNC(iswalnum,,[AC_CHECK_LIB(w,iswalnum,GDK_WLIBS=-lw)])
754+
755+oLIBS="$LIBS"
756+LIBS="$LIBS $GDK_WLIBS"
757+# The following is necessary for Linux libc-5.4.38
758+AC_MSG_CHECKING(if iswalnum() and friends are properly defined)
759+AC_TRY_LINK([#include <stdlib.h>],[
760+#if (defined(HAVE_WCTYPE_H) || defined(HAVE_WCHAR_H))
761+# ifdef HAVE_WCTYPE_H
762+# include <wctype.h>
763+# else
764+# ifdef HAVE_WCHAR_H
765+# include <wchar.h>
766+# endif
767+# endif
768+#else
769+# define iswalnum(c) ((wchar_t)(c) <= 0xFF && isalnum(c))
770+#endif
771+iswalnum((wchar_t) 0);
772+], gdk_working_wctype=yes, gdk_working_wctype=no)
773+LIBS="$oLIBS"
774+
775+if test $gdk_working_wctype = no; then
776+ AC_DEFINE(HAVE_BROKEN_WCTYPE, 1, [Is the wctype implementation broken])
777+ GDK_WLIBS=
778+fi
779+AC_MSG_RESULT($gdk_working_wctype)
780+AC_SUBST(GDK_WLIBS)
781+
782+# Check for uxtheme.h (for MS-Windows Engine)
783+AC_MSG_CHECKING(for uxtheme.h)
784+AC_TRY_CPP([#include <uxtheme.h>], gtk_uxtheme_h=yes, gtk_uxtheme_h=no)
785+if test $gtk_uxtheme_h = yes; then
786+ AC_DEFINE(HAVE_UXTHEME_H, 1, [Have uxtheme.h include file])
787+fi
788+AC_MSG_RESULT($gtk_uxtheme_h)
789+
790+# Checks for gdkspawn
791+AC_CHECK_HEADERS(crt_externs.h)
792+AC_CHECK_FUNCS(_NSGetEnviron)
793+
794+AC_MSG_CHECKING(whether to build dynamic modules)
795+
796+AC_ARG_ENABLE(modules,
797+ [AC_HELP_STRING([--disable-modules],
798+ [disable dynamic module loading])])
799+
800+dynworks=false
801+deps=
802+if test x$enable_modules = xno; then
803+ AC_MSG_RESULT(no)
804+else
805+ AC_MSG_RESULT(yes)
806+ AC_MSG_CHECKING(whether dynamic modules work)
807+ ## for loop is to strip newline
808+ tmp=`$PKG_CONFIG --variable=gmodule_supported gmodule-no-export-2.0`
809+ for I in $tmp; do
810+ dynworks=$I
811+ done
812+
813+ dnl Now we check to see if our libtool supports shared lib deps
814+ dnl (in a rather ugly way even)
815+ if $dynworks; then
816+ module_libtool_config="${CONFIG_SHELL-/bin/sh} ./libtool --config"
817+ module_deplibs_check=`$module_libtool_config | \
818+ grep '^[[a-z_]]*check[[a-z_]]*_method=[['\''"]]' | \
819+ sed 's/.*[['\''"]]\(.*\)[['\''"]]$/\1/'`
820+ if test "x$module_deplibs_check" = "xnone" || \
821+ test "x$module_deplibs_check" = "xunknown" || \
822+ test "x$module_deplibs_check" = "x"; then
823+ dynworks=false
824+ fi
825+ fi
826+
827+ if $dynworks; then
828+ AC_DEFINE(USE_GMODULE, 1,
829+ [Define to 1 if gmodule works and should be used])
830+ AC_MSG_RESULT(yes)
831+ else
832+ AC_MSG_RESULT(no)
833+ fi
834+fi
835+
836+AM_CONDITIONAL(BUILD_DYNAMIC_MODULES, $dynworks)
837+
838+#
839+# Allow building some or all immodules included
840+#
841+AC_MSG_CHECKING(immodules to build)
842+
843+dnl due to an autoconf bug, commas in the first arg to
844+dnl AC_HELP_STRING cause problems.
845+dnl AC_HELP_STRING([--with-included-immodules=MODULE1 MODULE2 ...],
846+dnl [build the specified input method modules into gtk])
847+AC_ARG_WITH(included_immodules,
848+[ --with-included-immodules=MODULE1,MODULE2,...
849+ build the specified input methods into gtk])
850+
851+if $dynworks; then
852+ :
853+else
854+ ## if the option was specified, leave it; otherwise disable included immodules
855+ if test x$with_included_immodules = xno; then
856+ with_included_immodules=yes
857+ fi
858+fi
859+
860+all_immodules="am-et,cedilla,cyrillic-translit"
861+if test "$gdktarget" = "win32"; then
862+ all_immodules="${all_immodules},ime"
863+fi
864+all_immodules="${all_immodules},inuktitut,ipa,multipress,thai,ti-er,ti-et,viqr"
865+if test "$gdktarget" = "x11"; then
866+ all_immodules="${all_immodules},xim"
867+fi
868+
869+included_immodules=""
870+# If the switch specified without listing any specific ones, include all
871+if test "x$with_included_immodules" = xyes ; then
872+ included_immodules="$all_immodules"
873+else
874+ included_immodules="$with_included_immodules"
875+fi
876+
877+AC_MSG_RESULT($included_immodules)
878+AM_CONDITIONAL(HAVE_INCLUDED_IMMMODULES, test "x$included_immodules" != x)
879+
880+INCLUDED_IMMODULE_OBJ=
881+INCLUDED_IMMODULE_DEFINE=
882+
883+IFS="${IFS= }"; gtk_save_ifs="$IFS"; IFS=","
884+for immodule in $included_immodules; do
885+ immodule_underscores=`echo $immodule | sed -e 's/-/_/g'`
886+ if echo "$all_immodules" | egrep "(^|,)$immodule(\$|,)" > /dev/null; then
887+ :
888+ else
889+ AC_MSG_ERROR([the specified input method $immodule does not exist])
890+ fi
891+
892+ INCLUDED_IMMODULE_OBJ="$INCLUDED_IMMODULE_OBJ ../modules/input/libstatic-im-$immodule.la"
893+ INCLUDED_IMMODULE_DEFINE="$INCLUDED_IMMODULE_DEFINE -DINCLUDE_IM_$immodule_underscores"
894+ eval INCLUDE_$immodule_underscores=yes
895+done
896+IFS="$gtk_save_ifs"
897+AC_SUBST(INCLUDED_IMMODULE_OBJ)
898+AC_SUBST(INCLUDED_IMMODULE_DEFINE)
899+
900+AM_CONDITIONAL(INCLUDE_IM_AM_ET, [test x"$INCLUDE_am_et" = xyes])
901+AM_CONDITIONAL(INCLUDE_IM_CEDILLA, [test x"$INCLUDE_cedilla" = xyes])
902+AM_CONDITIONAL(INCLUDE_IM_CYRILLIC_TRANSLIT, [test x"$INCLUDE_cyrillic_translit" = xyes])
903+AM_CONDITIONAL(INCLUDE_IM_IME, [test x"$INCLUDE_ime" = xyes])
904+AM_CONDITIONAL(INCLUDE_IM_INUKTITUT, [test x"$INCLUDE_inuktitut" = xyes])
905+AM_CONDITIONAL(INCLUDE_IM_IPA, [test x"$INCLUDE_ipa" = xyes])
906+AM_CONDITIONAL(INCLUDE_IM_MULTIPRESS, [test x"$INCLUDE_multipress" = xyes])
907+AM_CONDITIONAL(INCLUDE_IM_THAI, [test x"$INCLUDE_thai" = xyes])
908+AM_CONDITIONAL(INCLUDE_IM_TI_ER, [test x"$INCLUDE_ti_er" = xyes])
909+AM_CONDITIONAL(INCLUDE_IM_TI_ET, [test x"$INCLUDE_ti_et" = xyes])
910+AM_CONDITIONAL(INCLUDE_IM_VIQR, [test x"$INCLUDE_viqr" = xyes])
911+AM_CONDITIONAL(INCLUDE_IM_XIM, [test x"$INCLUDE_xim" = xyes])
912+
913+AC_HEADER_SYS_WAIT
914+
915+AC_TYPE_SIGNAL
916+
917+# Checks to see whether we should include mediaLib
918+# support.
919+#
920+AC_CHECK_HEADER(sys/systeminfo.h,
921+ AC_DEFINE(HAVE_SYS_SYSTEMINFO_H, 1,
922+ [Define to 1 if sys/systeminfo.h is available]))
923+AC_CHECK_HEADER(sys/sysinfo.h,
924+ AC_DEFINE(HAVE_SYS_SYSINFO_H, 1,
925+ [Define to 1 if sys/sysinfo.h is available]))
926+
927+AC_MSG_CHECKING(for mediaLib 2.3)
928+use_mlib25=no
929+# Check for a mediaLib 2.3 function since that is what the GTK+ mediaLib
930+# patch requires.
931+AC_CHECK_LIB(mlib, mlib_ImageSetStruct, use_mlib=yes, use_mlib=no)
932+if test $use_mlib = yes; then
933+ AC_DEFINE(USE_MEDIALIB, 1,
934+ [Define to 1 if medialib is available and should be used])
935+ MEDIA_LIB=-lmlib
936+
937+ AC_MSG_CHECKING(for mediaLib 2.5)
938+ # Check for a mediaLib 2.5 function since that is what is needed for
939+ # gdk_rgb_convert integration.
940+ AC_CHECK_LIB(mlib, mlib_VideoColorRGBint_to_BGRAint, use_mlib25=yes, use_mlib25=no)
941+ if test $use_mlib25 = yes; then
942+ AC_DEFINE(USE_MEDIALIB25, 1,
943+ [Define to 1 if medialib 2.5 is available])
944+ fi
945+fi
946+AM_CONDITIONAL(USE_MEDIALIB, test $use_mlib = yes)
947+AM_CONDITIONAL(USE_MEDIALIB25, test $use_mlib25 = yes)
948+
949+dnl Look for a host system's gdk-pixbuf-csource if we are cross-compiling
950+
951+AM_CONDITIONAL(CROSS_COMPILING, test $cross_compiling = yes)
952+
953+if test $cross_compiling = yes; then
954+ AC_PATH_PROG(GTK_UPDATE_ICON_CACHE, gtk-update-icon-cache, no)
955+ if test x$GTK_UPDATE_ICON_CACHE = xno; then
956+ REBUILD_PNGS=#
957+ fi
958+fi
959+
960+AC_PATH_PROG(GDK_PIXBUF_CSOURCE, gdk-pixbuf-csource, no)
961+
962+if test ! -f $srcdir/gtk/gtkbuiltincache.h &&
963+ test "x$REBUILD_PNGS" = "x#" ; then
964+ AC_MSG_ERROR([
965+*** gtkbuiltincache.h is not in the tree, and cannot be built
966+*** because you don't have libpng, or (when cross-compiling) you
967+*** don't have a prebuilt gtk-update-icon-cache on the build system.])
968+fi
969+
970+########################################
971+# Windowing system checks
972+########################################
973+
974+GDK_EXTRA_LIBS="$GDK_WLIBS"
975+GDK_EXTRA_CFLAGS=
976+
977+# GTK+ uses some X calls, so needs to link against X directly
978+GTK_DEP_PACKAGES_FOR_X=
979+GTK_DEP_LIBS_FOR_X=
980+
981+if test "x$gdktarget" = "xx11"; then
982+ X_PACKAGES=fontconfig
983+
984+ #
985+ # We use fontconfig very peripherally when decoding the default
986+ # settings.
987+ #
988+ if $PKG_CONFIG --exists fontconfig; then : ; else
989+ AC_MSG_ERROR([
990+*** fontconfig (http://www.fontconfig.org) is required by the X11 backend.])
991+ fi
992+
993+ #
994+ # Check for basic X packages; we use pkg-config if available
995+ #
996+ if $PKG_CONFIG --exists x11 xext xrender; then
997+ have_base_x_pc=true
998+ X_PACKAGES="$X_PACKAGES x11 xext xrender"
999+ x_libs="`$PKG_CONFIG --libs x11 xext xrender`"
1000+ X_CFLAGS="`$PKG_CONFIG --cflags x11 xext xrender`"
1001+
1002+ # Strip out any .la files that pkg-config might give us (this happens
1003+ # with -uninstalled.pc files)
1004+ x_libs_for_checks=
1005+ for I in $x_libs ; do
1006+ case $I in
1007+ *.la) ;;
1008+ *) x_libs_for_checks="$x_libs_for_checks $I" ;;
1009+ esac
1010+ done
1011+
1012+ GTK_PACKAGES_FOR_X="x11"
1013+ else
1014+ have_base_x_pc=false
1015+ AC_PATH_XTRA
1016+ if test x$no_x = xyes ; then
1017+ AC_MSG_ERROR([X development libraries not found])
1018+ fi
1019+
1020+ x_cflags="$X_CFLAGS"
1021+ x_libs_for_checks="$X_LIBS -lXext -lXrender -lX11 $X_EXTRA_LIBS"
1022+
1023+ GTK_DEP_LIBS_FOR_X="$X_LIBS -lXrender -lX11 $X_EXTRA_LIBS"
1024+ fi
1025+
1026+ # Extra libraries found during checks (-lXinerama, etc), not from pkg-config.
1027+ x_extra_libs=
1028+
1029+ gtk_save_cppflags="$CPPFLAGS"
1030+ CPPFLAGS="$CPPFLAGS $X_CFLAGS"
1031+
1032+ gtk_save_LIBS=$LIBS
1033+ LIBS="$x_libs_for_checks $LIBS"
1034+
1035+ # Sanity check for the X11 and Xext libraries. While everything we need from
1036+ # Xext is optional, the chances a system has *none* of these things is so
1037+ # small that we just unconditionally require it.
1038+ AC_CHECK_FUNC(XOpenDisplay, :,
1039+ AC_MSG_ERROR([*** libX11 not found. Check 'config.log' for more details.]))
1040+ AC_CHECK_FUNC(XextFindDisplay, :,
1041+ AC_MSG_ERROR([*** libXext not found. Check 'config.log' for more details.]))
1042+ AC_CHECK_FUNC(XRenderQueryExtension, :,
1043+ AC_MSG_ERROR([*** libXrender not found. Check 'config.log' for more details.]))
1044+
1045+ # Check for xReply
1046+
1047+ AC_MSG_CHECKING([if <X11/extensions/XIproto.h> is needed for xReply])
1048+ AC_TRY_COMPILE([#include <X11/Xlibint.h>],
1049+ [xReply *rep;],
1050+ [AC_MSG_RESULT([no])],
1051+ [AC_TRY_COMPILE([#include <X11/extensions/XIproto.h>
1052+#include <X11/Xlibint.h>],
1053+ [xReply *rep;],
1054+ [AC_MSG_RESULT([yes])
1055+ AC_DEFINE([NEED_XIPROTO_H_FOR_XREPLY], 1,
1056+ [Define if <X11/extensions/XIproto.h> needed for xReply])],
1057+ [AC_MSG_RESULT([unknown])
1058+ AC_MSG_ERROR([xReply type unavailable. X11 is too old])])])
1059+
1060+ # Check for XConvertCase, XInternAtoms (X11R6 specific)
1061+
1062+ AC_CHECK_FUNCS(XConvertCase XInternAtoms)
1063+
1064+ # Generic X11R6 check needed for XIM support; we could
1065+ # probably use this to replace the above, but we'll
1066+ # leave the separate checks for XConvertCase and XInternAtoms
1067+ # for clarity
1068+
1069+ have_x11r6=false
1070+ AC_CHECK_FUNC(XAddConnectionWatch,
1071+ have_x11r6=true)
1072+
1073+ if $have_x11r6; then
1074+ AC_DEFINE(HAVE_X11R6, 1, [Define if we have X11R6])
1075+ fi
1076+ AM_CONDITIONAL(HAVE_X11R6, $have_x11r6)
1077+
1078+ # Check for XKB support.
1079+
1080+ if test "x$enable_xkb" = "xyes"; then
1081+ AC_MSG_WARN(XKB support explicitly enabled)
1082+ AC_DEFINE(HAVE_XKB, 1, [Define to use XKB extension])
1083+ elif test "x$enable_xkb" = "xmaybe"; then
1084+ AC_CHECK_FUNC(XkbQueryExtension,
1085+ AC_DEFINE(HAVE_XKB, 1, [Define to use XKB extension]))
1086+ else
1087+ AC_MSG_WARN(XKB support explicitly disabled)
1088+ fi
1089+
1090+ # Check for shaped window extension
1091+
1092+ AC_CHECK_FUNC(XShapeCombineMask, :,
1093+ [AC_MSG_ERROR([Shape extension not found, check your development headers])])
1094+
1095+ # X SYNC check
1096+ gtk_save_CFLAGS="$CFLAGS"
1097+ CFLAGS="$CFLAGS $x_cflags"
1098+
1099+ AC_CHECK_FUNC(XSyncQueryExtension,
1100+ [AC_CHECK_HEADER(X11/extensions/sync.h,
1101+ AC_DEFINE(HAVE_XSYNC, 1, [Have the SYNC extension library]),
1102+ :, [#include <X11/Xlib.h>])])
1103+
1104+ CFLAGS="$gtk_save_CFLAGS"
1105+
1106+ # Xshm checks
1107+
1108+ if test "x$enable_shm" = "xyes"; then
1109+ # Check for the XShm extension, normally in Xext
1110+ AC_CHECK_FUNC(XShmAttach,
1111+ :,
1112+ # On AIX, it is in XextSam instead
1113+ [AC_CHECK_LIB(XextSam, XShmAttach,
1114+ [GTK_ADD_LIB(x_extra_libs,XextSam)])])
1115+ fi
1116+
1117+ if test "x$enable_shm" = "xyes"; then
1118+ # Check for shared memory
1119+ AC_CHECK_HEADER(sys/ipc.h,
1120+ AC_DEFINE(HAVE_IPC_H, 1,
1121+ [Define to 1 if ipc.h is available]),
1122+ no_sys_ipc=yes)
1123+ AC_CHECK_HEADER(sys/shm.h,
1124+ AC_DEFINE(HAVE_SHM_H, 1,
1125+ [Define to 1 if shm.h is available]),
1126+ no_sys_shm=yes)
1127+
1128+ # Check for the X shared memory extension header file
1129+ have_xshm=no
1130+ AC_MSG_CHECKING(X11/extensions/XShm.h)
1131+ if test "x$no_xext_lib" = "xyes"; then
1132+ :
1133+ else
1134+ gtk_save_CFLAGS="$CFLAGS"
1135+ CFLAGS="$CFLAGS $x_cflags"
1136+ AC_TRY_COMPILE([
1137+#include <stdlib.h>
1138+#include <sys/types.h>
1139+#include <sys/ipc.h>
1140+#include <sys/shm.h>
1141+#include <X11/Xlib.h>
1142+#include <X11/Xutil.h>
1143+#include <X11/extensions/XShm.h>
1144+], [XShmSegmentInfo *x_shm_info;], have_xshm=yes)
1145+ CFLAGS="$gtk_save_CFLAGS"
1146+ fi
1147+ AC_MSG_RESULT($have_xshm)
1148+ if test $have_xshm = yes ; then
1149+ AC_DEFINE(HAVE_XSHM_H, 1,
1150+ [Define to 1 if xshm.h is available])
1151+ fi
1152+ fi
1153+
1154+ if test "x$enable_xinerama" = "xyes"; then
1155+ # Check for Xinerama extension (Solaris impl or Xfree impl)
1156+ gtk_save_cppflags="$CPPFLAGS"
1157+ CPPFLAGS="$CPPFLAGS $x_cflags"
1158+
1159+ # Check for XFree
1160+ AC_MSG_CHECKING(for Xinerama support on XFree86)
1161+
1162+ have_xfree_xinerama=false
1163+ if $PKG_CONFIG --exists xinerama ; then
1164+ have_xfree_xinerama=true
1165+ X_PACKAGES="$X_PACKAGES xinerama"
1166+ else
1167+ AC_CHECK_LIB(Xinerama, XineramaQueryExtension,
1168+ [AC_CHECK_HEADER(X11/extensions/Xinerama.h,
1169+ [GTK_ADD_LIB(x_extra_libs,Xinerama)
1170+ have_xfree_xinerama=true], :,
1171+ [#include <X11/Xlib.h>])])
1172+ fi
1173+
1174+ if $have_xfree_xinerama ; then
1175+ AC_DEFINE(HAVE_XFREE_XINERAMA, 1,
1176+ [Define to 1 if XFree Xinerama is available])
1177+ AC_DEFINE(HAVE_XINERAMA, 1,
1178+ [Define to 1 is Xinerama is available])
1179+ AC_MSG_RESULT(yes)
1180+ else
1181+ AC_MSG_RESULT(no)
1182+
1183+ case "$host" in
1184+ *-*-solaris*)
1185+ # Check for solaris
1186+ AC_MSG_CHECKING(for Xinerama support on Solaris)
1187+
1188+ have_solaris_xinerama=false
1189+ AC_CHECK_FUNC(XineramaGetInfo,
1190+ [AC_CHECK_HEADER(X11/extensions/xinerama.h,
1191+ [have_solaris_xinerama=true], :,
1192+ [#include <X11/Xlib.h>])])
1193+
1194+ if $have_solaris_xinerama ; then
1195+ AC_DEFINE(HAVE_SOLARIS_XINERAMA, 1,
1196+ [Define to 1 if solaris xinerama is available])
1197+ AC_DEFINE(HAVE_XINERAMA, 1,
1198+ [Define to 1 if xinerama is available])
1199+ AC_MSG_RESULT(yes)
1200+ else
1201+ AC_MSG_RESULT(no)
1202+ fi
1203+ ;;
1204+ *)
1205+ ;;
1206+ esac
1207+ fi
1208+ fi
1209+
1210+ # set up things for XInput
1211+
1212+ if test "x$with_xinput" = "xxfree" || test "x$with_xinput" = "xyes"; then
1213+ AC_DEFINE(XINPUT_XFREE, 1,
1214+ [Define to 1 if XFree XInput should be used])
1215+
1216+ if $PKG_CONFIG --exists xi ; then
1217+ X_PACKAGES="$X_PACKAGES xi"
1218+ else
1219+ GTK_ADD_LIB(x_extra_libs, Xi)
1220+ fi
1221+ else
1222+ AC_DEFINE(XINPUT_NONE, 1,
1223+ [Define to 1 if no XInput should be used])
1224+ fi
1225+
1226+ AM_CONDITIONAL(XINPUT_XFREE, test x$with_xinput = xxfree || test x$with_xinput = xyes)
1227+
1228+ # Check for the RANDR extension
1229+ if $PKG_CONFIG --exists "xrandr >= 1.2.99" ; then
1230+ AC_DEFINE(HAVE_RANDR, 1, [Have the Xrandr extension library])
1231+
1232+ X_PACKAGES="$X_PACKAGES xrandr"
1233+ fi
1234+
1235+ # Checks for Xcursor library
1236+
1237+ if $PKG_CONFIG --exists xcursor ; then
1238+ AC_DEFINE(HAVE_XCURSOR, 1, [Have the Xcursor library])
1239+
1240+ X_PACKAGES="$X_PACKAGES xcursor"
1241+ fi
1242+
1243+ # Checks for XFixes extension
1244+
1245+ if $PKG_CONFIG --exists xfixes ; then
1246+ AC_DEFINE(HAVE_XFIXES, 1, [Have the XFIXES X extension])
1247+
1248+ X_PACKAGES="$X_PACKAGES xfixes"
1249+ GTK_PACKAGES_FOR_X="$GTK_PACKAGES_FOR_X xfixes"
1250+ fi
1251+
1252+ # Checks for Xcomposite extension
1253+
1254+ if $PKG_CONFIG --exists xcomposite ; then
1255+ AC_DEFINE(HAVE_XCOMPOSITE, 1, [Have the XCOMPOSITE X extension])
1256+
1257+ X_PACKAGES="$X_PACKAGES xcomposite"
1258+ GTK_PACKAGES_FOR_X="$GTK_PACKAGES_FOR_X xcomposite"
1259+ fi
1260+
1261+ # Checks for Xdamage extension
1262+
1263+ if $PKG_CONFIG --exists xdamage ; then
1264+ AC_DEFINE(HAVE_XDAMAGE, 1, [Have the XDAMAGE X extension])
1265+
1266+ X_PACKAGES="$X_PACKAGES xdamage"
1267+ GTK_PACKAGES_FOR_X="$GTK_PACKAGES_FOR_X xdamage"
1268+ fi
1269+
1270+ if $have_base_x_pc ; then
1271+ GDK_EXTRA_LIBS="$x_extra_libs"
1272+ else
1273+ GDK_EXTRA_LIBS="$X_LIBS $x_extra_libs -lXext -lX11 $GDK_EXTRA_LIBS"
1274+ fi
1275+
1276+ CPPFLAGS="$gtk_save_cppflags"
1277+ LIBS="$gtk_save_libs"
1278+
1279+ AM_CONDITIONAL(USE_X11, true)
1280+else
1281+ XPACKAGES=
1282+
1283+ AM_CONDITIONAL(XINPUT_XFREE, false)
1284+ AM_CONDITIONAL(USE_X11, false)
1285+ AM_CONDITIONAL(HAVE_X11R6, false)
1286+fi
1287+
1288+if test "x$gdktarget" = "xwin32"; then
1289+ GDK_EXTRA_LIBS="$GDK_EXTRA_LIBS -lgdi32 -limm32 -lshell32 -lole32 -Wl,-luuid"
1290+ AM_CONDITIONAL(USE_WIN32, true)
1291+else
1292+ AM_CONDITIONAL(USE_WIN32, false)
1293+fi
1294+
1295+AC_ARG_ENABLE(quartz-relocation,
1296+ [AS_HELP_STRING([--enable-quartz-relocation],
1297+ [enable bundle-based relocation functions])],
1298+ [quartz_relocation=yes])
1299+
1300+if test "x$gdktarget" = "xquartz"; then
1301+ GDK_EXTRA_LIBS="$GDK_EXTRA_LIBS -framework Cocoa"
1302+ AM_CONDITIONAL(USE_QUARTZ, true)
1303+ if test "x$quartz_relocation" = xyes; then
1304+ AC_DEFINE([QUARTZ_RELOCATION], [1], [Use NSBundle functions to determine load paths for libraries, translations, etc.])
1305+ fi
1306+
1307+else
1308+ AM_CONDITIONAL(USE_QUARTZ, false)
1309+fi
1310+
1311+if test "x$gdktarget" = "xdirectfb"; then
1312+ DIRECTFB_REQUIRED_VERSION=1.0.0
1313+ AC_MSG_CHECKING(for DirectFB)
1314+
1315+ PKG_CHECK_MODULES(DIRECTFB, [directfb >= $DIRECTFB_REQUIRED_VERSION])
1316+ AM_CONDITIONAL(USE_DIRECTFB, true)
1317+else
1318+ AM_CONDITIONAL(USE_DIRECTFB, false)
1319+fi
1320+
1321+
1322+# Check for Pango flags
1323+
1324+if test "x$gdktarget" = "xwin32"; then
1325+ PANGO_PACKAGES="pangowin32 pangocairo"
1326+else
1327+ PANGO_PACKAGES="pango pangocairo"
1328+fi
1329+
1330+AC_MSG_CHECKING(Pango flags)
1331+if $PKG_CONFIG --exists $PANGO_PACKAGES ; then
1332+ PANGO_CFLAGS=`$PKG_CONFIG --cflags $PANGO_PACKAGES`
1333+ PANGO_LIBS=`$PKG_CONFIG --libs $PANGO_PACKAGES`
1334+
1335+ AC_MSG_RESULT($PANGO_CFLAGS $PANGO_LIBS)
1336+else
1337+ AC_MSG_ERROR([
1338+*** Pango not found. Pango built with Cairo support is required
1339+*** to build GTK+. See http://www.pango.org for Pango information.
1340+])
1341+fi
1342+
1343+CFLAGS="$CFLAGS $PANGO_CFLAGS"
1344+
1345+if $PKG_CONFIG --uninstalled $PANGO_PACKAGES; then
1346+ :
1347+else
1348+ gtk_save_LIBS="$LIBS"
1349+ LIBS="$PANGO_LIBS $LIBS"
1350+ AC_TRY_LINK_FUNC(pango_context_new, :, AC_MSG_ERROR([
1351+*** Can't link to Pango. Pango is required to build
1352+*** GTK+. For more information see http://www.pango.org]))
1353+ LIBS="$gtk_save_LIBS"
1354+fi
1355+
1356+CFLAGS="$saved_cflags"
1357+LDFLAGS="$saved_ldflags"
1358+
1359+# Pull in gio-unix for GDesktopAppInfo usage, see at least gdkapplaunchcontext-x11.c
1360+if test "x$gdktarget" = "xx11"; then
1361+ GDK_PACKAGES="$PANGO_PACKAGES gio-unix-2.0 $X_PACKAGES gdk-pixbuf-2.0 cairo-$cairo_backend"
1362+else
1363+ GDK_PACKAGES="$PANGO_PACKAGES gio-2.0 gdk-pixbuf-2.0 cairo-$cairo_backend"
1364+fi
1365+
1366+GDK_DEP_LIBS="$GDK_EXTRA_LIBS `$PKG_CONFIG --libs $GDK_PACKAGES` $MATH_LIB"
1367+GDK_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PACKAGES` $GDK_EXTRA_CFLAGS"
1368+#
1369+# If we aren't writing explicit dependencies, then don't put the extra libraries we need
1370+# into the pkg-config files
1371+#
1372+if test $enable_explicit_deps != yes ; then
1373+ GDK_PACKAGES="$PANGO_PACKAGES gdk-pixbuf-2.0"
1374+ GDK_EXTRA_LIBS=
1375+fi
1376+
1377+AC_SUBST(GDK_PACKAGES)
1378+AC_SUBST(GDK_EXTRA_LIBS)
1379+AC_SUBST(GDK_EXTRA_CFLAGS)
1380+AC_SUBST(GDK_DEP_LIBS)
1381+AC_SUBST(GDK_DEP_CFLAGS)
1382+
1383+
1384+########################################
1385+# Check for Accessibility Toolkit flags
1386+########################################
1387+
1388+ATK_PACKAGES=atk
1389+AC_MSG_CHECKING(ATK flags)
1390+if $PKG_CONFIG --exists $ATK_PACKAGES ; then
1391+ ATK_CFLAGS=`$PKG_CONFIG --cflags $ATK_PACKAGES`
1392+ ATK_LIBS=`$PKG_CONFIG --libs $ATK_PACKAGES`
1393+
1394+ AC_MSG_RESULT($ATK_CFLAGS $ATK_LIBS)
1395+else
1396+ AC_MSG_ERROR([
1397+*** Accessibility Toolkit not found. Accessibility Toolkit is required
1398+*** to build GTK+.
1399+])
1400+fi
1401+
1402+if $PKG_CONFIG --uninstalled $ATK_PACKAGES; then
1403+ :
1404+else
1405+ gtk_save_LIBS="$LIBS"
1406+ LIBS="$ATK_LIBS $LIBS"
1407+ AC_TRY_LINK_FUNC(atk_object_get_type, : , AC_MSG_ERROR([
1408+ *** Cannot link to Accessibility Toolkit. Accessibility Toolkit is required
1409+ *** to build GTK+]))
1410+ LIBS="$gtk_save_LIBS"
1411+fi
1412+
1413+GTK_PACKAGES="atk cairo gdk-pixbuf-2.0 gio-2.0"
1414+if test "x$gdktarget" = "xx11"; then
1415+ GTK_PACKAGES="$GTK_PACKAGES pangoft2"
1416+fi
1417+GTK_EXTRA_LIBS=
1418+GTK_EXTRA_CFLAGS=
1419+GTK_DEP_LIBS="$GDK_EXTRA_LIBS $GTK_DEP_LIBS_FOR_X `$PKG_CONFIG --libs $PANGO_PACKAGES $GTK_PACKAGES_FOR_X $GTK_PACKAGES` $GTK_EXTRA_LIBS $MATH_LIB"
1420+GTK_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PACKAGES $GTK_PACKAGES` $GDK_EXTRA_CFLAGS $GTK_EXTRA_CFLAGS"
1421+
1422+if test x"$os_win32" = xyes; then
1423+ GTK_EXTRA_CFLAGS="$msnative_struct"
1424+fi
1425+
1426+GLIB_PREFIX="`$PKG_CONFIG --variable=prefix glib-2.0`"
1427+ATK_PREFIX="`$PKG_CONFIG --variable=prefix atk`"
1428+PANGO_PREFIX="`$PKG_CONFIG --variable=prefix pango`"
1429+CAIRO_PREFIX="`pkg-config --variable=prefix cairo`"
1430+
1431+AC_SUBST(GTK_PACKAGES)
1432+AC_SUBST(GTK_EXTRA_LIBS)
1433+AC_SUBST(GTK_EXTRA_CFLAGS)
1434+AC_SUBST(GTK_DEP_LIBS)
1435+AC_SUBST(GTK_DEP_CFLAGS)
1436+
1437+AC_SUBST(GLIB_PREFIX)
1438+AC_SUBST(ATK_PREFIX)
1439+AC_SUBST(PANGO_PREFIX)
1440+AC_SUBST(CAIRO_PREFIX)
1441+
1442+AC_SUBST(GTK_DEBUG_FLAGS)
1443+AC_SUBST(GTK_XIM_FLAGS)
1444+
1445+GDK_PIXBUF_LIBS=`$PKG_CONFIG --libs gdk-pixbuf-2.0`
1446+AC_SUBST(GDK_PIXBUF_LIBS)
1447+
1448+########################
1449+# Checks needed for gail
1450+########################
1451+
1452+old_LIBS="$LIBS"
1453+dnl Checks for inet libraries:
1454+AC_SEARCH_LIBS(gethostent, nsl)
1455+AC_SEARCH_LIBS(setsockopt, socket)
1456+AC_SEARCH_LIBS(connect, inet)
1457+
1458+dnl check for the sockaddr_un.sun_len member
1459+AC_CHECK_MEMBER([struct sockaddr_un.sun_len],
1460+ [struct_sockaddr_un_sun_len=true],
1461+ [struct_sockaddr_un_suin_len=false],
1462+ [#include <sys/types.h>
1463+ #include <sys/un.h>]
1464+ )
1465+case $struct_sockaddr_un_sun_len in
1466+ true)
1467+ AC_DEFINE_UNQUOTED(HAVE_SOCKADDR_UN_SUN_LEN, 1,
1468+ [Have the sockaddr_un.sun_len member])
1469+ ;;
1470+ *)
1471+ ;;
1472+esac
1473+
1474+GAIL_INET_LIBS="$LIBS"
1475+AC_SUBST([GAIL_INET_LIBS])
1476+
1477+LIBS="$old_LIBS"
1478+
1479+################################################################
1480+# Printing system checks
1481+################################################################
1482+
1483+AC_ARG_ENABLE(cups,
1484+ [AC_HELP_STRING([--disable-cups]
1485+ [disable cups print backend])],,
1486+ [enable_cups=auto])
1487+
1488+if test "x$enable_cups" = "xno"; then
1489+ AM_CONDITIONAL(HAVE_CUPS, false)
1490+else
1491+ AC_PATH_PROG(CUPS_CONFIG, cups-config, no)
1492+ if test "x$CUPS_CONFIG" = "xno"; then
1493+ if test "x$enable_cups" = "xauto"; then
1494+ AM_CONDITIONAL(HAVE_CUPS, false)
1495+ else
1496+ AC_MSG_ERROR([
1497+*** cups not found.
1498+])
1499+ fi
1500+ else
1501+ CUPS_CFLAGS=`$CUPS_CONFIG --cflags | sed 's/-O[0-9]*//' | sed 's/-m[^\t]*//g'`
1502+ CUPS_LIBS=`$CUPS_CONFIG --libs`
1503+
1504+ CUPS_API_VERSION=`$CUPS_CONFIG --api-version`
1505+ CUPS_API_MAJOR=`echo $ECHO_N $CUPS_API_VERSION | awk -F. '{print $1}'`
1506+ CUPS_API_MINOR=`echo $ECHO_N $CUPS_API_VERSION | awk -F. '{print $2}'`
1507+
1508+ if test $CUPS_API_MAJOR -gt 1 -o \
1509+ $CUPS_API_MAJOR -eq 1 -a $CUPS_API_MINOR -ge 2; then
1510+ AC_DEFINE(HAVE_CUPS_API_1_2, 1,
1511+ [Define to 1 if CUPS 1.2 API is available])
1512+ fi
1513+ if test $CUPS_API_MAJOR -gt 1 -o \
1514+ $CUPS_API_MAJOR -eq 1 -a $CUPS_API_MINOR -ge 6; then
1515+ AC_DEFINE(HAVE_CUPS_API_1_6, 1,
1516+ [Define to 1 if CUPS 1.6 API is available])
1517+
1518+ fi
1519+
1520+ AC_SUBST(CUPS_API_MAJOR)
1521+ AC_SUBST(CUPS_API_MINOR)
1522+ AC_SUBST(CUPS_CFLAGS)
1523+ AC_SUBST(CUPS_LIBS)
1524+
1525+ AC_CHECK_HEADER(cups/cups.h,,AC_MSG_ERROR([[*** Sorry, cups-config present but cups/cups.h missing.]]))
1526+
1527+ AM_CONDITIONAL(HAVE_CUPS, true)
1528+
1529+ gtk_save_cflags="$CFLAGS"
1530+ CFLAGS="$CUPS_CFLAGS"
1531+ AC_TRY_COMPILE([#include <cups/http.h>],
1532+ [http_t http; char *s = http.authstring;],
1533+ [AC_DEFINE(HAVE_HTTP_AUTHSTRING, [],
1534+ [Define if cups http_t authstring field is accessible])],)
1535+ CFLAGS="$gtk_save_cflags"
1536+
1537+ AC_SUBST(HAVE_HTTP_AUTHSTRING)
1538+
1539+ gtk_save_libs="$LIBS"
1540+ LIBS="$CUPS_LIBS"
1541+ AC_CHECK_FUNCS(httpGetAuthString)
1542+ LIBS="$gtk_save_libs"
1543+ fi
1544+fi
1545+
1546+# Checks to see if we should compile with PAPI backend for GTK+
1547+#
1548+
1549+AC_ARG_ENABLE(papi,
1550+ [AC_HELP_STRING([--disable-papi]
1551+ [disable papi print backend])],,
1552+ [enable_papi=auto])
1553+
1554+if test "x$enable_papi" = "xno"; then
1555+ AM_CONDITIONAL(HAVE_PAPI, false)
1556+else
1557+ AC_MSG_CHECKING(libpapi)
1558+ AC_CHECK_LIB(papi, papiServiceCreate, have_papi=yes, have_papi=no)
1559+ if test $have_papi = yes; then
1560+ AC_DEFINE([HAVE_PAPI], [], [Define to 1 if libpapi available])
1561+ fi
1562+ AM_CONDITIONAL(HAVE_PAPI, test $have_papi = yes)
1563+ if test "x$enable_papi" = "xyes" -a "x$have_papi" = "xno"; then
1564+ AC_MSG_ERROR([
1565+*** papi not found.
1566+])
1567+ fi
1568+fi
1569+
1570+AM_CONDITIONAL(HAVE_PAPI_CUPS, test "x$have_papi" = "xyes" -a "x$CUPS_CONFIG" != "xno")
1571+
1572+gtk_save_cppflags="$CPPFLAGS"
1573+CPPFLAGS="$CPPFLAGS $GTK_DEP_CFLAGS $GDK_DEP_CFLAGS"
1574+
1575+AC_CHECK_HEADER(cairo-pdf.h,,AC_MSG_ERROR([
1576+*** Can't find cairo-pdf.h. You must build Cairo with the pdf
1577+*** backend enabled.]))
1578+
1579+if test "$os_win32" != "yes"; then
1580+ AC_CHECK_HEADER(cairo-ps.h,,AC_MSG_ERROR([
1581+*** Can't find cairo-ps.h. You must build Cairo with the
1582+*** postscript backend enabled.]))
1583+
1584+ AC_CHECK_HEADER(cairo-svg.h,,AC_MSG_ERROR([
1585+*** Can't find cairo-svg.h. You must build Cairo with the
1586+*** svg backend enabled.]))
1587+fi
1588+
1589+CPPFLAGS="$gtk_save_cppflags"
1590+
1591+
1592+AC_ARG_ENABLE(test-print-backend,
1593+ [AC_HELP_STRING([--enable-test-print-backend],
1594+ [build test print backend])],,
1595+ [enable_test_print_backend=no])
1596+AM_CONDITIONAL(TEST_PRINT_BACKEND, test "x$enable_test_print_backend" != "xno")
1597+
1598+if test "$os_win32" = "yes"; then
1599+ AC_CHECK_TYPES([IPrintDialogCallback],[],[],[[#include <windows.h>]])
1600+fi
1601+
1602+################################################################
1603+# Strip -export-dynamic from the link lines of various libraries
1604+################################################################
1605+
1606+#
1607+# pkg-config --libs gmodule includes the "export_dynamic" flag,
1608+# but this flag is only meaningful for executables. For libraries
1609+# the effect is undefined; what it causes on Linux is that the
1610+# export list from -export-symbols-regex is ignored and everything
1611+# is exported
1612+#
1613+# We are using gmodule-no-export now, but I'm leaving the stripping
1614+# code in place for now, since pango and atk still require gmodule.
1615+export SED
1616+export_dynamic=`(./libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh`
1617+if test -n "$export_dynamic"; then
1618+ GDK_DEP_LIBS=`echo $GDK_DEP_LIBS | sed -e "s/$export_dynamic//"`
1619+ GTK_DEP_LIBS=`echo $GTK_DEP_LIBS | sed -e "s/$export_dynamic//"`
1620+fi
1621+
1622+##################################################
1623+# GObject introspection
1624+##################################################
1625+
1626+GOBJECT_INTROSPECTION_CHECK([0.9.3])
1627+
1628+##################################################
1629+# Checks for gtk-doc and docbook-tools
1630+##################################################
1631+
1632+GTK_DOC_CHECK([1.11])
1633+
1634+AC_CHECK_PROG(DB2HTML, db2html, true, false)
1635+AM_CONDITIONAL(HAVE_DOCBOOK, $DB2HTML)
1636+
1637+AC_ARG_ENABLE(man,
1638+ [AC_HELP_STRING([--enable-man],
1639+ [regenerate man pages from Docbook [default=no]])],enable_man=yes,
1640+ enable_man=no)
1641+
1642+if test "${enable_man}" != no; then
1643+ dnl
1644+ dnl Check for xsltproc
1645+ dnl
1646+ AC_PATH_PROG([XSLTPROC], [xsltproc])
1647+ if test -z "$XSLTPROC"; then
1648+ enable_man=no
1649+ fi
1650+
1651+ dnl check for DocBook DTD and stylesheets in the local catalog.
1652+ JH_CHECK_XML_CATALOG([-//OASIS//DTD DocBook XML V4.1.2//EN],
1653+ [DocBook XML DTD V4.1.2],,enable_man=no)
1654+ JH_CHECK_XML_CATALOG([http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl],
1655+ [DocBook XSL Stylesheets],,enable_man=no)
1656+fi
1657+
1658+AM_CONDITIONAL(ENABLE_MAN, test x$enable_man != xno)
1659+
1660+
1661+##################################################
1662+# Output commands
1663+##################################################
1664+
1665+AC_CONFIG_COMMANDS([gdk/gdkconfig.h], [
1666+ outfile=gdkconfig.h-tmp
1667+ cat > $outfile <<\_______EOF
1668+/* gdkconfig.h
1669+ *
1670+ * This is a generated file. Please modify `configure.in'
1671+ */
1672+
1673+#ifndef GDKCONFIG_H
1674+#define GDKCONFIG_H
1675+
1676+#ifdef __cplusplus
1677+extern "C" {
1678+#endif /* __cplusplus */
1679+
1680+#ifndef GSEAL
1681+/* introduce GSEAL() here for all of Gdk and Gtk+ without the need to modify GLib */
1682+# ifdef GSEAL_ENABLE
1683+# define GSEAL(ident) _g_sealed__ ## ident
1684+# else
1685+# define GSEAL(ident) ident
1686+# endif
1687+#endif /* !GSEAL */
1688+
1689+_______EOF
1690+
1691+ cat >>$outfile <<_______EOF
1692+$gdk_windowing
1693+$gdk_wc
1694+_______EOF
1695+
1696+ cat >>$outfile <<_______EOF
1697+
1698+#ifdef __cplusplus
1699+}
1700+#endif /* __cplusplus */
1701+
1702+#endif /* GDKCONFIG_H */
1703+_______EOF
1704+
1705+
1706+ if cmp -s $outfile gdk/gdkconfig.h; then
1707+ AC_MSG_NOTICE([gdk/gdkconfig.h is unchanged])
1708+ rm -f $outfile
1709+ else
1710+ mv $outfile gdk/gdkconfig.h
1711+ fi
1712+],[
1713+if test "x$gdktarget" = "xx11" ; then
1714+ gdk_windowing='
1715+#define GDK_WINDOWING_X11'
1716+elif test "x$gdktarget" = "xwin32" ; then
1717+ gdk_windowing='
1718+#define GDK_NATIVE_WINDOW_POINTER
1719+
1720+#define GDK_WINDOWING_WIN32'
1721+elif test "x$gdktarget" = "xquartz" ; then
1722+ gdk_windowing='
1723+#define GDK_WINDOWING_QUARTZ'
1724+elif test "x$gdktarget" = "xdirectfb" ; then
1725+ gdk_windowing='
1726+#define GDK_WINDOWING_DIRECTFB'
1727+fi
1728+
1729+if test x$gdk_wchar_h = xyes; then
1730+ gdk_wc='
1731+#define GDK_HAVE_WCHAR_H 1'
1732+fi
1733+if test x$gdk_wctype_h = xyes; then
1734+ gdk_wc="\$gdk_wc
1735+#define GDK_HAVE_WCTYPE_H 1"
1736+fi
1737+if test x$gdk_working_wctype = xno; then
1738+ gdk_wc="\$gdk_wc
1739+#define GDK_HAVE_BROKEN_WCTYPE 1"
1740+fi
1741+
1742+
1743+])
1744+
1745+AC_CONFIG_FILES([
1746+config.h.win32
1747+gtk-zip.sh
1748+Makefile
1749+gdk-2.0.pc
1750+gtk+-2.0.pc
1751+gtk+-unix-print-2.0.pc
1752+gail.pc
1753+gdk-2.0-uninstalled.pc
1754+gtk+-2.0-uninstalled.pc
1755+gail-uninstalled.pc
1756+m4macros/Makefile
1757+po/Makefile.in
1758+po-properties/Makefile.in
1759+demos/Makefile
1760+demos/gtk-demo/Makefile
1761+demos/gtk-demo/geninclude.pl
1762+tests/Makefile
1763+docs/Makefile
1764+docs/reference/Makefile
1765+docs/reference/gdk/Makefile
1766+docs/reference/gdk/version.xml
1767+docs/reference/gtk/Makefile
1768+docs/reference/gtk/version.xml
1769+docs/reference/libgail-util/Makefile
1770+docs/faq/Makefile
1771+docs/tools/Makefile
1772+docs/tutorial/Makefile
1773+build/Makefile
1774+build/win32/Makefile
1775+build/win32/vs9/Makefile
1776+build/win32/vs10/Makefile
1777+gdk/Makefile
1778+gdk/x11/Makefile
1779+gdk/win32/Makefile
1780+gdk/win32/rc/Makefile
1781+gdk/win32/rc/gdk.rc
1782+gdk/quartz/Makefile
1783+gdk/directfb/Makefile
1784+gdk/tests/Makefile
1785+gtk/Makefile
1786+gtk/makefile.msc
1787+gtk/gtkversion.h
1788+gtk/gtk-win32.rc
1789+gtk/theme-bits/Makefile
1790+gtk/tests/Makefile
1791+modules/Makefile
1792+modules/other/Makefile
1793+modules/other/gail/Makefile
1794+modules/other/gail/libgail-util/Makefile
1795+modules/other/gail/tests/Makefile
1796+modules/engines/Makefile
1797+modules/engines/pixbuf/Makefile
1798+modules/engines/ms-windows/Makefile
1799+modules/engines/ms-windows/Theme/Makefile
1800+modules/engines/ms-windows/Theme/gtk-2.0/Makefile
1801+modules/input/Makefile
1802+modules/printbackends/Makefile
1803+modules/printbackends/cups/Makefile
1804+modules/printbackends/lpr/Makefile
1805+modules/printbackends/file/Makefile
1806+modules/printbackends/papi/Makefile
1807+modules/printbackends/test/Makefile
1808+perf/Makefile
1809+])
1810+
1811+AC_OUTPUT
1812+
1813+echo "configuration:
1814+ target: $gdktarget"
diff --git a/meta/recipes-gnome/gtk+/gtk+-2.24.24/run-iconcache.patch b/meta/recipes-gnome/gtk+/gtk+-2.24.24/run-iconcache.patch
new file mode 100644
index 0000000000..a4e2254c59
--- /dev/null
+++ b/meta/recipes-gnome/gtk+/gtk+-2.24.24/run-iconcache.patch
@@ -0,0 +1,24 @@
1Upstream-Status: Inappropriate [configuration]
2
3diff -Nurd gtk+-2.24.24/gtk/Makefile.am gtk+-2.24.24/gtk/Makefile.am
4--- gtk+-2.24.24/gtk/Makefile.am 2014-06-23 18:08:14.000000000 +0300
5+++ gtk+-2.24.24/gtk/Makefile.am 2014-09-03 23:45:12.669307700 +0300
6@@ -1391,12 +1391,12 @@
7 ./gtk-update-icon-cache
8 endif
9
10-gtkbuiltincache.h: @REBUILD@ stamp-icons
11- $(MAKE) $(AM_MAKEFLAGS) gtk-update-icon-cache$(EXEEXT) $(GTK_UPDATE_ICON_CACHE_MANIFEST)
12- $(gtk_update_icon_cache_program) --force --ignore-theme-index \
13- --include-image-data \
14- --source builtin_icons stock-icons > gtkbuiltincache.h.tmp && \
15- mv gtkbuiltincache.h.tmp gtkbuiltincache.h
16+#gtkbuiltincache.h: @REBUILD@ stamp-icons
17+# $(MAKE) $(AM_MAKEFLAGS) gtk-update-icon-cache$(EXEEXT) $(GTK_UPDATE_ICON_CACHE_MANIFEST)
18+# $(gtk_update_icon_cache_program) --force --ignore-theme-index \
19+# --include-image-data \
20+# --source builtin_icons stock-icons > gtkbuiltincache.h.tmp && \
21+# mv gtkbuiltincache.h.tmp gtkbuiltincache.h
22
23 EXTRA_DIST += \
24 $(STOCK_ICONS) \
diff --git a/meta/recipes-gnome/gtk+/gtk+-2.24.24/toggle-font.diff b/meta/recipes-gnome/gtk+/gtk+-2.24.24/toggle-font.diff
new file mode 100644
index 0000000000..340d12008b
--- /dev/null
+++ b/meta/recipes-gnome/gtk+/gtk+-2.24.24/toggle-font.diff
@@ -0,0 +1,102 @@
1Upstream-Status: Pending
2
3Index: gtk/gtkcellrenderertoggle.c
4===================================================================
5--- gtk/gtkcellrenderertoggle.c.orig 2010-06-22 18:11:33.000000000 +0800
6+++ gtk/gtkcellrenderertoggle.c 2010-06-22 18:11:43.000000000 +0800
7@@ -71,6 +71,8 @@
8 PROP_INDICATOR_SIZE
9 };
10
11+/* This is a hard-coded default which promptly gets overridden by a size
12+ calculated from the font size. */
13 #define TOGGLE_WIDTH 13
14
15 static guint toggle_cell_signals[LAST_SIGNAL] = { 0 };
16@@ -80,8 +82,9 @@
17 typedef struct _GtkCellRendererTogglePrivate GtkCellRendererTogglePrivate;
18 struct _GtkCellRendererTogglePrivate
19 {
20- gint indicator_size;
21-
22+ gint indicator_size; /* This is the real size */
23+ gint override_size; /* This is the size set from the indicator-size property */
24+ GtkWidget *cached_widget;
25 guint inconsistent : 1;
26 };
27
28@@ -104,6 +107,7 @@
29 GTK_CELL_RENDERER (celltoggle)->ypad = 2;
30
31 priv->indicator_size = TOGGLE_WIDTH;
32+ priv->override_size = 0;
33 priv->inconsistent = FALSE;
34 }
35
36@@ -210,7 +214,7 @@
37 g_value_set_boolean (value, celltoggle->radio);
38 break;
39 case PROP_INDICATOR_SIZE:
40- g_value_set_int (value, priv->indicator_size);
41+ g_value_set_int (value, priv->override_size ? priv->override_size : priv->indicator_size);
42 break;
43 default:
44 G_OBJECT_WARN_INVALID_PROPERTY_ID (object, param_id, pspec);
45@@ -245,7 +249,7 @@
46 celltoggle->radio = g_value_get_boolean (value);
47 break;
48 case PROP_INDICATOR_SIZE:
49- priv->indicator_size = g_value_get_int (value);
50+ priv->override_size = g_value_get_int (value);
51 break;
52 default:
53 G_OBJECT_WARN_INVALID_PROPERTY_ID (object, param_id, pspec);
54@@ -273,6 +277,27 @@
55 }
56
57 static void
58+on_widget_style_set (GtkWidget *widget, GtkStyle *previous, gpointer user_data)
59+{
60+ GtkCellRendererTogglePrivate *priv = user_data;
61+ PangoContext *context;
62+ PangoFontMetrics *metrics;
63+ int height;
64+
65+ context = gtk_widget_get_pango_context (widget);
66+ metrics = pango_context_get_metrics (context,
67+ widget->style->font_desc,
68+ pango_context_get_language (context));
69+
70+ height = pango_font_metrics_get_ascent (metrics) +
71+ pango_font_metrics_get_descent (metrics);
72+
73+ pango_font_metrics_unref (metrics);
74+
75+ priv->indicator_size = PANGO_PIXELS (height * 0.85);
76+}
77+
78+static void
79 gtk_cell_renderer_toggle_get_size (GtkCellRenderer *cell,
80 GtkWidget *widget,
81 GdkRectangle *cell_area,
82@@ -287,6 +312,20 @@
83
84 priv = GTK_CELL_RENDERER_TOGGLE_GET_PRIVATE (cell);
85
86+ if (priv->override_size) {
87+ priv->indicator_size = priv->override_size;
88+ } else if (priv->cached_widget != widget) {
89+ if (priv->cached_widget) {
90+ g_object_remove_weak_pointer (widget, &priv->cached_widget);
91+ g_signal_handlers_disconnect_by_func (priv->cached_widget, on_widget_style_set, priv);
92+ }
93+ priv->cached_widget = widget;
94+ g_object_add_weak_pointer (widget, &priv->cached_widget);
95+ g_signal_connect (widget, "style-set", on_widget_style_set, priv);
96+
97+ on_widget_style_set (widget, NULL, priv);
98+ }
99+
100 calc_width = (gint) cell->xpad * 2 + priv->indicator_size;
101 calc_height = (gint) cell->ypad * 2 + priv->indicator_size;
102
diff --git a/meta/recipes-gnome/gtk+/gtk+-2.24.24/xsettings.patch b/meta/recipes-gnome/gtk+/gtk+-2.24.24/xsettings.patch
new file mode 100644
index 0000000000..d0a970ad4d
--- /dev/null
+++ b/meta/recipes-gnome/gtk+/gtk+-2.24.24/xsettings.patch
@@ -0,0 +1,20 @@
1Upstream-Status: Pending
2
3Index: gtk+-2.21.2/gdk/x11/gdkevents-x11.c
4===================================================================
5--- gtk+-2.21.2.orig/gdk/x11/gdkevents-x11.c 2010-06-22 17:28:04.000000000 +0800
6+++ gtk+-2.21.2/gdk/x11/gdkevents-x11.c 2010-06-22 17:28:06.000000000 +0800
7@@ -3062,10 +3062,9 @@
8 {
9 GdkScreenX11 *screen = data;
10
11- if (xsettings_client_process_event (screen->xsettings_client, (XEvent *)xevent))
12- return GDK_FILTER_REMOVE;
13- else
14- return GDK_FILTER_CONTINUE;
15+ xsettings_client_process_event (screen->xsettings_client, (XEvent *)xevent);
16+
17+ return GDK_FILTER_CONTINUE;
18 }
19
20 static Bool
diff --git a/meta/recipes-gnome/gtk+/gtk+.inc b/meta/recipes-gnome/gtk+/gtk+.inc
new file mode 100644
index 0000000000..1c0558c409
--- /dev/null
+++ b/meta/recipes-gnome/gtk+/gtk+.inc
@@ -0,0 +1,94 @@
1SUMMARY = "Multi-platform toolkit for creating GUIs"
2DESCRIPTION = "GTK+ is a multi-platform toolkit for creating graphical user interfaces. Offering a complete \
3set of widgets, GTK+ is suitable for projects ranging from small one-off projects to complete application suites."
4HOMEPAGE = "http://www.gtk.org"
5BUGTRACKER = "https://bugzilla.gnome.org/"
6
7LICENSE = "LGPLv2 & LGPLv2+ & LGPLv2.1+"
8
9LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7"
10
11SECTION = "libs"
12
13X11DEPENDS = "virtual/libx11 libxext libxcursor libxrandr libxdamage libxrender libxcomposite"
14DEPENDS = "glib-2.0 pango atk jpeg libpng gdk-pixbuf-native docbook-utils-native \
15 cairo gdk-pixbuf"
16
17PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)} \
18 ${@bb.utils.contains('DISTRO_FEATURES', 'directfb', 'directfb', '', d)} \
19"
20
21PACKAGECONFIG[x11] = "--with-x=yes --with-gdktarget=x11,--with-x=no,${X11DEPENDS}"
22# without --with-gdktarget=directfb it will check for cairo-xlib which isn't available without X11 DISTRO_FEATURE
23PACKAGECONFIG[directfb] = "--with-gdktarget=directfb,,directfb"
24
25inherit autotools gtk-doc pkgconfig update-alternatives gtk-immodules-cache
26
27PACKAGES += "libgail gtk-demo"
28
29FILES_${PN} = "${bindir}/gtk-update-icon-cache-2.0 \
30 ${bindir}/gtk-query-immodules-2.0 \
31 ${libdir}/lib*${SOLIBS} \
32 ${datadir}/themes ${sysconfdir} \
33 ${libdir}/gtk-2.0/${LIBV}/engines/libpixmap.so"
34
35FILES_${PN}-dev += " \
36 ${datadir}/gtk-2.0/include \
37 ${libdir}/gtk-2.0/include \
38 ${libdir}/gtk-2.0/modules/*.la \
39 ${libdir}/gtk-2.0/${LIBV}/loaders/*.la \
40 ${libdir}/gtk-2.0/${LIBV}/immodules/*.la \
41 ${libdir}/gtk-2.0/${LIBV}/printbackends/*.la \
42 ${libdir}/gtk-2.0/${LIBV}/engines/*.la \
43 ${bindir}/gtk-builder-convert"
44
45FILES_${PN}-dbg += " \
46 ${libdir}/gtk-2.0/modules/.debug/* \
47 ${libdir}/gtk-2.0/${LIBV}/loaders/.debug/* \
48 ${libdir}/gtk-2.0/${LIBV}/immodules/.debug/* \
49 ${libdir}/gtk-2.0/${LIBV}/engines/.debug/* \
50 ${libdir}/gtk-2.0/${LIBV}/printbackends/.debug/*"
51
52FILES_gtk-demo = " \
53 ${datadir}/gtk-2.0/demo/* \
54 ${bindir}/gtk-demo \
55 "
56
57FILES_libgail = " \
58 ${libdir}/gtk-2.0/modules/libgail.so \
59 ${libdir}/gtk-2.0/modules/libferret.so \
60 "
61
62GTKBASE_RRECOMMENDS ?= "liberation-fonts gdk-pixbuf-loader-png gdk-pixbuf-loader-jpeg gdk-pixbuf-loader-gif gdk-pixbuf-loader-xpm shared-mime-info"
63GTKGLIBC_RRECOMMENDS ?= "${GTKBASE_RRECOMMENDS} glibc-gconv-iso8859-1"
64
65RRECOMMENDS_${PN} = "${GTKBASE_RRECOMMENDS}"
66RRECOMMENDS_${PN}_libc-glibc = "${GTKGLIBC_RRECOMMENDS}"
67
68ALTERNATIVE_${PN} = "gtk-update-icon-cache"
69ALTERNATIVE_TARGET[gtk-update-icon-cache] = "${bindir}/gtk-update-icon-cache-2.0"
70
71do_install () {
72 autotools_do_install
73
74 install -d ${D}${sysconfdir}/gtk-2.0
75
76 mkdir -p ${D}${libdir}/gtk-2.0/include
77 install -m 0644 gdk/gdkconfig.h ${D}${libdir}/gtk-2.0/include/gdkconfig.h
78
79 install -m 0644 ${S}/gtk/gtkfilechooserprivate.h ${D}${includedir}/gtk-2.0/gtk/
80 install -m 0644 ${S}/gtk/gtkfilechooserutils.h ${D}${includedir}/gtk-2.0/gtk/
81 install -m 0644 ${S}/gtk/gtkfilesystemmodel.h ${D}${includedir}/gtk-2.0/gtk/
82
83 mv ${D}${bindir}/gtk-update-icon-cache ${D}${bindir}/gtk-update-icon-cache-2.0
84}
85
86SYSROOT_PREPROCESS_FUNCS += "gtk_sysroot_preprocess"
87
88gtk_sysroot_preprocess () {
89 if [ -e ${D}${bindir}/gtk-builder-convert ]; then
90 install -d ${SYSROOT_DESTDIR}${bindir_crossscripts}/
91 install -m 755 ${D}${bindir}/gtk-builder-convert ${SYSROOT_DESTDIR}${bindir_crossscripts}/
92 fi
93}
94
diff --git a/meta/recipes-gnome/gtk+/gtk+3.inc b/meta/recipes-gnome/gtk+/gtk+3.inc
new file mode 100644
index 0000000000..3e36676ac4
--- /dev/null
+++ b/meta/recipes-gnome/gtk+/gtk+3.inc
@@ -0,0 +1,110 @@
1SUMMARY = "Multi-platform toolkit for creating GUIs"
2DESCRIPTION = "GTK+ is a multi-platform toolkit for creating graphical user interfaces. Offering a complete \
3set of widgets, GTK+ is suitable for projects ranging from small one-off projects to complete application suites."
4HOMEPAGE = "http://www.gtk.org"
5BUGTRACKER = "https://bugzilla.gnome.org/"
6SECTION = "libs"
7
8DEPENDS = "glib-2.0 cairo pango atk jpeg libpng gdk-pixbuf \
9 docbook-utils-native gdk-pixbuf-native"
10
11LICENSE = "LGPLv2 & LGPLv2+ & LGPLv2.1+"
12
13inherit autotools pkgconfig gtk-doc update-alternatives gtk-immodules-cache gsettings
14
15# This should be in autotools.bbclass, but until something elses uses it putting
16# it here avoids rebuilding everything.
17export PKG_CONFIG_FOR_BUILD = "${STAGING_BINDIR_NATIVE}/pkg-config-native"
18
19do_configure_prepend() {
20 # Do this because the configure script is running ./libtool directly
21 rm -f libtool
22 ln -s ${TARGET_PREFIX}libtool libtool
23}
24
25# Forcibly disable the GTK+ 2 dependency as we don't want to natively build the
26# entire GTK+ stack, or need GTK+ 2 for gtk-update-icon-cache.
27EXTRA_OECONF += " \
28 --disable-gtk2-dependency \
29 --disable-glibtest \
30 --disable-xinerama \
31 --enable-modules \
32 --disable-cups \
33 --disable-introspection \
34"
35
36PACKAGECONFIG ??= "${@bb.utils.contains("DISTRO_FEATURES", "x11", "x11", "", d)} \
37 ${@bb.utils.contains("DISTRO_FEATURES", "wayland", "wayland", "", d)}"
38
39PACKAGECONFIG[x11] = "--enable-x11-backend,--disable-x11-backend,at-spi2-atk fontconfig libx11 libxext libxcursor libxi libxdamage libxrandr libxrender libxcomposite libxfixes"
40PACKAGECONFIG[wayland] = "--enable-wayland-backend,--disable-wayland-backend,wayland libxkbcommon"
41
42do_install_append() {
43 mv ${D}${bindir}/gtk-update-icon-cache ${D}${bindir}/gtk-update-icon-cache-3.0
44}
45
46PACKAGES =+ "${PN}-demo"
47LIBV = "3.0.0"
48
49FILES_${PN}-demo = "${bindir}/gtk3-demo \
50 ${bindir}/gtk3-demo-application \
51 ${bindir}/gtk3-widget-factory \
52 ${datadir}/gtk-3.0/demo \
53 ${datadir}/applications/gtk3-demo.desktop \
54 ${datadir}/applications/gtk3-widget-factory.desktop \
55 ${datadir}/icons/hicolor/*/apps/gtk3-demo.png \
56 ${datadir}/icons/hicolor/*/apps/gtk3-widget-factory.png"
57
58# The demo uses PNG files and mime type sniffing, so ensure that these
59# dependencies are present.
60RDEPENDS_${PN}-demo += "gdk-pixbuf-loader-png shared-mime-info"
61
62FILES_${PN} = "${bindir}/gtk-update-icon-cache-3.0 \
63 ${bindir}/gtk-query-immodules-3.0 \
64 ${bindir}/gtk-launch \
65 ${libdir}/lib*${SOLIBS} \
66 ${datadir}/themes ${sysconfdir} ${datadir}/glib-2.0/schemas/ \
67 ${libdir}/gtk-3.0/${LIBV}/engines/libpixmap.so \
68 ${libdir}/gtk-3.0/modules/*.so"
69
70FILES_${PN}-dev += " \
71 ${datadir}/gtk-3.0/gtkbuilder.rng \
72 ${datadir}/gtk-3.0/include \
73 ${libdir}/gtk-3.0/include \
74 ${libdir}/gtk-3.0/${LIBV}/loaders/*.la \
75 ${libdir}/gtk-3.0/${LIBV}/immodules/*.la \
76 ${libdir}/gtk-3.0/3.0.0/printbackends/*.la \
77 ${libdir}/gtk-3.0/${LIBV}/engines/*.la \
78 ${libdir}/gtk-3.0/modules/*.la \
79 ${bindir}/gtk-builder-convert"
80
81FILES_${PN}-dbg += " \
82 ${libdir}/gtk-3.0/${LIBV}/loaders/.debug \
83 ${libdir}/gtk-3.0/${LIBV}/immodules/.debug \
84 ${libdir}/gtk-3.0/${LIBV}/engines/.debug \
85 ${libdir}/gtk-3.0/${LIBV}/printbackends/.debug \
86 ${libdir}/gtk-3.0/modules/.debug"
87
88
89PACKAGES_DYNAMIC += "^gtk3-immodule-.* ^gtk3-printbackend-.*"
90
91ALTERNATIVE_${PN} = "gtk-update-icon-cache"
92ALTERNATIVE_TARGET[gtk-update-icon-cache] = "${bindir}/gtk-update-icon-cache-3.0"
93
94python populate_packages_prepend () {
95 import os.path
96
97 gtk_libdir = d.expand('${libdir}/gtk-3.0/${LIBV}')
98 immodules_root = os.path.join(gtk_libdir, 'immodules')
99 printmodules_root = os.path.join(gtk_libdir, 'printbackends');
100
101 immodules = do_split_packages(d, immodules_root, '^im-(.*)\.so$', 'gtk3-immodule-%s', 'GTK input module for %s')
102 if immodules:
103 d.setVar("GTKIMMODULES_PACKAGES", " ".join(immodules))
104
105 do_split_packages(d, printmodules_root, '^libprintbackend-(.*)\.so$', 'gtk3-printbackend-%s', 'GTK printbackend module for %s')
106
107 if (d.getVar('DEBIAN_NAMES', 1)):
108 d.setVar('PKG_${PN}', '${MLPREFIX}libgtk-3.0')
109}
110
diff --git a/meta/recipes-gnome/gtk+/gtk+3/fix-flags-for-native.patch b/meta/recipes-gnome/gtk+/gtk+3/fix-flags-for-native.patch
new file mode 100644
index 0000000000..9ae1088e01
--- /dev/null
+++ b/meta/recipes-gnome/gtk+/gtk+3/fix-flags-for-native.patch
@@ -0,0 +1,33 @@
1From 5e16904f94b5f5961f8f6e75716e6d7d228de119 Mon Sep 17 00:00:00 2001
2From: Robert Yang <liezhi.yang@windriver.com>
3Date: Fri, 28 Mar 2014 03:10:12 +0000
4Subject: [PATCH] gtk/native/Makefile.am: unset target FLAGS for native build
5
6The target gtk+3 does a native build in its "native" directory, we need
7unset the target FLAGS for native build, otherwise, there might be build
8failures.
9
10Upstream-Status: Pending
11
12Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
13---
14 gtk/native/Makefile.am | 3 +++
15 1 file changed, 3 insertions(+)
16
17diff --git a/gtk/native/Makefile.am b/gtk/native/Makefile.am
18index 64899e9..a1c814a 100644
19--- a/gtk/native/Makefile.am
20+++ b/gtk/native/Makefile.am
21@@ -3,6 +3,9 @@ AM_CFLAGS = @CFLAGS_FOR_BUILD@
22 CPP = @CPP_FOR_BUILD@
23 AM_CPPFLAGS = @CPPFLAGS_FOR_BUILD@
24 AM_LDFLAGS = @LDFLAGS_FOR_BUILD@
25+CFLAGS =
26+CPPFLAGS =
27+LDFLAGS =
28
29 if CROSS_COMPILING
30 if !USE_EXTERNAL_ICON_CACHE
31--
321.8.3.4
33
diff --git a/meta/recipes-gnome/gtk+/gtk+3/hardcoded_libtool.patch b/meta/recipes-gnome/gtk+/gtk+3/hardcoded_libtool.patch
new file mode 100644
index 0000000000..3b4beeb712
--- /dev/null
+++ b/meta/recipes-gnome/gtk+/gtk+3/hardcoded_libtool.patch
@@ -0,0 +1,35 @@
1Upstream-Status: Inappropriate [embedded specific]
2
3Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
4
5Index: gtk+-3.8.2/configure.ac
6===================================================================
7--- gtk+-3.8.2.orig/configure.ac
8+++ gtk+-3.8.2/configure.ac
9@@ -531,7 +531,7 @@ AC_MSG_CHECKING([Whether to write depend
10 case $enable_explicit_deps in
11 auto)
12 export SED
13- deplibs_check_method=`(./libtool --config; echo 'eval echo \"$deplibs_check_method\"') | sh`
14+ deplibs_check_method=`(./$host_alias-libtool --config; echo 'eval echo \"$deplibs_check_method\"') | sh`
15 if test "x$deplibs_check_method" != xpass_all || test "x$enable_static" = xyes ; then
16 enable_explicit_deps=yes
17 else
18@@ -793,7 +793,7 @@ else
19 dnl Now we check to see if our libtool supports shared lib deps
20 dnl (in a rather ugly way even)
21 if $dynworks; then
22- module_libtool_config="${CONFIG_SHELL-/bin/sh} ./libtool --config"
23+ module_libtool_config="${CONFIG_SHELL-/bin/sh} ./$host_alias-libtool --config"
24 module_deplibs_check=`$module_libtool_config | \
25 grep '^[[a-z_]]*check[[a-z_]]*_method=[['\''"]]' | \
26 sed 's/.*[['\''"]]\(.*\)[['\''"]]$/\1/'`
27@@ -1528,7 +1528,7 @@ fi
28 # We are using gmodule-no-export now, but I'm leaving the stripping
29 # code in place for now, since pango and atk still require gmodule.
30 export SED
31-export_dynamic=`(./libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh`
32+export_dynamic=`(./$host_alias-libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh`
33 if test -n "$export_dynamic"; then
34 GDK_DEP_LIBS=`echo $GDK_DEP_LIBS | sed -e "s/$export_dynamic//"`
35 GTK_DEP_LIBS=`echo $GTK_DEP_LIBS | sed -e "s/$export_dynamic//"`
diff --git a/meta/recipes-gnome/gtk+/gtk+3_3.12.2.bb b/meta/recipes-gnome/gtk+/gtk+3_3.12.2.bb
new file mode 100644
index 0000000000..f4f197131b
--- /dev/null
+++ b/meta/recipes-gnome/gtk+/gtk+3_3.12.2.bb
@@ -0,0 +1,18 @@
1require gtk+3.inc
2
3MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}"
4
5SRC_URI = "http://ftp.gnome.org/pub/gnome/sources/gtk+/${MAJ_VER}/gtk+-${PV}.tar.xz \
6 file://hardcoded_libtool.patch \
7 file://fix-flags-for-native.patch \
8 "
9
10SRC_URI[md5sum] = "0d6d8f9f79132b3b47475d047b369b1c"
11SRC_URI[sha256sum] = "61d74eea74231b1ea4b53084a9d6fc9917ab0e1d71b69d92cbf60a4b4fb385d0"
12
13S = "${WORKDIR}/gtk+-${PV}"
14
15LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2 \
16 file://gtk/gtk.h;endline=25;md5=1d8dc0fccdbfa26287a271dce88af737 \
17 file://gdk/gdk.h;endline=25;md5=c920ce39dc88c6f06d3e7c50e08086f2 \
18 file://tests/testgtk.c;endline=25;md5=cb732daee1d82af7a2bf953cf3cf26f1"
diff --git a/meta/recipes-gnome/gtk+/gtk+_2.24.24.bb b/meta/recipes-gnome/gtk+/gtk+_2.24.24.bb
new file mode 100644
index 0000000000..7d0a0a2a8d
--- /dev/null
+++ b/meta/recipes-gnome/gtk+/gtk+_2.24.24.bb
@@ -0,0 +1,50 @@
1require gtk+.inc
2
3LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7 \
4 file://gtk/gtk.h;endline=27;md5=c59e0b4490dd135a5726ebf851f9b17f \
5 file://gdk/gdk.h;endline=27;md5=07db285ec208fb3e0bf7d861b0614202 \
6 file://tests/testgtk.c;endline=27;md5=262db5db5f776f9863e56df31423e24c"
7SRC_URI = "http://ftp.gnome.org/pub/gnome/sources/gtk+/2.24/gtk+-${PV}.tar.xz \
8 file://xsettings.patch \
9 file://run-iconcache.patch \
10 file://configure-nm.patch \
11 file://hardcoded_libtool.patch \
12 file://cellrenderer-cairo.patch;striplevel=0 \
13 file://toggle-font.diff;striplevel=0 \
14 file://0001-bgo-584832-Duplicate-the-exec-string-returned-by-gtk.patch \
15 file://doc-fixes.patch \
16 file://0001-GtkButton-do-not-prelight-in-touchscreen-mode.patch \
17 "
18
19# TO MERGE
20# file://entry-cairo.patch;striplevel=0
21# file://filesystem-volumes.patch
22# file://filechooser-props.patch
23# file://filechooser-default.patch
24# file://filechooser-sizefix.patch
25# temporary
26# file://gtklabel-resize-patch
27# file://menu-deactivate.patch
28# file://combo-arrow-size.patch;striplevel=0
29# file://configurefix.patch
30
31SRC_URI[md5sum] = "f80ac8aa95ea8482ad89656d0370752e"
32SRC_URI[sha256sum] = "12ceb2e198c82bfb93eb36348b6e9293c8fdcd60786763d04cfec7ebe7ed3d6d"
33
34EXTRA_OECONF = "--enable-xkb --disable-glibtest --disable-cups --disable-xinerama"
35
36LIBV = "2.10.0"
37
38PACKAGES_DYNAMIC += "^gtk-immodule-.* ^gtk-printbackend-.*"
39
40python populate_packages_prepend () {
41 gtk_libdir = d.expand('${libdir}/gtk-2.0/${LIBV}')
42 immodules_root = os.path.join(gtk_libdir, 'immodules')
43 printmodules_root = os.path.join(gtk_libdir, 'printbackends');
44
45 d.setVar('GTKIMMODULES_PACKAGES', ' '.join(do_split_packages(d, immodules_root, '^im-(.*)\.so$', 'gtk-immodule-%s', 'GTK input module for %s')))
46 do_split_packages(d, printmodules_root, '^libprintbackend-(.*)\.so$', 'gtk-printbackend-%s', 'GTK printbackend module for %s')
47
48 if (d.getVar('DEBIAN_NAMES', True)):
49 d.setVar('PKG_${PN}', '${MLPREFIX}libgtk-2.0')
50}
diff --git a/meta/recipes-gnome/gtk+/gtk-update-icon-cache-native_3.4.4.bb b/meta/recipes-gnome/gtk+/gtk-update-icon-cache-native_3.4.4.bb
new file mode 100644
index 0000000000..73b7644845
--- /dev/null
+++ b/meta/recipes-gnome/gtk+/gtk-update-icon-cache-native_3.4.4.bb
@@ -0,0 +1,47 @@
1SUMMARY = "gtk-update-icon-cache built natively"
2DESCRIPTION = "Just gtk-update-icon-cache built from GTK+ natively, for on-host postinst script execution."
3SECTION = "libs"
4
5DEPENDS = "gdk-pixbuf-native"
6
7LICENSE = "LGPLv2 & LGPLv2+ & LGPLv2.1+"
8
9LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2 \
10 file://gtk/gtk.h;endline=25;md5=1d8dc0fccdbfa26287a271dce88af737 \
11 file://gdk/gdk.h;endline=25;md5=c920ce39dc88c6f06d3e7c50e08086f2 \
12 file://tests/testgtk.c;endline=25;md5=cb732daee1d82af7a2bf953cf3cf26f1"
13
14SRC_URI = "http://download.gnome.org/sources/gtk+/3.4/gtk+-${PV}.tar.xz"
15SRC_URI[md5sum] = "1b2cf29502a6394e8d4b30f7f5bb9131"
16SRC_URI[sha256sum] = "f154e460075034da4c0ce89c320025dcd459da2a1fdf32d92a09522eaca242c7"
17
18S = "${WORKDIR}/gtk+-${PV}"
19
20inherit pkgconfig native
21
22PKG_CONFIG_FOR_BUILD = "${STAGING_BINDIR_NATIVE}/pkg-config-native"
23
24do_configure() {
25 # Quite ugly but defines enough to compile the tool.
26 if ! test -f gtk/config.h; then
27 echo "#define GETTEXT_PACKAGE \"gtk30\"" >> gtk/config.h
28 echo "#define HAVE_UNISTD_H 1" >> gtk/config.h
29 echo "#define HAVE_FTW_H 1" >> gtk/config.h
30
31 fi
32}
33
34do_compile() {
35 ${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS} ${S}/gtk/updateiconcache.c \
36 $(${PKG_CONFIG_FOR_BUILD} --cflags --libs gdk-pixbuf-2.0) \
37 -o gtk-update-icon-cache
38}
39
40do_install() {
41 install -d ${D}${bindir}
42 install -m 0755 ${B}/gtk-update-icon-cache ${D}${bindir}
43
44 create_wrapper ${D}/${bindir}/gtk-update-icon-cache \
45 GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/2.10.0/loaders.cache
46
47}
diff --git a/meta/recipes-gnome/gtk-doc-stub/gtk-doc-stub_git.bb b/meta/recipes-gnome/gtk-doc-stub/gtk-doc-stub_git.bb
new file mode 100644
index 0000000000..40f324352f
--- /dev/null
+++ b/meta/recipes-gnome/gtk-doc-stub/gtk-doc-stub_git.bb
@@ -0,0 +1,20 @@
1SUMMARY = "Stub implementation of gtk-doc"
2DESCRIPTION = "Stub implementation of gtk-doc, as we don't want to build the API documentation"
3SECTION = "x11/base"
4LICENSE = "GPLv2"
5LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
6
7PROVIDES = "gtk-doc gobject-introspection-stub"
8
9SRCREV = "1dea266593edb766d6d898c79451ef193eb17cfa"
10PV = "1.1+git${SRCPV}"
11
12SRC_URI = "git://git.gnome.org/${BPN}"
13
14S = "${WORKDIR}/git"
15
16inherit autotools
17
18FILES_${PN} += "${datadir}"
19
20BBCLASSEXTEND = "native"
diff --git a/meta/recipes-gnome/gtk-engines/gtk-engines-2.20.2/glib-2.32.patch b/meta/recipes-gnome/gtk-engines/gtk-engines-2.20.2/glib-2.32.patch
new file mode 100644
index 0000000000..f0b878d376
--- /dev/null
+++ b/meta/recipes-gnome/gtk-engines/gtk-engines-2.20.2/glib-2.32.patch
@@ -0,0 +1,23 @@
1From 8d49a386f467cbf8e0842d2218126f643e50f834 Mon Sep 17 00:00:00 2001
2From: Dominique Leuenberger <dimstar@opensuse.org>
3Date: Sun, 27 Nov 2011 14:24:57 +0000
4Subject: Fix build with glib 2.31: Only glib.h can be #include'd. Fixes bug #664914
5
6Upstream-Status: Backport
7
8---
9diff --git a/engines/clearlooks/src/animation.c b/engines/clearlooks/src/animation.c
10index 1f7a41f..56a9286 100644
11--- a/engines/clearlooks/src/animation.c
12+++ b/engines/clearlooks/src/animation.c
13@@ -28,7 +28,7 @@
14 #include "animation.h"
15
16 #ifdef HAVE_WORKING_ANIMATION
17-#include <glib/gtimer.h>
18+#include <glib.h>
19
20 struct _AnimationInfo {
21 GTimer *timer;
22--
23cgit v0.9.0.2
diff --git a/meta/recipes-gnome/gtk-engines/gtk-engines-2.20.2/substitute-tests.patch b/meta/recipes-gnome/gtk-engines/gtk-engines-2.20.2/substitute-tests.patch
new file mode 100644
index 0000000000..5c557ba689
--- /dev/null
+++ b/meta/recipes-gnome/gtk-engines/gtk-engines-2.20.2/substitute-tests.patch
@@ -0,0 +1,37 @@
1Upstream-Status: Pending
2
3Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
4diff -Nurd gtk-engines-2.20.2/configure.ac gtk-engines-2.20.2/configure.ac
5--- gtk-engines-2.20.2/configure.ac 2010-10-01 15:42:37.000000000 +0300
6+++ gtk-engines-2.20.2/configure.ac 2013-08-20 02:50:27.930510565 +0300
7@@ -166,6 +166,9 @@
8
9 AC_SUBST(DEVELOPMENT_CFLAGS)
10
11+AC_SUBST([exported_symbols_tests], [[$(EXPORTED_SYMBOLS_TESTS)]])
12+AC_SUBST([torture_test_tests], [[$(TORTURE_TEST_TESTS)]])
13+
14 AM_CONFIG_HEADER([engines/support/config.h])
15
16 AC_CONFIG_FILES([
17diff -Nurd gtk-engines-2.20.2/test/Makefile.am gtk-engines-2.20.2/test/Makefile.am
18--- gtk-engines-2.20.2/test/Makefile.am 2010-09-19 18:18:21.000000000 +0300
19+++ gtk-engines-2.20.2/test/Makefile.am 2013-08-20 02:50:36.842510865 +0300
20@@ -66,7 +66,7 @@
21 # Prefix with exported_
22 EXPORTED_SYMBOLS_TESTS = $(patsubst %,exported_%,$(BUILD_ENGINES))
23
24-TESTS += $(EXPORTED_SYMBOLS_TESTS)
25+TESTS += @exported_symbols_tests@
26
27
28 #############################################################
29@@ -88,7 +88,7 @@
30 TORTURE_TEST_TESTS = torture_buildin $(patsubst %,torture_%,$(TORTURE_TEST_ENGINES))
31
32 # Add TORTURE_TEST_ENGINES to list of tests
33-TESTS += $(TORTURE_TEST_TESTS)
34+TESTS += @torture_test_tests@
35
36 # Possible other tests:
37 # - An extensive theme switch tests that loads/unloads the engine
diff --git a/meta/recipes-gnome/gtk-engines/gtk-engines_2.20.2.bb b/meta/recipes-gnome/gtk-engines/gtk-engines_2.20.2.bb
new file mode 100644
index 0000000000..33b6afe2c7
--- /dev/null
+++ b/meta/recipes-gnome/gtk-engines/gtk-engines_2.20.2.bb
@@ -0,0 +1,46 @@
1SUMMARY = "GTK+ theme engines"
2HOMEPAGE = "http://www.gnome.org/"
3BUGTRACKER = "https://bugzilla.gnome.org/"
4
5LICENSE = "LGPLv2.1"
6LIC_FILES_CHKSUM = "file://COPYING;md5=2d5025d4aa3495befef8f17206a5b0a1"
7
8SECTION = "x11/base"
9DEPENDS = "intltool-native gtk+"
10
11PR = "r3"
12
13PACKAGES += "${PN}-schemas"
14PACKAGES_DYNAMIC += "^gtk-engine-.* ^gtk-theme-.*"
15
16RDEPENDS_gtk-theme-redmond = "gtk-engine-redmond95"
17RDEPENDS_gtk-theme-metal = "gtk-engine-metal"
18RDEPENDS_gtk-theme-mist = "gtk-engine-mist"
19RDEPENDS_gtk-theme-crux = "gtk-engine-crux-engine"
20RDEPENDS_gtk-theme-lighthouseblue = "gtk-engine-lighthouseblue"
21RDEPENDS_gtk-theme-thinice = "gtk-engine-thinice"
22RDEPENDS_gtk-theme-industrial = "gtk-engine-industrial"
23RDEPENDS_gtk-theme-clearlooks = "gtk-engine-clearlooks"
24
25FILES_${PN} = ""
26FILES_${PN}-dev += "${libdir}/gtk-2.0/*/engines/*.la"
27FILES_${PN}-dbg += "${libdir}/gtk-2.0/*/engines/.debug"
28FILES_${PN}-schemas = "${datadir}/gtk-engines/*.xml"
29
30CFLAGS_prepend = "-DHAVE_ANIMATION "
31
32inherit gnomebase
33
34python populate_packages_prepend() {
35 engines_root = os.path.join(d.getVar('libdir', True), "gtk-2.0/2.10.0/engines")
36 themes_root = os.path.join(d.getVar('datadir', True), "themes")
37
38 do_split_packages(d, engines_root, '^lib(.*)\.so$', 'gtk-engine-%s', 'GTK %s theme engine', extra_depends='')
39 do_split_packages(d, themes_root, '(.*)', 'gtk-theme-%s', 'GTK theme %s', allow_dirs=True, extra_depends='')
40 # TODO: mark theme packages as arch all
41}
42
43SRC_URI += "file://glib-2.32.patch \
44 file://substitute-tests.patch"
45SRC_URI[archive.md5sum] = "5deb287bc6075dc21812130604c7dc4f"
46SRC_URI[archive.sha256sum] = "15b680abca6c773ecb85253521fa100dd3b8549befeecc7595b10209d62d66b5"
diff --git a/meta/recipes-gnome/gtk-theme-torturer/gtk-theme-torturer_git.bb b/meta/recipes-gnome/gtk-theme-torturer/gtk-theme-torturer_git.bb
new file mode 100644
index 0000000000..889fd89417
--- /dev/null
+++ b/meta/recipes-gnome/gtk-theme-torturer/gtk-theme-torturer_git.bb
@@ -0,0 +1,21 @@
1SUMMARY = "GTK+ Theme benchmark program"
2DEPENDS = "gtk+"
3HOMEPAGE = "http://wiki.laptop.org/go/GTK_for_OLPC"
4SECTION = "devel"
5LICENSE = "GPLv2"
6LIC_FILES_CHKSUM = "file://appwindow.c;endline=13;md5=8c09920de460c7ea1f64ee56986aabd9"
7
8SRCREV = "99962ae39bb5aadb31929b25c58e1a053f9c9545"
9PV = "0.0.0+git${SRCPV}"
10
11SRC_URI = "git://dev.laptop.org/projects/soc-gtk/"
12S = "${WORKDIR}/git/gtk-theme-torturer"
13
14CFLAGS += "-Wl,-rpath-link,${STAGING_LIBDIR}"
15
16do_install() {
17 install -d ${D}${bindir}
18 install -m 0755 torturer ${D}${bindir}
19}
20
21
diff --git a/meta/recipes-gnome/hicolor-icon-theme/files/index.theme b/meta/recipes-gnome/hicolor-icon-theme/files/index.theme
new file mode 100644
index 0000000000..0471bd53f2
--- /dev/null
+++ b/meta/recipes-gnome/hicolor-icon-theme/files/index.theme
@@ -0,0 +1,1731 @@
1[Icon Theme]
2Name=Hicolor
3Comment=Fallback icon theme
4Hidden=true
5Directories=16x16/actions,16x16/animations,16x16/apps,16x16/categories,16x16/devices,16x16/emblems,16x16/emotes,16x16/filesystems,16x16/intl,16x16/mimetypes,16x16/places,16x16/status,16x16/stock,16x16/stock/chart,16x16/stock/code,16x16/stock/data,16x16/stock/form,16x16/stock/image,16x16/stock/io,16x16/stock/media,16x16/stock/navigation,16x16/stock/net,16x16/stock/object,16x16/stock/table,16x16/stock/text,22x22/actions,22x22/animations,22x22/apps,22x22/categories,22x22/devices,22x22/emblems,22x22/emotes,22x22/filesystems,22x22/intl,22x22/mimetypes,22x22/places,22x22/status,22x22/stock,22x22/stock/chart,22x22/stock/code,22x22/stock/data,22x22/stock/form,22x22/stock/image,22x22/stock/io,22x22/stock/media,22x22/stock/navigation,22x22/stock/net,22x22/stock/object,22x22/stock/table,22x22/stock/text,24x24/actions,24x24/animations,24x24/apps,24x24/categories,24x24/devices,24x24/emblems,24x24/emotes,24x24/filesystems,24x24/intl,24x24/mimetypes,24x24/places,24x24/status,24x24/stock,24x24/stock/chart,24x24/stock/code,24x24/stock/data,24x24/stock/form,24x24/stock/image,24x24/stock/io,24x24/stock/media,24x24/stock/navigation,24x24/stock/net,24x24/stock/object,24x24/stock/table,24x24/stock/text,32x32/actions,32x32/animations,32x32/apps,32x32/categories,32x32/devices,32x32/emblems,32x32/emotes,32x32/filesystems,32x32/intl,32x32/mimetypes,32x32/places,32x32/status,32x32/stock,32x32/stock/chart,32x32/stock/code,32x32/stock/data,32x32/stock/form,32x32/stock/image,32x32/stock/io,32x32/stock/media,32x32/stock/navigation,32x32/stock/net,32x32/stock/object,32x32/stock/table,32x32/stock/text,36x36/actions,36x36/animations,36x36/apps,36x36/categories,36x36/devices,36x36/emblems,36x36/emotes,36x36/filesystems,36x36/intl,36x36/mimetypes,36x36/places,36x36/status,36x36/stock,36x36/stock/chart,36x36/stock/code,36x36/stock/data,36x36/stock/form,36x36/stock/image,36x36/stock/io,36x36/stock/media,36x36/stock/navigation,36x36/stock/net,36x36/stock/object,36x36/stock/table,36x36/stock/text,48x48/actions,48x48/animations,48x48/apps,48x48/categories,48x48/devices,48x48/emblems,48x48/emotes,48x48/filesystems,48x48/intl,48x48/mimetypes,48x48/places,48x48/status,48x48/stock,48x48/stock/chart,48x48/stock/code,48x48/stock/data,48x48/stock/form,48x48/stock/image,48x48/stock/io,48x48/stock/media,48x48/stock/navigation,48x48/stock/net,48x48/stock/object,48x48/stock/table,48x48/stock/text,64x64/actions,64x64/animations,64x64/apps,64x64/categories,64x64/devices,64x64/emblems,64x64/emotes,64x64/filesystems,64x64/intl,64x64/mimetypes,64x64/places,64x64/status,64x64/stock,64x64/stock/chart,64x64/stock/code,64x64/stock/data,64x64/stock/form,64x64/stock/image,64x64/stock/io,64x64/stock/media,64x64/stock/navigation,64x64/stock/net,64x64/stock/object,64x64/stock/table,64x64/stock/text,72x72/actions,72x72/animations,72x72/apps,72x72/categories,72x72/devices,72x72/emblems,72x72/emotes,72x72/filesystems,72x72/intl,72x72/mimetypes,72x72/places,72x72/status,72x72/stock,72x72/stock/chart,72x72/stock/code,72x72/stock/data,72x72/stock/form,72x72/stock/image,72x72/stock/io,72x72/stock/media,72x72/stock/navigation,72x72/stock/net,72x72/stock/object,72x72/stock/table,72x72/stock/text,96x96/actions,96x96/animations,96x96/apps,96x96/categories,96x96/devices,96x96/emblems,96x96/emotes,96x96/filesystems,96x96/intl,96x96/mimetypes,96x96/places,96x96/status,96x96/stock,96x96/stock/chart,96x96/stock/code,96x96/stock/data,96x96/stock/form,96x96/stock/image,96x96/stock/io,96x96/stock/media,96x96/stock/navigation,96x96/stock/net,96x96/stock/object,96x96/stock/table,96x96/stock/text,128x128/actions,128x128/animations,128x128/apps,128x128/categories,128x128/devices,128x128/emblems,128x128/emotes,128x128/filesystems,128x128/intl,128x128/mimetypes,128x128/places,128x128/status,128x128/stock,128x128/stock/chart,128x128/stock/code,128x128/stock/data,128x128/stock/form,128x128/stock/image,128x128/stock/io,128x128/stock/media,128x128/stock/navigation,128x128/stock/net,128x128/stock/object,128x128/stock/table,128x128/stock/text,192x192/actions,192x192/animations,192x192/apps,192x192/categories,192x192/devices,192x192/emblems,192x192/emotes,192x192/filesystems,192x192/intl,192x192/mimetypes,192x192/places,192x192/status,192x192/stock,192x192/stock/chart,192x192/stock/code,192x192/stock/data,192x192/stock/form,192x192/stock/image,192x192/stock/io,192x192/stock/media,192x192/stock/navigation,192x192/stock/net,192x192/stock/object,192x192/stock/table,192x192/stock/text,scalable/actions,scalable/animations,scalable/apps,scalable/categories,scalable/devices,scalable/emblems,scalable/emotes,scalable/filesystems,scalable/intl,scalable/mimetypes,scalable/places,scalable/status,scalable/stock,scalable/stock/chart,scalable/stock/code,scalable/stock/data,scalable/stock/form,scalable/stock/image,scalable/stock/io,scalable/stock/media,scalable/stock/navigation,scalable/stock/net,scalable/stock/object,scalable/stock/table,scalable/stock/text,12x12/apps,12x12/devices,12x12/filesystems,12x12/hildon,12x12/mimetypes,16x16/hildon,26x26/apps,26x26/devices,26x26/filesystems,26x26/hildon,26x26/mimetypes,34x34/apps,34x34/devices,34x34/filesystems,34x34/hildon,34x34/mimetypes,40x40/apps,40x40/devices,40x40/filesystems,40x40/hildon,40x40/mimetypes,50x50/apps,50x50/devices,50x50/filesystems,50x50/hildon,50x50/mimetypes,250x250/apps,250x250/devices,250x250/filesystems,250x250/hildon,250x250/mimetypes,scalable/hildon
6
7[12x12/apps]
8Size=12
9Context=Applications
10Type=Threshold
11
12[12x12/devices]
13Size=12
14Context=Devices
15Type=Threshold
16
17[12x12/filesystems]
18Size=12
19Context=FileSystems
20Type=Threshold
21
22[12x12/hildon]
23Size=12
24Context=hildon
25Type=Threshold
26
27[12x12/mimetypes]
28Size=12
29Context=MimeTypes
30Type=Threshold
31
32[16x16/actions]
33Size=16
34Context=Actions
35Type=Threshold
36
37[16x16/animations]
38Size=16
39Context=Animations
40Type=Threshold
41
42[16x16/apps]
43Size=16
44Context=Applications
45Type=Threshold
46
47[16x16/categories]
48Size=16
49Context=Categories
50Type=Threshold
51
52[16x16/devices]
53Size=16
54Context=Devices
55Type=Threshold
56
57[16x16/emblems]
58Size=16
59Context=Emblems
60Type=Threshold
61
62[16x16/emotes]
63Size=16
64Context=Emotes
65Type=Threshold
66
67[16x16/filesystems]
68Size=16
69Context=FileSystems
70Type=Threshold
71
72[16x16/hildon]
73Size=16
74Context=hildon
75Type=Threshold
76
77[16x16/intl]
78Size=16
79Context=International
80Type=Threshold
81
82[16x16/mimetypes]
83Size=16
84Context=MimeTypes
85Type=Threshold
86
87[16x16/places]
88Size=16
89Context=Places
90Type=Threshold
91
92[16x16/status]
93Size=16
94Context=Status
95Type=Threshold
96
97[16x16/stock/chart]
98Size=16
99Context=Stock
100Type=Threshold
101
102[16x16/stock/code]
103Size=16
104Context=Stock
105Type=Threshold
106
107[16x16/stock/data]
108Size=16
109Context=Stock
110Type=Threshold
111
112[16x16/stock/form]
113Size=16
114Context=Stock
115Type=Threshold
116
117[16x16/stock/image]
118Size=16
119Context=Stock
120Type=Threshold
121
122[16x16/stock/io]
123Size=16
124Context=Stock
125Type=Threshold
126
127[16x16/stock/media]
128Size=16
129Context=Stock
130Type=Threshold
131
132[16x16/stock/navigation]
133Size=16
134Context=Stock
135Type=Threshold
136
137[16x16/stock/net]
138Size=16
139Context=Stock
140Type=Threshold
141
142[16x16/stock/object]
143Size=16
144Context=Stock
145Type=Threshold
146
147[16x16/stock/table]
148Size=16
149Context=Stock
150Type=Threshold
151
152[16x16/stock/text]
153Size=16
154Context=Stock
155Type=Threshold
156
157[22x22/actions]
158Size=22
159Context=Actions
160Type=Threshold
161
162[22x22/animations]
163Size=22
164Context=Animations
165Type=Threshold
166
167[22x22/apps]
168Size=22
169Context=Applications
170Type=Fixed
171
172[22x22/categories]
173Size=22
174Context=Categories
175Type=Threshold
176
177[22x22/devices]
178Size=22
179Context=Devices
180Type=Threshold
181
182[22x22/emblems]
183Size=22
184Context=Emblems
185Type=Threshold
186
187[22x22/emotes]
188Size=22
189Context=Emotes
190Type=Threshold
191
192[22x22/filesystems]
193Size=22
194Context=FileSystems
195Type=Threshold
196
197[22x22/intl]
198Size=22
199Context=International
200Type=Threshold
201
202[22x22/mimetypes]
203Size=22
204Context=MimeTypes
205Type=Threshold
206
207[22x22/places]
208Size=22
209Context=Places
210Type=Threshold
211
212[22x22/status]
213Size=22
214Context=Status
215Type=Threshold
216
217[22x22/stock/chart]
218Size=22
219Context=Stock
220Type=Threshold
221
222[22x22/stock/code]
223Size=22
224Context=Stock
225Type=Threshold
226
227[22x22/stock/data]
228Size=22
229Context=Stock
230Type=Threshold
231
232[22x22/stock/form]
233Size=22
234Context=Stock
235Type=Threshold
236
237[22x22/stock/image]
238Size=22
239Context=Stock
240Type=Threshold
241
242[22x22/stock/io]
243Size=22
244Context=Stock
245Type=Threshold
246
247[22x22/stock/media]
248Size=22
249Context=Stock
250Type=Threshold
251
252[22x22/stock/navigation]
253Size=22
254Context=Stock
255Type=Threshold
256
257[22x22/stock/net]
258Size=22
259Context=Stock
260Type=Threshold
261
262[22x22/stock/object]
263Size=22
264Context=Stock
265Type=Threshold
266
267[22x22/stock/table]
268Size=22
269Context=Stock
270Type=Threshold
271
272[22x22/stock/text]
273Size=22
274Context=Stock
275Type=Threshold
276
277[24x24/actions]
278Size=24
279Context=Actions
280Type=Threshold
281
282[24x24/animations]
283Size=24
284Context=Animations
285Type=Threshold
286
287[24x24/apps]
288Size=24
289Context=Applications
290Type=Threshold
291
292[24x24/categories]
293Size=24
294Context=Categories
295Type=Threshold
296
297[24x24/devices]
298Size=24
299Context=Devices
300Type=Threshold
301
302[24x24/emblems]
303Size=24
304Context=Emblems
305Type=Threshold
306
307[24x24/emotes]
308Size=24
309Context=Emotes
310Type=Threshold
311
312[24x24/filesystems]
313Size=24
314Context=FileSystems
315Type=Threshold
316
317[24x24/intl]
318Size=24
319Context=International
320Type=Threshold
321
322[24x24/mimetypes]
323Size=24
324Context=MimeTypes
325Type=Threshold
326
327[24x24/places]
328Size=24
329Context=Places
330Type=Threshold
331
332[24x24/status]
333Size=24
334Context=Status
335Type=Threshold
336
337[24x24/stock/chart]
338Size=24
339Context=Stock
340Type=Threshold
341
342[24x24/stock/code]
343Size=24
344Context=Stock
345Type=Threshold
346
347[24x24/stock/data]
348Size=24
349Context=Stock
350Type=Threshold
351
352[24x24/stock/form]
353Size=24
354Context=Stock
355Type=Threshold
356
357[24x24/stock/image]
358Size=24
359Context=Stock
360Type=Threshold
361
362[24x24/stock/io]
363Size=24
364Context=Stock
365Type=Threshold
366
367[24x24/stock/media]
368Size=24
369Context=Stock
370Type=Threshold
371
372[24x24/stock/navigation]
373Size=24
374Context=Stock
375Type=Threshold
376
377[24x24/stock/net]
378Size=24
379Context=Stock
380Type=Threshold
381
382[24x24/stock/object]
383Size=24
384Context=Stock
385Type=Threshold
386
387[24x24/stock/table]
388Size=24
389Context=Stock
390Type=Threshold
391
392[24x24/stock/text]
393Size=24
394Context=Stock
395Type=Threshold
396
397[26x26/apps]
398Size=26
399Context=Applications
400Type=Threshold
401
402[26x26/devices]
403Size=26
404Context=Devices
405Type=Threshold
406
407[26x26/filesystems]
408Size=26
409Context=FileSystems
410Type=Threshold
411
412[26x26/hildon]
413Size=26
414Context=hildon
415Type=Threshold
416
417[26x26/mimetypes]
418Size=26
419Context=MimeTypes
420Type=Threshold
421
422[32x32/actions]
423Size=32
424Context=Actions
425Type=Threshold
426
427[32x32/animations]
428Size=32
429Context=Animations
430Type=Threshold
431
432[32x32/apps]
433Size=32
434Context=Applications
435Type=Threshold
436
437[32x32/categories]
438Size=32
439Context=Categories
440Type=Threshold
441
442[32x32/devices]
443Size=32
444Context=Devices
445Type=Threshold
446
447[32x32/emblems]
448Size=32
449Context=Emblems
450Type=Threshold
451
452[32x32/emotes]
453Size=32
454Context=Emotes
455Type=Threshold
456
457[32x32/filesystems]
458Size=32
459Context=FileSystems
460Type=Threshold
461
462[32x32/intl]
463Size=32
464Context=International
465Type=Threshold
466
467[32x32/mimetypes]
468Size=32
469Context=MimeTypes
470Type=Threshold
471
472[32x32/places]
473Size=32
474Context=Places
475Type=Threshold
476
477[32x32/status]
478Size=32
479Context=Status
480Type=Threshold
481
482[32x32/stock/chart]
483Size=32
484Context=Stock
485Type=Threshold
486
487[32x32/stock/code]
488Size=32
489Context=Stock
490Type=Threshold
491
492[32x32/stock/data]
493Size=32
494Context=Stock
495Type=Threshold
496
497[32x32/stock/form]
498Size=32
499Context=Stock
500Type=Threshold
501
502[32x32/stock/image]
503Size=32
504Context=Stock
505Type=Threshold
506
507[32x32/stock/io]
508Size=32
509Context=Stock
510Type=Threshold
511
512[32x32/stock/media]
513Size=32
514Context=Stock
515Type=Threshold
516
517[32x32/stock/navigation]
518Size=32
519Context=Stock
520Type=Threshold
521
522[32x32/stock/net]
523Size=32
524Context=Stock
525Type=Threshold
526
527[32x32/stock/object]
528Size=32
529Context=Stock
530Type=Threshold
531
532[32x32/stock/table]
533Size=32
534Context=Stock
535Type=Threshold
536
537[32x32/stock/text]
538Size=32
539Context=Stock
540Type=Threshold
541
542[34x34/apps]
543Size=34
544Context=Applications
545Type=Threshold
546
547[34x34/devices]
548Size=34
549Context=Devices
550Type=Threshold
551
552[34x34/filesystems]
553Size=34
554Context=FileSystems
555Type=Threshold
556
557[34x34/hildon]
558Size=34
559Context=hildon
560Type=Threshold
561
562[34x34/mimetypes]
563Size=34
564Context=MimeTypes
565Type=Threshold
566
567[36x36/actions]
568Size=36
569Context=Actions
570Type=Threshold
571
572[36x36/animations]
573Size=36
574Context=Animations
575Type=Threshold
576
577[36x36/apps]
578Size=36
579Context=Applications
580Type=Threshold
581
582[36x36/categories]
583Size=36
584Context=Categories
585Type=Threshold
586
587[36x36/devices]
588Size=36
589Context=Devices
590Type=Threshold
591
592[36x36/emblems]
593Size=36
594Context=Emblems
595Type=Threshold
596
597[36x36/emotes]
598Size=36
599Context=Emotes
600Type=Threshold
601
602[36x36/filesystems]
603Size=36
604Context=FileSystems
605Type=Threshold
606
607[36x36/intl]
608Size=36
609Context=International
610Type=Threshold
611
612[36x36/mimetypes]
613Size=36
614Context=MimeTypes
615Type=Threshold
616
617[36x36/places]
618Size=36
619Context=Places
620Type=Threshold
621
622[36x36/status]
623Size=36
624Context=Status
625Type=Threshold
626
627[36x36/stock/chart]
628Size=36
629Context=Stock
630Type=Threshold
631
632[36x36/stock/code]
633Size=36
634Context=Stock
635Type=Threshold
636
637[36x36/stock/data]
638Size=36
639Context=Stock
640Type=Threshold
641
642[36x36/stock/form]
643Size=36
644Context=Stock
645Type=Threshold
646
647[36x36/stock/image]
648Size=36
649Context=Stock
650Type=Threshold
651
652[36x36/stock/io]
653Size=36
654Context=Stock
655Type=Threshold
656
657[36x36/stock/media]
658Size=36
659Context=Stock
660Type=Threshold
661
662[36x36/stock/navigation]
663Size=36
664Context=Stock
665Type=Threshold
666
667[36x36/stock/net]
668Size=36
669Context=Stock
670Type=Threshold
671
672[36x36/stock/object]
673Size=36
674Context=Stock
675Type=Threshold
676
677[36x36/stock/table]
678Size=36
679Context=Stock
680Type=Threshold
681
682[36x36/stock/text]
683Size=36
684Context=Stock
685Type=Threshold
686
687[40x40/apps]
688Size=40
689Context=Applications
690Type=Threshold
691
692[40x40/devices]
693Size=40
694Context=Devices
695Type=Threshold
696
697[40x40/filesystems]
698Size=40
699Context=FileSystems
700Type=Threshold
701
702[40x40/hildon]
703Size=40
704Context=hildon
705Type=Threshold
706
707[40x40/mimetypes]
708Size=40
709Context=MimeTypes
710Type=Threshold
711
712[48x48/actions]
713Size=48
714Context=Actions
715Type=Threshold
716
717[48x48/animations]
718Size=48
719Context=Animations
720Type=Threshold
721
722[48x48/apps]
723Size=48
724Context=Applications
725Type=Threshold
726
727[48x48/categories]
728Size=48
729Context=Categories
730Type=Threshold
731
732[48x48/devices]
733Size=48
734Context=Devices
735Type=Threshold
736
737[48x48/emblems]
738Size=48
739Context=Emblems
740Type=Threshold
741
742[48x48/emotes]
743Size=48
744Context=Emotes
745Type=Threshold
746
747[48x48/filesystems]
748Size=48
749Context=FileSystems
750Type=Threshold
751
752[48x48/intl]
753Size=48
754Context=International
755Type=Threshold
756
757[48x48/mimetypes]
758Size=48
759Context=MimeTypes
760Type=Threshold
761
762[48x48/places]
763Size=48
764Context=Places
765Type=Threshold
766
767[48x48/status]
768Size=48
769Context=Status
770Type=Threshold
771
772[48x48/stock/chart]
773Size=48
774Context=Stock
775Type=Threshold
776
777[48x48/stock/code]
778Size=48
779Context=Stock
780Type=Threshold
781
782[48x48/stock/data]
783Size=48
784Context=Stock
785Type=Threshold
786
787[48x48/stock/form]
788Size=48
789Context=Stock
790Type=Threshold
791
792[48x48/stock/image]
793Size=48
794Context=Stock
795Type=Threshold
796
797[48x48/stock/io]
798Size=48
799Context=Stock
800Type=Threshold
801
802[48x48/stock/media]
803Size=48
804Context=Stock
805Type=Threshold
806
807[48x48/stock/navigation]
808Size=48
809Context=Stock
810Type=Threshold
811
812[48x48/stock/net]
813Size=48
814Context=Stock
815Type=Threshold
816
817[48x48/stock/object]
818Size=48
819Context=Stock
820Type=Threshold
821
822[48x48/stock/table]
823Size=48
824Context=Stock
825Type=Threshold
826
827[48x48/stock/text]
828Size=48
829Context=Stock
830Type=Threshold
831
832[50x50/apps]
833Size=50
834Context=Applications
835Type=Threshold
836
837[50x50/devices]
838Size=50
839Context=Devices
840Type=Threshold
841
842[50x50/filesystems]
843Size=50
844Context=FileSystems
845Type=Threshold
846
847[50x50/hildon]
848Size=50
849Context=hildon
850Type=Threshold
851
852[50x50/mimetypes]
853Size=50
854Context=MimeTypes
855Type=Threshold
856
857[64x64/actions]
858Size=64
859Context=Actions
860Type=Threshold
861
862[64x64/animations]
863Size=64
864Context=Animations
865Type=Threshold
866
867[64x64/apps]
868Size=64
869Context=Applications
870Type=Threshold
871
872[64x64/categories]
873Size=64
874Context=Categories
875Type=Threshold
876
877[64x64/devices]
878Size=64
879Context=Devices
880Type=Threshold
881
882[64x64/emblems]
883Size=64
884Context=Emblems
885Type=Threshold
886
887[64x64/emotes]
888Size=64
889Context=Emotes
890Type=Threshold
891
892[64x64/filesystems]
893Size=64
894Context=FileSystems
895Type=Threshold
896
897[64x64/intl]
898Size=64
899Context=International
900Type=Threshold
901
902[64x64/mimetypes]
903Size=64
904Context=MimeTypes
905Type=Threshold
906
907[64x64/places]
908Size=64
909Context=Places
910Type=Threshold
911
912[64x64/status]
913Size=64
914Context=Status
915Type=Threshold
916
917[64x64/stock/chart]
918Size=64
919Context=Stock
920Type=Threshold
921
922[64x64/stock/code]
923Size=64
924Context=Stock
925Type=Threshold
926
927[64x64/stock/data]
928Size=64
929Context=Stock
930Type=Threshold
931
932[64x64/stock/form]
933Size=64
934Context=Stock
935Type=Threshold
936
937[64x64/stock/image]
938Size=64
939Context=Stock
940Type=Threshold
941
942[64x64/stock/io]
943Size=64
944Context=Stock
945Type=Threshold
946
947[64x64/stock/media]
948Size=64
949Context=Stock
950Type=Threshold
951
952[64x64/stock/navigation]
953Size=64
954Context=Stock
955Type=Threshold
956
957[64x64/stock/net]
958Size=64
959Context=Stock
960Type=Threshold
961
962[64x64/stock/object]
963Size=64
964Context=Stock
965Type=Threshold
966
967[64x64/stock/table]
968Size=64
969Context=Stock
970Type=Threshold
971
972[64x64/stock/text]
973Size=64
974Context=Stock
975Type=Threshold
976[72x72/actions]
977Size=72
978Context=Actions
979Type=Threshold
980
981[72x72/animations]
982Size=72
983Context=Animations
984Type=Threshold
985
986[72x72/apps]
987Size=72
988Context=Applications
989Type=Threshold
990
991[72x72/categories]
992Size=72
993Context=Categories
994Type=Threshold
995
996[72x72/devices]
997Size=72
998Context=Devices
999Type=Threshold
1000
1001[72x72/emblems]
1002Size=72
1003Context=Emblems
1004Type=Threshold
1005
1006[72x72/emotes]
1007Size=72
1008Context=Emotes
1009Type=Threshold
1010
1011[72x72/filesystems]
1012Size=72
1013Context=FileSystems
1014Type=Threshold
1015
1016[72x72/intl]
1017Size=72
1018Context=International
1019Type=Threshold
1020
1021[72x72/mimetypes]
1022Size=72
1023Context=MimeTypes
1024Type=Threshold
1025
1026[72x72/places]
1027Size=72
1028Context=Places
1029Type=Threshold
1030
1031[72x72/status]
1032Size=72
1033Context=Status
1034Type=Threshold
1035
1036[72x72/stock/chart]
1037Size=72
1038Context=Stock
1039Type=Threshold
1040
1041[72x72/stock/code]
1042Size=72
1043Context=Stock
1044Type=Threshold
1045
1046[72x72/stock/data]
1047Size=72
1048Context=Stock
1049Type=Threshold
1050
1051[72x72/stock/form]
1052Size=72
1053Context=Stock
1054Type=Threshold
1055
1056[72x72/stock/image]
1057Size=72
1058Context=Stock
1059Type=Threshold
1060
1061[72x72/stock/io]
1062Size=72
1063Context=Stock
1064Type=Threshold
1065
1066[72x72/stock/media]
1067Size=72
1068Context=Stock
1069Type=Threshold
1070
1071[72x72/stock/navigation]
1072Size=72
1073Context=Stock
1074Type=Threshold
1075
1076[72x72/stock/net]
1077Size=72
1078Context=Stock
1079Type=Threshold
1080
1081[72x72/stock/object]
1082Size=72
1083Context=Stock
1084Type=Threshold
1085
1086[72x72/stock/table]
1087Size=72
1088Context=Stock
1089Type=Threshold
1090
1091[72x72/stock/text]
1092Size=72
1093Context=Stock
1094Type=Threshold
1095
1096[96x96/actions]
1097Size=96
1098Context=Actions
1099Type=Threshold
1100
1101[96x96/animations]
1102Size=96
1103Context=Animations
1104Type=Threshold
1105
1106[96x96/apps]
1107Size=96
1108Context=Applications
1109Type=Threshold
1110
1111[96x96/categories]
1112Size=96
1113Context=Categories
1114Type=Threshold
1115
1116[96x96/devices]
1117Size=96
1118Context=Devices
1119Type=Threshold
1120
1121[96x96/emblems]
1122Size=96
1123Context=Emblems
1124Type=Threshold
1125
1126[96x96/emotes]
1127Size=96
1128Context=Emotes
1129Type=Threshold
1130
1131[96x96/filesystems]
1132Size=96
1133Context=FileSystems
1134Type=Threshold
1135
1136[96x96/intl]
1137Size=96
1138Context=International
1139Type=Threshold
1140
1141[96x96/mimetypes]
1142Size=96
1143Context=MimeTypes
1144Type=Threshold
1145
1146[96x96/places]
1147Size=96
1148Context=Places
1149Type=Threshold
1150
1151[96x96/status]
1152Size=96
1153Context=Status
1154Type=Threshold
1155
1156[96x96/stock/chart]
1157Size=96
1158Context=Stock
1159Type=Threshold
1160
1161[96x96/stock/code]
1162Size=96
1163Context=Stock
1164Type=Threshold
1165
1166[96x96/stock/data]
1167Size=96
1168Context=Stock
1169Type=Threshold
1170
1171[96x96/stock/form]
1172Size=96
1173Context=Stock
1174Type=Threshold
1175
1176[96x96/stock/image]
1177Size=96
1178Context=Stock
1179Type=Threshold
1180
1181[96x96/stock/io]
1182Size=96
1183Context=Stock
1184Type=Threshold
1185
1186[96x96/stock/media]
1187Size=96
1188Context=Stock
1189Type=Threshold
1190
1191[96x96/stock/navigation]
1192Size=96
1193Context=Stock
1194Type=Threshold
1195
1196[96x96/stock/net]
1197Size=96
1198Context=Stock
1199Type=Threshold
1200
1201[96x96/stock/object]
1202Size=96
1203Context=Stock
1204Type=Threshold
1205
1206[96x96/stock/table]
1207Size=96
1208Context=Stock
1209Type=Threshold
1210
1211[96x96/stock/text]
1212Size=96
1213Context=Stock
1214Type=Threshold
1215
1216[128x128/actions]
1217Size=128
1218Context=Actions
1219Type=Threshold
1220
1221[128x128/animations]
1222Size=128
1223Context=Animations
1224Type=Threshold
1225
1226[128x128/apps]
1227Size=128
1228Context=Applications
1229Type=Threshold
1230
1231[128x128/categories]
1232Size=128
1233Context=Categories
1234Type=Threshold
1235
1236[128x128/devices]
1237Size=128
1238Context=Devices
1239Type=Threshold
1240
1241[128x128/emblems]
1242Size=128
1243Context=Emblems
1244Type=Threshold
1245
1246[128x128/emotes]
1247Size=128
1248Context=Emotes
1249Type=Threshold
1250
1251[128x128/filesystems]
1252Size=128
1253Context=FileSystems
1254Type=Threshold
1255
1256[128x128/intl]
1257Size=128
1258Context=International
1259Type=Threshold
1260
1261[128x128/mimetypes]
1262Size=128
1263Context=MimeTypes
1264Type=Threshold
1265
1266[128x128/places]
1267Size=128
1268Context=Places
1269Type=Threshold
1270
1271[128x128/status]
1272Size=128
1273Context=Status
1274Type=Threshold
1275
1276[128x128/stock/chart]
1277Size=128
1278Context=Stock
1279Type=Threshold
1280
1281[128x128/stock/code]
1282Size=128
1283Context=Stock
1284Type=Threshold
1285
1286[128x128/stock/data]
1287Size=128
1288Context=Stock
1289Type=Threshold
1290
1291[128x128/stock/form]
1292Size=128
1293Context=Stock
1294Type=Threshold
1295
1296[128x128/stock/image]
1297Size=128
1298Context=Stock
1299Type=Threshold
1300
1301[128x128/stock/io]
1302Size=128
1303Context=Stock
1304Type=Threshold
1305
1306[128x128/stock/media]
1307Size=128
1308Context=Stock
1309Type=Threshold
1310
1311[128x128/stock/navigation]
1312Size=128
1313Context=Stock
1314Type=Threshold
1315
1316[128x128/stock/net]
1317Size=128
1318Context=Stock
1319Type=Threshold
1320
1321[128x128/stock/object]
1322Size=128
1323Context=Stock
1324Type=Threshold
1325
1326[128x128/stock/table]
1327Size=128
1328Context=Stock
1329Type=Threshold
1330
1331[128x128/stock/text]
1332Size=128
1333Context=Stock
1334Type=Threshold
1335
1336[192x192/actions]
1337Size=192
1338Context=Actions
1339Type=Threshold
1340
1341[192x192/animations]
1342Size=192
1343Context=Animations
1344Type=Threshold
1345
1346[192x192/apps]
1347Size=192
1348Context=Applications
1349Type=Threshold
1350
1351[192x192/categories]
1352Size=192
1353Context=Categories
1354Type=Threshold
1355
1356[192x192/devices]
1357Size=192
1358Context=Devices
1359Type=Threshold
1360
1361[192x192/emblems]
1362Size=192
1363Context=Emblems
1364Type=Threshold
1365
1366[192x192/emotes]
1367Size=192
1368Context=Emotes
1369Type=Threshold
1370
1371[192x192/filesystems]
1372Size=192
1373Context=FileSystems
1374Type=Threshold
1375
1376[192x192/intl]
1377Size=192
1378Context=International
1379Type=Threshold
1380
1381[192x192/mimetypes]
1382Size=192
1383Context=MimeTypes
1384Type=Threshold
1385
1386[192x192/places]
1387Size=192
1388Context=Places
1389Type=Threshold
1390
1391[192x192/status]
1392Size=192
1393Context=Status
1394Type=Threshold
1395
1396[192x192/stock/chart]
1397Size=192
1398Context=Stock
1399Type=Threshold
1400
1401[192x192/stock/code]
1402Size=192
1403Context=Stock
1404Type=Threshold
1405
1406[192x192/stock/data]
1407Size=192
1408Context=Stock
1409Type=Threshold
1410
1411[192x192/stock/form]
1412Size=192
1413Context=Stock
1414Type=Threshold
1415
1416[192x192/stock/image]
1417Size=192
1418Context=Stock
1419Type=Threshold
1420
1421[192x192/stock/io]
1422Size=192
1423Context=Stock
1424Type=Threshold
1425
1426[192x192/stock/media]
1427Size=192
1428Context=Stock
1429Type=Threshold
1430
1431[192x192/stock/navigation]
1432Size=192
1433Context=Stock
1434Type=Threshold
1435
1436[192x192/stock/net]
1437Size=192
1438Context=Stock
1439Type=Threshold
1440
1441[192x192/stock/object]
1442Size=192
1443Context=Stock
1444Type=Threshold
1445
1446[192x192/stock/table]
1447Size=192
1448Context=Stock
1449Type=Threshold
1450
1451[192x192/stock/text]
1452Size=192
1453Context=Stock
1454Type=Threshold
1455
1456[250x250/apps]
1457Size=250
1458Context=Applications
1459Type=Threshold
1460
1461[250x250/devices]
1462Size=250
1463Context=Devices
1464Type=Threshold
1465
1466[250x250/filesystems]
1467Size=250
1468Context=FileSystems
1469Type=Threshold
1470
1471[250x250/hildon]
1472Size=250
1473Context=hildon
1474Type=Threshold
1475
1476[250x250/mimetypes]
1477Size=250
1478Context=MimeTypes
1479Type=Threshold
1480
1481[scalable/actions]
1482MinSize=1
1483Size=128
1484MaxSize=256
1485Context=Actions
1486Type=Scalable
1487
1488[scalable/animations]
1489MinSize=1
1490Size=128
1491MaxSize=256
1492Context=Animations
1493Type=Scalable
1494
1495[scalable/apps]
1496MinSize=1
1497Size=128
1498MaxSize=256
1499Context=Applications
1500Type=Scalable
1501
1502[scalable/categories]
1503MinSize=1
1504Size=128
1505MaxSize=256
1506Context=Categories
1507Type=Scalable
1508
1509[scalable/devices]
1510MinSize=1
1511Size=128
1512MaxSize=256
1513Context=Devices
1514Type=Scalable
1515
1516[scalable/emblems]
1517MinSize=1
1518Size=128
1519MaxSize=256
1520Context=Emblems
1521Type=Scalable
1522
1523[scalable/emotes]
1524MinSize=1
1525Size=128
1526MaxSize=256
1527Context=Emotes
1528Type=Scalable
1529
1530[scalable/filesystems]
1531MinSize=1
1532Size=128
1533MaxSize=256
1534Context=FileSystems
1535Type=Scalable
1536
1537[scalable/hildon]
1538MinSize=1
1539Size=128
1540MaxSize=256
1541Context=hildon
1542Type=Scalable
1543
1544[scalable/intl]
1545MinSize=1
1546Size=128
1547MaxSize=256
1548Context=International
1549Type=Scalable
1550
1551[scalable/mimetypes]
1552MinSize=1
1553Size=128
1554MaxSize=256
1555Context=MimeTypes
1556Type=Scalable
1557
1558[scalable/places]
1559MinSize=1
1560Size=128
1561MaxSize=256
1562Context=Places
1563Type=Scalable
1564
1565[scalable/status]
1566MinSize=1
1567Size=128
1568MaxSize=256
1569Context=Status
1570Type=Scalable
1571
1572[scalable/stock/chart]
1573MinSize=1
1574Size=128
1575MaxSize=256
1576Context=Stock
1577Type=Scalable
1578
1579[scalable/stock/code]
1580MinSize=1
1581Size=128
1582MaxSize=256
1583Context=Stock
1584Type=Scalable
1585
1586[scalable/stock/data]
1587MinSize=1
1588Size=128
1589MaxSize=256
1590Context=Stock
1591Type=Scalable
1592
1593[scalable/stock/form]
1594MinSize=1
1595Size=128
1596MaxSize=256
1597Context=Stock
1598Type=Scalable
1599
1600[scalable/stock/image]
1601MinSize=1
1602Size=128
1603MaxSize=256
1604Context=Stock
1605Type=Scalable
1606
1607[scalable/stock/io]
1608MinSize=1
1609Size=128
1610MaxSize=256
1611Context=Stock
1612Type=Scalable
1613
1614[scalable/stock/media]
1615MinSize=1
1616Size=128
1617MaxSize=256
1618Context=Stock
1619Type=Scalable
1620
1621[scalable/stock/navigation]
1622MinSize=1
1623Size=128
1624MaxSize=256
1625Context=Stock
1626Type=Scalable
1627
1628[scalable/stock/net]
1629MinSize=1
1630Size=128
1631MaxSize=256
1632Context=Stock
1633Type=Scalable
1634
1635[scalable/stock/object]
1636MinSize=1
1637Size=128
1638MaxSize=256
1639Context=Stock
1640Type=Scalable
1641
1642[scalable/stock/table]
1643MinSize=1
1644Size=128
1645MaxSize=256
1646Context=Stock
1647Type=Scalable
1648
1649[scalable/stock/text]
1650MinSize=1
1651Size=128
1652MaxSize=256
1653Context=Stock
1654Type=Scalable
1655
1656[12x12/stock]
1657Size=12
1658Context=Stock
1659Type=Threshold
1660
1661[16x16/stock]
1662Size=16
1663Context=Stock
1664Type=Threshold
1665
1666[22x22/stock]
1667Size=22
1668Context=Stock
1669Type=Threshold
1670
1671[24x24/stock]
1672Size=24
1673Context=Stock
1674Type=Threshold
1675
1676[26x26/stock]
1677Size=26
1678Context=Stock
1679Type=Threshold
1680
1681[32x32/stock]
1682Size=32
1683Context=Stock
1684Type=Threshold
1685
1686[34x34/stock]
1687Size=34
1688Context=Stock
1689Type=Threshold
1690
1691[36x36/stock]
1692Size=36
1693Context=Stock
1694Type=Threshold
1695
1696[48x48/stock]
1697Size=48
1698Context=Stock
1699Type=Threshold
1700
1701[64x64/stock]
1702Size=64
1703Context=Stock
1704Type=Threshold
1705
1706[72x72/stock]
1707Size=72
1708Context=Stock
1709Type=Threshold
1710
1711[96x96/stock]
1712Size=96
1713Context=Stock
1714Type=Threshold
1715
1716[128x128/stock]
1717Size=128
1718Context=Stock
1719Type=Threshold
1720
1721[192x192/stock]
1722Size=192
1723Context=Stock
1724Type=Threshold
1725
1726[scalable/stock]
1727MinSize=1
1728Size=128
1729MaxSize=256
1730Context=Stock
1731Type=Scalable
diff --git a/meta/recipes-gnome/hicolor-icon-theme/hicolor-icon-theme_0.13.bb b/meta/recipes-gnome/hicolor-icon-theme/hicolor-icon-theme_0.13.bb
new file mode 100644
index 0000000000..9df81cbb16
--- /dev/null
+++ b/meta/recipes-gnome/hicolor-icon-theme/hicolor-icon-theme_0.13.bb
@@ -0,0 +1,23 @@
1SUMMARY = "Default icon theme that all icon themes automatically inherit from"
2HOMEPAGE = "http://icon-theme.freedesktop.org/wiki/HicolorTheme"
3BUGTRACKER = "https://bugs.freedesktop.org/"
4
5LICENSE = "GPLv2"
6LIC_FILES_CHKSUM = "file://COPYING;md5=f08a446809913fc9b3c718f0eaea0426"
7
8SECTION = "unknown"
9inherit gnomebase allarch autotools-brokensep
10
11PR = "r1"
12
13SRC_URI = "http://icon-theme.freedesktop.org/releases/${BPN}-${PV}.tar.gz \
14 file://index.theme"
15
16SRC_URI[md5sum] = "21d0f50aa6b8eef02846cda9e5e9324c"
17SRC_URI[sha256sum] = "a38b038915480d1ddd4e3c421562560a14d42ace0449a5acc07c50f57f9c3406"
18
19FILES_${PN} += "${datadir}/icons"
20
21do_install_append () {
22 install -m 0644 ${WORKDIR}/index.theme ${D}/${datadir}/icons/hicolor
23}
diff --git a/meta/recipes-gnome/json-glib/json-glib_1.0.0.bb b/meta/recipes-gnome/json-glib/json-glib_1.0.0.bb
new file mode 100644
index 0000000000..ce007094b4
--- /dev/null
+++ b/meta/recipes-gnome/json-glib/json-glib_1.0.0.bb
@@ -0,0 +1,20 @@
1SUMMARY = "JSON-GLib implements a full JSON parser using GLib and GObject"
2DESCRIPTION = "Use JSON-GLib it is possible to parse and generate valid JSON\
3 data structures, using a DOM-like API. JSON-GLib also offers GObject \
4integration, providing the ability to serialize and deserialize GObject \
5instances to and from JSON data types."
6HOMEPAGE = "http://live.gnome.org/JsonGlib"
7
8LICENSE = "LGPLv2.1"
9LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34"
10
11DEPENDS = "glib-2.0"
12
13GNOME_COMPRESS_TYPE = "xz"
14
15SRC_URI[archive.md5sum] = "d13485f5aa3b93227bbeb689ccfb596c"
16SRC_URI[archive.sha256sum] = "dbf558d2da989ab84a27e4e13daa51ceaa97eb959c2c2f80976c9322a8f4cdde"
17
18inherit gnome gettext lib_package
19
20EXTRA_OECONF = "--disable-introspection"
diff --git a/meta/recipes-gnome/libffi/libffi/fix-libffi.la-location.patch b/meta/recipes-gnome/libffi/libffi/fix-libffi.la-location.patch
new file mode 100644
index 0000000000..0a49ab5020
--- /dev/null
+++ b/meta/recipes-gnome/libffi/libffi/fix-libffi.la-location.patch
@@ -0,0 +1,18 @@
1
2Upstream-Status: Inaproppriate
3
4Signed-off-by: Saul Wold <sgw@linux.intel.com>
5
6Index: libffi-3.0.13/Makefile.am
7===================================================================
8--- libffi-3.0.13.orig/Makefile.am
9+++ libffi-3.0.13/Makefile.am
10@@ -98,7 +98,7 @@ FLAGS_TO_PASS = $(AM_MAKEFLAGS)
11
12 MAKEOVERRIDES=
13
14-toolexeclib_LTLIBRARIES = libffi.la
15+lib_LTLIBRARIES = libffi.la
16 noinst_LTLIBRARIES = libffi_convenience.la
17
18 libffi_la_SOURCES = src/prep_cif.c src/types.c \
diff --git a/meta/recipes-gnome/libffi/libffi_3.1.bb b/meta/recipes-gnome/libffi/libffi_3.1.bb
new file mode 100644
index 0000000000..bc97aba20b
--- /dev/null
+++ b/meta/recipes-gnome/libffi/libffi_3.1.bb
@@ -0,0 +1,24 @@
1SUMMARY = "A portable foreign function interface library"
2DESCRIPTION = "The `libffi' library provides a portable, high level programming interface to various calling \
3conventions. This allows a programmer to call any function specified by a call interface description at run \
4time. FFI stands for Foreign Function Interface. A foreign function interface is the popular name for the \
5interface that allows code written in one language to call code written in another language. The `libffi' \
6library really only provides the lowest, machine dependent layer of a fully featured foreign function interface. \
7A layer must exist above `libffi' that handles type conversions for values passed between the two languages."
8
9LICENSE = "MIT"
10LIC_FILES_CHKSUM = "file://LICENSE;md5=3610bb17683a0089ed64055416b2ae1b"
11
12SRC_URI = "ftp://sourceware.org/pub/libffi/${BP}.tar.gz \
13 file://fix-libffi.la-location.patch"
14
15SRC_URI[md5sum] = "f5898b29bbfd70502831a212d9249d10"
16SRC_URI[sha256sum] = "97feeeadca5e21870fa4433bc953d1b3af3f698d5df8a428f68b73cd60aef6eb"
17
18EXTRA_OECONF += "--disable-builddir"
19
20inherit autotools texinfo
21
22FILES_${PN}-dev += "${libdir}/libffi-${PV}"
23
24BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-gnome/libglade/libglade-2.6.4/glade-cruft.patch b/meta/recipes-gnome/libglade/libglade-2.6.4/glade-cruft.patch
new file mode 100644
index 0000000000..c5d586465c
--- /dev/null
+++ b/meta/recipes-gnome/libglade/libglade-2.6.4/glade-cruft.patch
@@ -0,0 +1,102 @@
1Upstream-Status: Pending
2
3diff -ur libglade-2.4.0~/configure.in libglade-2.4.0/configure.in
4--- libglade-2.4.0~/configure.in 2004-05-17 12:38:31.000000000 +0100
5+++ libglade-2.4.0/configure.in 2004-07-28 16:53:09.000000000 +0100
6@@ -147,6 +147,18 @@
7 AM_CONDITIONAL(HAVE_PYTHON, $have_python)
8 AC_SUBST(PYTHON)
9
10+AC_MSG_CHECKING([for cruft in libgtk])
11+AC_TRY_LINK([
12+#include <gtk/gtk.h>
13+#include <stdio.h>
14+], [ gtk_tree_get_type (); return 0; ],
15+ [ AC_MSG_RESULT(yes)
16+ have_cruft=yes ],
17+ [ AC_MSG_RESULT(no)
18+ AC_DEFINE(DISABLE_CRUFT,,[leave out support for old, broken widgets])
19+ have_cruft=no ])
20+AC_SUBST(DISABLE_CRUFT)
21+
22 dnl add debugging options ...
23 changequote(,)dnl
24 if test "x$GCC" = xyes; then
25Only in libglade-2.4.0: configure.in.orig
26diff -ur libglade-2.4.0~/glade/glade-gtk.c libglade-2.4.0/glade/glade-gtk.c
27--- libglade-2.4.0~/glade/glade-gtk.c 2004-03-13 13:47:35.000000000 +0000
28+++ libglade-2.4.0/glade/glade-gtk.c 2004-07-28 16:53:52.000000000 +0100
29@@ -213,6 +213,8 @@
30 gtk_clist_column_titles_hide (GTK_CLIST (w));
31 }
32
33+#ifndef DISABLE_CRUFT
34+
35 static void
36 tree_set_selection_mode (GladeXML *xml, GtkWidget *w,
37 const char *name, const char *value)
38@@ -238,6 +240,8 @@
39 gtk_tree_set_view_lines (GTK_TREE (w), BOOL (value));
40 }
41
42+#endif
43+
44 static void
45 list_set_selection_mode (GladeXML *xml, GtkWidget *w,
46 const char *name, const char *value)
47@@ -254,6 +258,7 @@
48 gtk_check_menu_item_set_show_toggle (GTK_CHECK_MENU_ITEM (w), BOOL (value));
49 }
50
51+#ifndef DISABLE_CRUFT
52 static void
53 text_set_text (GladeXML *xml, GtkWidget *w,
54 const char *name, const char *value)
55@@ -262,6 +267,7 @@
56
57 gtk_editable_insert_text (GTK_EDITABLE (w), value, -1, &pos);
58 }
59+#endif
60
61 static void
62 radio_menu_item_set_group (GladeXML *xml, GtkWidget *w,
63@@ -1125,13 +1131,17 @@
64 glade_register_custom_prop (GTK_TYPE_CLIST, "selection_mode", clist_set_selection_mode);
65 glade_register_custom_prop (GTK_TYPE_CLIST, "shadow_type", clist_set_shadow_type);
66 glade_register_custom_prop (GTK_TYPE_CLIST, "show_titles", clist_set_show_titles);
67+#ifndef DISABLE_CRUFT
68 glade_register_custom_prop (GTK_TYPE_TREE, "selection_mode", tree_set_selection_mode);
69 glade_register_custom_prop (GTK_TYPE_TREE, "view_mode", tree_set_view_mode);
70 glade_register_custom_prop (GTK_TYPE_TREE, "view_line", tree_set_view_line);
71+#endif
72 glade_register_custom_prop (GTK_TYPE_LIST, "selection_mode", list_set_selection_mode);
73 glade_register_custom_prop (GTK_TYPE_CHECK_MENU_ITEM, "always_show_toggle",
74 check_menu_item_set_always_show_toggle);
75+#ifndef DISABLE_CRUFT
76 glade_register_custom_prop (GTK_TYPE_TEXT, "text", text_set_text);
77+#endif
78 glade_register_custom_prop (GTK_TYPE_RADIO_MENU_ITEM, "group",
79 radio_menu_item_set_group);
80 glade_register_custom_prop (GTK_TYPE_TOOLBAR, "tooltips", toolbar_set_tooltips);
81@@ -1288,8 +1298,10 @@
82 glade_standard_build_children, NULL);
83 glade_register_widget (GTK_TYPE_TEAROFF_MENU_ITEM, glade_standard_build_widget,
84 NULL, NULL);
85+#ifndef DISABLE_CRUFT
86 glade_register_widget (GTK_TYPE_TEXT, glade_standard_build_widget,
87 NULL, NULL);
88+#endif
89 glade_register_widget (GTK_TYPE_TEXT_VIEW, glade_standard_build_widget,
90 NULL, NULL);
91 glade_register_widget (GTK_TYPE_TIPS_QUERY, glade_standard_build_widget,
92@@ -1304,8 +1316,10 @@
93 glade_standard_build_children, NULL);
94 glade_register_widget (GTK_TYPE_TOOL_BUTTON, glade_standard_build_widget,
95 NULL, NULL);
96+#ifndef DISABLE_CRUFT
97 glade_register_widget (GTK_TYPE_TREE, glade_standard_build_widget,
98 NULL, NULL);
99+#endif
100 glade_register_widget (GTK_TYPE_TREE_VIEW, glade_standard_build_widget,
101 NULL, NULL);
102 glade_register_widget (GTK_TYPE_VBUTTON_BOX, glade_standard_build_widget,
diff --git a/meta/recipes-gnome/libglade/libglade-2.6.4/no-xml2.patch b/meta/recipes-gnome/libglade/libglade-2.6.4/no-xml2.patch
new file mode 100644
index 0000000000..dc4c092fd3
--- /dev/null
+++ b/meta/recipes-gnome/libglade/libglade-2.6.4/no-xml2.patch
@@ -0,0 +1,501 @@
1Upstream-Status: Inappropriate [configuration]
2
3diff -urN libglade-2.4.2.orig/configure.in libglade-2.4.2/configure.in
4--- libglade-2.4.2.orig/configure.in 2005-02-11 12:42:58.000000000 +0100
5+++ libglade-2.4.2/configure.in 2005-03-22 01:22:00.000000000 +0100
6@@ -52,11 +52,33 @@
7 AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
8
9 PKG_CHECK_MODULES(LIBGLADE, [dnl
10- libxml-2.0 >= required_libxml_version dnl
11 atk >= required_atk_version dnl
12 gtk+-2.0 >= required_gtk_version dnl
13 glib-2.0 >= required_glib_version])
14
15+disable_xml2=no
16+AC_ARG_WITH([libxml2],
17+ AC_HELP_STRING([--without-libxml2], [Don't use libxml2, use Glib's GMarkupParser instead]),
18+ [disable_xml2=yes],
19+ [disable_xml2=no])
20+
21+AC_MSG_CHECKING([if we are using libxml2])
22+if test "x$disable_xml2" == "xno"; then
23+ AC_MSG_RESULT(yes)
24+ PKG_CHECK_MODULES(XML2, libxml-2.0 >= 2.4.10)
25+ PKGCFG_REQUIRE_LIBXML2="libxml-2.0"
26+ LIBGLADE_CFLAGS="$LIBGLADE_CFLAGS $XML2_CFLAGS"
27+ LIBGLADE_LIBS="$LIBGLADE_LIBS $XML2_LIBS"
28+else
29+ LIBGLADE_CFLAGS="$LIBGLADE_CFLAGS -DUSE_GMARKUP_PARSER"
30+ PKGCFG_REQUIRE_LIBXML2=""
31+ AC_MSG_RESULT(no)
32+fi
33+
34+AC_SUBST(XML2_LIBS)
35+AC_SUBST(XML2_CFLAGS)
36+AC_SUBST(PKGCFG_REQUIRE_LIBXML2)
37+
38 AC_MSG_CHECKING([for native Win32])
39 case "$host" in
40 *-*-mingw*)
41@@ -116,6 +138,21 @@
42 fi
43 fi
44
45+if test "x$disable_xml2" == "xyes"; then
46+ echo "*****************************************************"
47+ echo " You chose to disable libxml2 and use Glib's"
48+ echo " GMarkupParser instead."
49+ echo
50+ echo " Please bear in mind that using libglade with"
51+ echo " GMarkupParser is an experimental feature only."
52+ echo
53+ echo " Please post problems or success stories to"
54+ echo " the glade-devel mailing list. Thank you."
55+ echo "*****************************************************"
56+fi
57+
58+
59+
60 GTK_DOC_CHECK(1.0)
61
62 dnl gettext stuff ... there is no message catalog for libglade -- libglade
63diff -urN libglade-2.4.2.orig/glade/glade-parser.c libglade-2.4.2/glade/glade-parser.c
64--- libglade-2.4.2.orig/glade/glade-parser.c 2004-11-11 11:56:13.000000000 +0100
65+++ libglade-2.4.2/glade/glade-parser.c 2005-03-22 01:20:00.000000000 +0100
66@@ -34,7 +34,15 @@
67 # define dgettext(Domain, String) (String)
68 #endif
69
70-#include <libxml/parser.h>
71+#ifdef USE_GMARKUP_PARSER
72+# include <zlib.h>
73+#else
74+# include <libxml/parser.h>
75+#endif
76+
77+#ifdef USE_GMARKUP_PARSER
78+# define xmlChar gchar
79+#endif
80
81 #include "glade-parser.h"
82 #include "glade-private.h"
83@@ -508,7 +516,9 @@
84 case PARSER_START:
85 if (!strcmp(name, "glade-interface")) {
86 state->state = PARSER_GLADE_INTERFACE;
87-#if 0
88+
89+#ifndef USE_GMARKUP_PARSER
90+ #if 0
91 /* check for correct XML namespace */
92 for (i = 0; attrs && attrs[i] != NULL; i += 2) {
93 if (!strcmp(attrs[i], "xmlns") &&
94@@ -518,7 +528,9 @@
95 g_warning("unknown attribute `%s' for <glade-interface>",
96 attrs[i]);
97 }
98+ #endif
99 #endif
100+
101 } else {
102 g_warning("Expected <glade-interface>. Got <%s>.", name);
103 state->prev_state = state->state;
104@@ -1063,12 +1075,18 @@
105 }
106 }
107
108+#ifndef USE_GMARKUP_PARSER
109+
110 static xmlEntityPtr
111 glade_parser_get_entity(GladeParseState *state, const xmlChar *name)
112 {
113 return xmlGetPredefinedEntity(name);
114 }
115
116+#endif /* !defined(USE_GMARKUP_PARSER) */
117+
118+#ifndef USE_GMARKUP_PARSER
119+
120 static void
121 glade_parser_warning(GladeParseState *state, const char *msg, ...)
122 {
123@@ -1079,6 +1097,10 @@
124 va_end(args);
125 }
126
127+#endif /* !defined(USE_GMARKUP_PARSER) */
128+
129+#ifndef USE_GMARKUP_PARSER
130+
131 static void
132 glade_parser_error(GladeParseState *state, const char *msg, ...)
133 {
134@@ -1089,6 +1111,10 @@
135 va_end(args);
136 }
137
138+#endif /* !defined(USE_GMARKUP_PARSER) */
139+
140+#ifndef USE_GMARKUP_PARSER
141+
142 static void
143 glade_parser_fatal_error(GladeParseState *state, const char *msg, ...)
144 {
145@@ -1099,6 +1125,10 @@
146 va_end(args);
147 }
148
149+#endif /* !defined(USE_GMARKUP_PARSER) */
150+
151+#ifndef USE_GMARKUP_PARSER
152+
153 static xmlSAXHandler glade_parser = {
154 (internalSubsetSAXFunc)NULL, /* internalSubset */
155 (isStandaloneSAXFunc)NULL, /* isStandalone */
156@@ -1126,6 +1156,82 @@
157 (fatalErrorSAXFunc)glade_parser_fatal_error, /* fatalError */
158 };
159
160+#else /* USE_GMARKUP_PARSER */
161+
162+static void
163+glade_parser_start_element_wrapper(GMarkupParseContext *context,
164+ const gchar *name,
165+ const gchar **attr_names,
166+ const gchar **attr_values,
167+ gpointer state,
168+ GError **error)
169+{
170+ guint i = 0;
171+
172+ /* Pack attribute names/values from two separate
173+ * arrays (GMarkupParser style) into one single
174+ * array (libxml SAXParser style). This is not
175+ * very efficient, but we do it to make the
176+ * GMarkupParser code as little invasive as
177+ * possible. */
178+
179+ while (attr_names[i] != NULL) {
180+ ++i;
181+ }
182+
183+ if (1)
184+ {
185+ const gchar *attr[(i*2)+1];
186+ guint j, k;
187+
188+ for (j=0, k=0; k < i; j += 2)
189+ {
190+ attr[j] = attr_names[k];
191+ attr[j+1] = attr_values[k];
192+ ++k;
193+ }
194+ attr[i*2] = NULL;
195+
196+ glade_parser_start_element((GladeParseState*)state, name, attr);
197+ }
198+}
199+
200+static void
201+glade_parser_end_element_wrapper(GMarkupParseContext *context,
202+ const gchar *name,
203+ gpointer state,
204+ GError **err)
205+{
206+ glade_parser_end_element((GladeParseState*)state, name);
207+}
208+
209+static void
210+glade_parser_characters_wrapper(GMarkupParseContext *context,
211+ const gchar *chars,
212+ gsize len,
213+ gpointer state,
214+ GError **err)
215+{
216+ glade_parser_characters((GladeParseState*)state, chars, (int) len);
217+}
218+
219+static void
220+glade_parser_error(GMarkupParseContext *context, GError *err, gpointer data)
221+{
222+ g_log("Glade-Parser", G_LOG_LEVEL_CRITICAL, "%s", err->message);
223+}
224+
225+static const GMarkupParser glade_parser = {
226+ glade_parser_start_element_wrapper, /* element open */
227+ glade_parser_end_element_wrapper, /* element close */
228+ glade_parser_characters_wrapper, /* text content */
229+ NULL, /* passthrough */
230+ glade_parser_error, /* parse error */
231+};
232+
233+#endif /* USE_GMARKUP_PARSER */
234+
235+
236 static void
237 widget_info_free(GladeWidgetInfo *info)
238 {
239@@ -1191,6 +1297,9 @@
240 *
241 * Returns: the GladeInterface structure for the XML file.
242 */
243+
244+#ifndef USE_GMARKUP_PARSER
245+
246 GladeInterface *
247 glade_parser_parse_file(const gchar *file, const gchar *domain)
248 {
249@@ -1222,6 +1331,31 @@
250 return state.interface;
251 }
252
253+#else /* defined(USE_GMARKUP_PARSER) */
254+
255+GladeInterface *
256+glade_parser_parse_file(const gchar *file, const gchar *domain)
257+{
258+ GladeInterface *interface;
259+ GError *err = NULL;
260+ gchar *content = NULL;
261+ gsize clen;
262+
263+ if (!g_file_get_contents(file, &content, &clen, &err)) {
264+ g_warning("could not load glade file: %s", err->message);
265+ g_error_free(err);
266+ return NULL;
267+ }
268+
269+ interface = glade_parser_parse_buffer(content, (gint) clen, domain);
270+
271+ g_free(content);
272+
273+ return interface;
274+}
275+
276+#endif /* USE_GMARKUP_PARSER */
277+
278 /**
279 * glade_parser_parse_buffer
280 * @buffer: a buffer in memory containing XML data.
281@@ -1237,6 +1371,9 @@
282 *
283 * Returns: the GladeInterface structure for the XML buffer.
284 */
285+
286+#ifndef USE_GMARKUP_PARSER
287+
288 GladeInterface *
289 glade_parser_parse_buffer(const gchar *buffer, gint len, const gchar *domain)
290 {
291@@ -1263,6 +1400,161 @@
292 return state.interface;
293 }
294
295+#else /* defined(USE_GMARKUP_PARSER) */
296+
297+
298+static GladeInterface *
299+glade_parser_parse_buffer_internal(const gchar *buffer, gint len, const gchar *domain)
300+{
301+ GMarkupParseContext *context;
302+ GladeParseState state = { 0 };
303+ GError *err = NULL;
304+
305+ state.interface = NULL;
306+ if (domain)
307+ state.domain = domain;
308+ else
309+ state.domain = textdomain(NULL);
310+
311+ /* FIXME: This strstr() is not safe, as it ignores the len
312+ * argument and assumes the buffer is NUL-terminated */
313+ if (strstr(buffer, "<?xml") == NULL) {
314+ g_warning("No XML header found in document!");
315+ return NULL;
316+ }
317+
318+ context = g_markup_parse_context_new(&glade_parser, (GMarkupParseFlags) 0, &state, NULL);
319+
320+ glade_parser_start_document(&state);
321+
322+ if (!g_markup_parse_context_parse(context, buffer, (gssize) len, &err)) {
323+ g_warning("document not well formed: %s", err->message);
324+ g_error_free(err);
325+ if (state.interface)
326+ glade_interface_destroy (state.interface);
327+ return NULL;
328+ }
329+
330+ glade_parser_end_document(&state);
331+
332+ if (state.state != PARSER_FINISH) {
333+ g_warning("did not finish in PARSER_FINISH state!");
334+
335+ if (state.interface)
336+ glade_interface_destroy(state.interface);
337+
338+ return NULL;
339+ }
340+
341+ return state.interface;
342+}
343+
344+struct _gzip_rfc1952_hdr
345+{
346+ guint8 id1, id2, cm, flags;
347+ guint32 mtime;
348+ guint8 xflags;
349+ guint8 os;
350+};
351+
352+static GladeInterface *
353+glade_parser_parse_gzipped_buffer(const gchar *buffer, gint len, const gchar *domain)
354+{
355+ struct _gzip_rfc1952_hdr *hdr = (struct _gzip_rfc1952_hdr*)buffer;
356+ struct z_stream_s zstream;
357+ GladeInterface *interface;
358+ const guint8 *cbuf; /* start of compressed data */
359+ guint8 *decompress_buf;
360+ gulong decompress_len = 0;
361+ gint ret;
362+
363+ g_assert(hdr != NULL && hdr->id1 == 0x1f && hdr->id2 == 0x8b);
364+
365+ if (hdr->cm != Z_DEFLATED) {
366+ g_warning("Unknown decompression method %u", (guint) hdr->cm);
367+ return NULL;
368+ }
369+
370+ /* Uncompressed size (modulo 2^32) is last
371+ * 4 bytes of gzipped file, and little endian.
372+ * See RFC 1952 */
373+ decompress_len = GUINT32_FROM_LE(*((guint32*)(((guint8*)buffer) + len - 4)));
374+
375+ /* paranoid mode: glade files > 5MB are unlikely */
376+ g_return_val_if_fail(decompress_len < 5*1024*1024, NULL);
377+
378+ decompress_buf = g_malloc0(decompress_len + 1); /* +1 for NUL-terminator */
379+
380+ /* find start of compressed data, skipping header stuff */
381+ cbuf = (guint8*)buffer + 10;
382+ if (hdr->flags & 0x04) {
383+ guint16 xlen = GUINT16_FROM_LE(*((guint16*)cbuf));
384+ cbuf += xlen + 2;
385+ }
386+ if (hdr->flags & 0x08) {
387+ guint16 onamelen = strlen(cbuf);
388+ cbuf += onamelen + 1;
389+ }
390+ if (hdr->flags & 0x10) {
391+ guint16 commentlen = strlen(cbuf);
392+ cbuf += commentlen + 1;
393+ }
394+ if (hdr->flags & 0x02)
395+ {
396+ cbuf += 2; /* skip header CRC16 */
397+ }
398+
399+ zstream.next_in = (void*)cbuf;
400+ zstream.avail_in = (uLongf) len - ((void*)cbuf-(void*)buffer) - 4 - 4 +1;
401+ zstream.next_out = decompress_buf;
402+ zstream.avail_out= decompress_len;
403+ zstream.zalloc = Z_NULL;
404+ zstream.zfree = Z_NULL;
405+ zstream.opaque = Z_NULL;
406+
407+ ret = inflateInit2(&zstream, -MAX_WBITS);
408+
409+ if (ret != Z_OK) {
410+ g_warning("inflateInit2() failed. zlib error code: %d", ret);
411+ g_free(decompress_buf);
412+ return NULL;
413+ }
414+
415+ ret = inflate(&zstream, Z_FINISH);
416+
417+ if (ret != Z_STREAM_END) {
418+ g_warning("zlib decompression failed. zlib error code: %d", ret);
419+ g_free(decompress_buf);
420+ return NULL;
421+ }
422+
423+ interface = glade_parser_parse_buffer_internal(decompress_buf, decompress_len, domain);
424+
425+ g_free(decompress_buf);
426+
427+ return interface;
428+}
429+
430+GladeInterface *
431+glade_parser_parse_buffer(const gchar *buffer, gint len, const gchar *domain)
432+{
433+ g_return_val_if_fail(buffer != NULL, NULL);
434+ g_return_val_if_fail(len > 0, NULL);
435+
436+ /* Check if buffer is gzipped */
437+ if (buffer[0] == 0x1f && buffer[1] == (gchar)0x8b) {
438+ return glade_parser_parse_gzipped_buffer(buffer, len, domain);
439+ }
440+
441+ /* Buffer is cleartext. */
442+ return glade_parser_parse_buffer_internal(buffer, len, domain);
443+}
444+
445+#endif /* USE_GMARKUP_PARSER */
446+
447+
448+#ifndef USE_GMARKUP_PARSER
449+
450 static void
451 dump_widget(xmlNode *parent, GladeWidgetInfo *info, gint indent)
452 {
453@@ -1382,6 +1674,8 @@
454 xmlNodeAddContent(widget, " ");
455 }
456
457+#endif /* !defined(USE_GMARKUP_PARSER) */
458+
459 /**
460 * glade_interface_dump
461 * @interface: the GladeInterface
462@@ -1390,6 +1684,9 @@
463 * This function dumps the contents of a GladeInterface into a file as
464 * XML. It is intended mainly as a debugging tool.
465 */
466+
467+#ifndef USE_GMARKUP_PARSER
468+
469 void
470 glade_interface_dump(GladeInterface *interface, const gchar *filename)
471 {
472@@ -1428,6 +1725,17 @@
473 xmlFreeDoc(doc);
474 }
475
476+#else /* defined(USE_GMARKUP_PARSER) */
477+
478+void
479+glade_interface_dump(GladeInterface *interface, const gchar *filename)
480+{
481+ g_warning("glade_interface_dump() is only available with libxml2.");
482+}
483+
484+#endif /* USE_GMARKUP_PARSER */
485+
486+
487 #if 0
488 int
489 main(int argc, char **argv) {
490diff -urN libglade-2.4.2.orig/libglade-2.0.pc.in libglade-2.4.2/libglade-2.0.pc.in
491--- libglade-2.4.2.orig/libglade-2.0.pc.in 2001-12-12 15:28:23.000000000 +0100
492+++ libglade-2.4.2/libglade-2.0.pc.in 2005-03-22 01:20:00.000000000 +0100
493@@ -11,7 +11,7 @@
494 Name: Libglade
495 Description: a library for dynamically loading GLADE interface files
496 Version: @VERSION@
497-Requires: gtk+-2.0 libxml-2.0
498+Requires: gtk+-2.0 @PKGCFG_REQUIRE_LIBXML2@
499 Libs: -L${libdir} -lglade-2.0
500 Cflags: -I${includedir}/libglade-2.0
501
diff --git a/meta/recipes-gnome/libglade/libglade-2.6.4/python_environment.patch b/meta/recipes-gnome/libglade/libglade-2.6.4/python_environment.patch
new file mode 100644
index 0000000000..b5b2ec4534
--- /dev/null
+++ b/meta/recipes-gnome/libglade/libglade-2.6.4/python_environment.patch
@@ -0,0 +1,14 @@
1Using @PYTHON@ for this path would result in the build system python being
2referred to. Instead we want to locate python from the environment.
3
4Upstream-Status: Inappropriate [configuration]
5
6diff -ruN libglade-2.6.4-orig//libglade-convert.in libglade-2.6.4/libglade-convert.in
7--- libglade-2.6.4-orig//libglade-convert.in 2011-09-22 10:18:28.991164003 +0800
8+++ libglade-2.6.4/libglade-convert.in 2011-09-22 10:18:55.431164003 +0800
9@@ -1,4 +1,4 @@
10-#!@PYTHON@
11+#!/usr/bin/env python
12 # -*- mode: python -*-
13
14 # yes, this requires python 2.x and an XML parser module (eg. PyExpat)
diff --git a/meta/recipes-gnome/libglade/libglade_2.6.4.bb b/meta/recipes-gnome/libglade/libglade_2.6.4.bb
new file mode 100644
index 0000000000..681b856427
--- /dev/null
+++ b/meta/recipes-gnome/libglade/libglade_2.6.4.bb
@@ -0,0 +1,29 @@
1SUMMARY = "Runtime support for the GTK+ interface builder"
2HOMEPAGE = "http://library.gnome.org/devel/libglade/"
3BUGTRACKER = "https://bugzilla.gnome.org/"
4
5LICENSE = "LGPLv2 & LGPLv2+"
6LIC_FILES_CHKSUM = "file://COPYING;md5=55ca817ccb7d5b5b66355690e9abc605 \
7 file://glade/glade.h;endline=22;md5=a04f461c964ba4b57a172d1fbcd8f8fc \
8 file://glade/glade-gtk.c;endline=22;md5=766f993433e2642fec87936d319990ff"
9
10SECTION = "libs"
11PR = "r5"
12DEPENDS = "zlib gdk-pixbuf gtk+"
13
14inherit autotools pkgconfig gnomebase gtk-doc
15
16SRC_URI += "file://glade-cruft.patch file://no-xml2.patch file://python_environment.patch"
17
18SRC_URI[archive.md5sum] = "d1776b40f4e166b5e9c107f1c8fe4139"
19SRC_URI[archive.sha256sum] = "64361e7647839d36ed8336d992fd210d3e8139882269bed47dc4674980165dec"
20
21EXTRA_OECONF += "--without-libxml2"
22
23CFLAGS += "-lz"
24
25PACKAGES += " ${PN}-data"
26FILES_${PN} = "${libdir}/lib*.so.*"
27FILES_${PN}-data = "${datadir}/xml/libglade/glade-2.0.dtd"
28FILES_${PN}-dev += "${bindir}/libglade-convert"
29#RDEPENDS_${PN} = "${PN}-data"
diff --git a/meta/recipes-gnome/libnotify/libnotify_0.6.0.bb b/meta/recipes-gnome/libnotify/libnotify_0.6.0.bb
new file mode 100644
index 0000000000..1d92b6482f
--- /dev/null
+++ b/meta/recipes-gnome/libnotify/libnotify_0.6.0.bb
@@ -0,0 +1,17 @@
1SUMMARY = "Library for sending desktop notifications to a notification daemon"
2SECTION = "libs"
3LICENSE = "LGPLv2.1"
4LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34"
5
6PR = "r1"
7
8DEPENDS = "dbus gtk+ dbus-glib"
9
10inherit gnomebase
11SRC_URI[archive.md5sum] = "732c9d2cd5eb6a9069264a319d330516"
12SRC_URI[archive.sha256sum] = "73b16a79bb2fed62dcf146b11c4405776cb96a09dce66379ca541da7dbd64210"
13
14do_configure_prepend() {
15 sed -i /GTK3/d ${S}/configure.ac
16 sed -i -e /test-gtk3/d -e 's/test-xy-stress \\/test-xy-stress/' ${S}/tests/Makefile.am
17}
diff --git a/meta/recipes-gnome/librsvg/librsvg/gtk-option.patch b/meta/recipes-gnome/librsvg/librsvg/gtk-option.patch
new file mode 100644
index 0000000000..d44bdd3209
--- /dev/null
+++ b/meta/recipes-gnome/librsvg/librsvg/gtk-option.patch
@@ -0,0 +1,62 @@
1Upstream-Status: Submitted [https://bugzilla.gnome.org/show_bug.cgi?id=712693]
2Signed-off-by: Ross Burton <ross.burton@intel.com>
3
4From 18917f7fd3160afe06019f4b6234aeb78a3fdb4e Mon Sep 17 00:00:00 2001
5From: Ross Burton <ross.burton@intel.com>
6Date: Tue, 19 Nov 2013 16:00:29 +0000
7Subject: [PATCH] configure: add option to enable/disable use of GTK+
8
9Distro packagers like predictability and automatically detected optional
10dependencies are not predicable. Add a --with-gtk3 option (default to "auto")
11for forcibly controlling whether GTK+ will be used or not.
12
13Signed-off-by: Ross Burton <ross.burton@intel.com>
14
15https://bugzilla.gnome.org/show_bug.cgi?id=712693
16---
17 configure.in | 17 +++++++++++------
18 1 file changed, 11 insertions(+), 6 deletions(-)
19
20diff --git a/configure.in b/configure.in
21index f7a89dc..1498f72 100644
22--- a/configure.in
23+++ b/configure.in
24@@ -119,17 +119,22 @@ AC_CHECK_FUNCS(strtok_r)
25 # GTK
26 # ===========================================================================
27
28-PKG_CHECK_MODULES([GTK3],[gtk+-3.0 >= $GTK3_REQUIRED],[have_gtk_3=yes],[have_gtk_3=no])
29-
30 GTK3_BINARY_VERSION=
31
32-if test "$have_gtk_3" = "yes"; then
33- GTK3_BINARY_VERSION="`$PKG_CONFIG --variable=gtk_binary_version gtk+-3.0`"
34+AC_MSG_CHECKING([whether to use GTK+ 3])
35+AC_ARG_WITH([gtk3],
36+ [AS_HELP_STRING([--without-gtk3],[Don't build GTK+3 tools (default=auto)])],
37+ [],[PKG_CHECK_EXISTS([gtk+-3.0 >= $GTK3_REQUIRED],[with_gtk3=yes],[with_gtk3=no])])
38+AC_MSG_RESULT([$with_gtk3])
39+
40+if test "$with_gtk3" = "yes"; then
41+ PKG_CHECK_MODULES(GTK3, [gtk+-3.0 >= $GTK3_REQUIRED])
42+ GTK3_BINARY_VERSION="`$PKG_CONFIG --variable=gtk_binary_version gtk+-3.0`"
43 fi
44
45 AC_SUBST([GTK3_BINARY_VERSION])
46
47-AM_CONDITIONAL([HAVE_GTK_3],[test "$have_gtk_3" = "yes"])
48+AM_CONDITIONAL([HAVE_GTK_3],[test "$with_gtk3" = "yes"])
49
50 dnl ===========================================================================
51 dnl GDK-Pixbuf SVG loader
52@@ -305,6 +310,6 @@ librsvg-$VERSION
53 Build introspectable bindings: ${found_introspection}
54 Build Vala bindings: ${enable_vala}
55 Build GdkPixbuf loader: ${enable_pixbuf_loader}
56- GTK 3.0: ${have_gtk_3}
57+ GTK 3.0: ${with_gtk3}
58 Build miscellaenous tools: ${build_misc_tools}
59 "
60--
611.7.10.4
62
diff --git a/meta/recipes-gnome/librsvg/librsvg/vapigen.m4 b/meta/recipes-gnome/librsvg/librsvg/vapigen.m4
new file mode 100644
index 0000000000..f2df12f23f
--- /dev/null
+++ b/meta/recipes-gnome/librsvg/librsvg/vapigen.m4
@@ -0,0 +1,96 @@
1dnl vapigen.m4
2dnl
3dnl Copyright 2012 Evan Nemerson
4dnl
5dnl This library is free software; you can redistribute it and/or
6dnl modify it under the terms of the GNU Lesser General Public
7dnl License as published by the Free Software Foundation; either
8dnl version 2.1 of the License, or (at your option) any later version.
9dnl
10dnl This library is distributed in the hope that it will be useful,
11dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
12dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13dnl Lesser General Public License for more details.
14dnl
15dnl You should have received a copy of the GNU Lesser General Public
16dnl License along with this library; if not, write to the Free Software
17dnl Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18
19# VAPIGEN_CHECK([VERSION], [API_VERSION], [FOUND-INTROSPECTION], [DEFAULT])
20# --------------------------------------
21# Check vapigen existence and version
22#
23# See http://live.gnome.org/Vala/UpstreamGuide for detailed documentation
24AC_DEFUN([VAPIGEN_CHECK],
25[
26 AC_BEFORE([GOBJECT_INTROSPECTION_CHECK],[$0])
27 AC_BEFORE([GOBJECT_INTROSPECTION_REQUIRE],[$0])
28
29 AC_ARG_ENABLE([vala],
30 [AS_HELP_STRING([--enable-vala[=@<:@no/auto/yes@:>@]],[build Vala bindings @<:@default=]ifelse($4,,auto,$4)[@:>@])],,[
31 AS_IF([test "x$4" = "x"], [
32 enable_vala=auto
33 ], [
34 enable_vala=$4
35 ])
36 ])
37
38 AS_CASE([$enable_vala], [no], [enable_vala=no],
39 [yes], [
40 AS_IF([test "x$3" != "xyes" -a "x$found_introspection" != "xyes"], [
41 AC_MSG_ERROR([Vala bindings require GObject Introspection])
42 ])
43 ], [auto], [
44 AS_IF([test "x$3" != "xyes" -a "x$found_introspection" != "xyes"], [
45 enable_vala=no
46 ])
47 ], [
48 AC_MSG_ERROR([Invalid argument passed to --enable-vala, should be one of @<:@no/auto/yes@:>@])
49 ])
50
51 AS_IF([test "x$2" = "x"], [
52 vapigen_pkg_name=vapigen
53 ], [
54 vapigen_pkg_name=vapigen-$2
55 ])
56 AS_IF([test "x$1" = "x"], [
57 vapigen_pkg="$vapigen_pkg_name"
58 ], [
59 vapigen_pkg="$vapigen_pkg_name >= $1"
60 ])
61
62 PKG_PROG_PKG_CONFIG
63
64 PKG_CHECK_EXISTS([$vapigen_pkg], [
65 AS_IF([test "$enable_vala" = "auto"], [
66 enable_vala=yes
67 ])
68 ], [
69 AS_CASE([$enable_vala], [yes], [
70 AC_MSG_ERROR([$vapigen_pkg not found])
71 ], [auto], [
72 enable_vala=no
73 ])
74 ])
75
76 AC_MSG_CHECKING([for vala])
77
78 AS_CASE([$enable_vala],
79 [yes], [
80 VAPIGEN=`$PKG_CONFIG --variable=vapigen vapigen`
81 VAPIGEN_MAKEFILE=`$PKG_CONFIG --variable=datadir vapigen`/vala/Makefile.vapigen
82 AS_IF([test "x$2" = "x"], [
83 VAPIGEN_VAPIDIR=`$PKG_CONFIG --variable=vapidir vapigen`
84 ], [
85 VAPIGEN_VAPIDIR=`$PKG_CONFIG --variable=vapidir_versioned vapigen`
86 ])
87 ])
88
89 AC_MSG_RESULT([$enable_vala])
90
91 AC_SUBST([VAPIGEN])
92 AC_SUBST([VAPIGEN_VAPIDIR])
93 AC_SUBST([VAPIGEN_MAKEFILE])
94
95 AM_CONDITIONAL(ENABLE_VAPIGEN, test "x$enable_vala" = "xyes")
96])
diff --git a/meta/recipes-gnome/librsvg/librsvg_2.40.2.bb b/meta/recipes-gnome/librsvg/librsvg_2.40.2.bb
new file mode 100644
index 0000000000..e2b26f5ae7
--- /dev/null
+++ b/meta/recipes-gnome/librsvg/librsvg_2.40.2.bb
@@ -0,0 +1,59 @@
1SUMMARY = "Library for rendering SVG files"
2HOMEPAGE = "http://ftp.gnome.org/pub/GNOME/sources/librsvg/"
3BUGTRACKER = "https://bugzilla.gnome.org/"
4
5LICENSE = "LGPLv2+"
6LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
7 file://rsvg.h;beginline=3;endline=24;md5=20b4113c4909bbf0d67e006778302bc6"
8
9SECTION = "x11/utils"
10DEPENDS = "cairo gdk-pixbuf glib-2.0 libcroco libxml2 pango"
11BBCLASSEXTEND = "native"
12
13inherit autotools pkgconfig gnomebase gtk-doc pixbufcache
14
15GNOME_COMPRESS_TYPE = "xz"
16
17SRC_URI += "file://gtk-option.patch \
18 file://vapigen.m4"
19
20SRC_URI[archive.md5sum] = "acdecdb9f08f3bf662a68bf7dafb8b82"
21SRC_URI[archive.sha256sum] = "48049b643294636df7de1a4b997414d699666f5dc44776945c218a257d2a291c"
22
23EXTRA_OECONF = "--disable-introspection --disable-vala"
24
25# The older ld (2.22) on the host (Centos 6.5) doesn't have the
26# -Bsymbolic-functions option, we can disable it for native.
27EXTRA_OECONF_append_class-native = " --enable-Bsymbolic=auto"
28
29PACKAGECONFIG ??= "gdkpixbuf"
30# The gdk-pixbuf loader
31PACKAGECONFIG[gdkpixbuf] = "--enable-pixbuf-loader,--disable-pixbuf-loader,gdk-pixbuf-native"
32# GTK+ test application (rsvg-view)
33PACKAGECONFIG[gtk] = "--with-gtk3,--without-gtk3,gtk+3"
34
35# The tarball doesn't ship with macros, so drop a vapigen in there so we don't
36# need to build vala to configure.
37do_configure_prepend() {
38 if test ! -e ${S}/m4/vapigen.m4; then
39 mkdir --parents ${S}/m4
40 mv ${WORKDIR}/vapigen.m4 ${S}/m4/
41 fi
42}
43
44do_install_append() {
45 # Loadable modules don't need .a or .la on Linux
46 rm -f ${D}${libdir}/gdk-pixbuf-2.0/*/loaders/*.a ${D}${libdir}/gdk-pixbuf-2.0/*/loaders/*.la
47}
48
49PACKAGES =+ "librsvg-gtk rsvg"
50FILES_${PN} = "${libdir}/*.so.*"
51FILES_${PN}-dbg += "${libdir}/gdk-pixbuf-2.0/*/loaders/.debug"
52FILES_rsvg = "${bindir}/rsvg* \
53 ${datadir}/pixmaps/svg-viewer.svg \
54 ${datadir}/themes"
55FILES_librsvg-gtk = "${libdir}/gdk-pixbuf-2.0/*/*/*.so"
56
57PIXBUF_PACKAGES = "librsvg-gtk"
58
59PIXBUFCACHE_SYSROOT_DEPS_append_class-native = " harfbuzz-native:do_populate_sysroot_setscene pango-native:do_populate_sysroot_setscene icu-native:do_populate_sysroot_setscene"
diff --git a/meta/recipes-gnome/libunique/libunique/build.patch b/meta/recipes-gnome/libunique/libunique/build.patch
new file mode 100644
index 0000000000..46a5c62e4f
--- /dev/null
+++ b/meta/recipes-gnome/libunique/libunique/build.patch
@@ -0,0 +1,421 @@
1Upstream-Status: Backport [http://git.gnome.org/browse/unique/commit/?h=unique-1.1&id=f75ca2d7aad7d27686acca6090c1c569a79d7e63]
2Signed-off-By: Ross Burton <ross.burton@intel.com>
3
4From f75ca2d7aad7d27686acca6090c1c569a79d7e63 Mon Sep 17 00:00:00 2001
5From: Emmanuele Bassi <ebassi@gnome.org>
6Date: Sat, 08 May 2010 11:17:21 +0000
7Subject: build: Update the build environment
8
9Require autoconf 2.63, automake 1.11 and libtool 2.2.6 to remove Shave.
10
11Also bump up the requirement for gobject-introspection to 0.6.7.
12---
13diff --git a/build/autotools/Makefile.am b/build/autotools/Makefile.am
14index 5f35b85..b78428f 100644
15--- a/build/autotools/Makefile.am
16+++ b/build/autotools/Makefile.am
17@@ -1,7 +1,4 @@
18 EXTRA_DIST = \
19- shave-libtool.in \
20- shave.in \
21- shave.m4 \
22 as-compiler-flag.m4 \
23 introspection.m4 \
24 Makefile.am.enums \
25diff --git a/build/autotools/Makefile.am.silent b/build/autotools/Makefile.am.silent
26index 249f6af..8576846 100644
27--- a/build/autotools/Makefile.am.silent
28+++ b/build/autotools/Makefile.am.silent
29@@ -1,10 +1,5 @@
30 # custom rules for quiet builds
31
32-if USE_SHAVE
33-QUIET_GEN = $(Q:@=@echo ' GEN '$@;)
34-QUIET_LN = $(Q:@=@echo ' LN '$@;)
35-QUIET_RM = $(Q:@=@echo ' RM '$@;)
36-else
37 QUIET_GEN = $(AM_V_GEN)
38
39 QUIET_LN = $(QUIET_LN_$(V))
40@@ -14,4 +9,3 @@ QUIET_LN_0 = @echo ' LN '$@;
41 QUIET_RM = $(QUIET_RM_$(V))
42 QUIET_RM_ = $(QUIET_RM_$(AM_DEFAULT_VERBOSITY))
43 QUIET_RM_0 = @echo ' RM '$@;
44-endif # USE_SHAVE
45diff --git a/build/autotools/introspection.m4 b/build/autotools/introspection.m4
46index f9ce49c..589721c 100644
47--- a/build/autotools/introspection.m4
48+++ b/build/autotools/introspection.m4
49@@ -59,12 +59,18 @@ m4_define([_GOBJECT_INTROSPECTION_CHECK_INTERNAL],
50 INTROSPECTION_GENERATE=`$PKG_CONFIG --variable=g_ir_generate gobject-introspection-1.0`
51 INTROSPECTION_GIRDIR=`$PKG_CONFIG --variable=girdir gobject-introspection-1.0`
52 INTROSPECTION_TYPELIBDIR="$($PKG_CONFIG --variable=typelibdir gobject-introspection-1.0)"
53+ INTROSPECTION_CFLAGS=`$PKG_CONFIG --cflags gobject-introspection-1.0`
54+ INTROSPECTION_LIBS=`$PKG_CONFIG --libs gobject-introspection-1.0`
55+ INTROSPECTION_MAKEFILE=`$PKG_CONFIG --variable=datadir gobject-introspection-1.0`/gobject-introspection-1.0/Makefile.introspection
56 fi
57 AC_SUBST(INTROSPECTION_SCANNER)
58 AC_SUBST(INTROSPECTION_COMPILER)
59 AC_SUBST(INTROSPECTION_GENERATE)
60 AC_SUBST(INTROSPECTION_GIRDIR)
61 AC_SUBST(INTROSPECTION_TYPELIBDIR)
62+ AC_SUBST(INTROSPECTION_CFLAGS)
63+ AC_SUBST(INTROSPECTION_LIBS)
64+ AC_SUBST(INTROSPECTION_MAKEFILE)
65
66 AM_CONDITIONAL(HAVE_INTROSPECTION, test "x$found_introspection" = "xyes")
67 ])
68diff --git a/build/autotools/shave-libtool.in b/build/autotools/shave-libtool.in
69deleted file mode 100644
70index 1f3a720..0000000
71--- a/build/autotools/shave-libtool.in
72+++ b/dev/null
73@@ -1,69 +0,0 @@
74-#!/bin/sh
75-
76-# we need sed
77-SED=@SED@
78-if test -z "$SED" ; then
79-SED=sed
80-fi
81-
82-lt_unmangle ()
83-{
84- last_result=`echo $1 | $SED -e 's#.libs/##' -e 's#[0-9a-zA-Z_\-\.]*_la-##'`
85-}
86-
87-# the real libtool to use
88-LIBTOOL="$1"
89-shift
90-
91-# if 1, don't print anything, the underlaying wrapper will do it
92-pass_though=0
93-
94-# scan the arguments, keep the right ones for libtool, and discover the mode
95-preserved_args=
96-while test "$#" -gt 0; do
97- opt="$1"
98- shift
99-
100- case $opt in
101- --mode=*)
102- mode=`echo $opt | $SED -e 's/[-_a-zA-Z0-9]*=//'`
103- preserved_args="$preserved_args $opt"
104- ;;
105- -o)
106- lt_output="$1"
107- preserved_args="$preserved_args $opt"
108- ;;
109- *)
110- preserved_args="$preserved_args $opt"
111- ;;
112- esac
113-done
114-
115-case "$mode" in
116-compile)
117- # shave will be called and print the actual CC/CXX/LINK line
118- preserved_args="$preserved_args --shave-mode=$mode"
119- pass_though=1
120- ;;
121-link)
122- preserved_args="$preserved_args --shave-mode=$mode"
123- Q=" LINK "
124- ;;
125-*)
126- # let's u
127- # echo "*** libtool: Unimplemented mode: $mode, fill a bug report"
128- ;;
129-esac
130-
131-lt_unmangle "$lt_output"
132-output=$last_result
133-
134-if test -z $V; then
135- if test $pass_though -eq 0; then
136- echo "$Q$output"
137- fi
138- $LIBTOOL --silent $preserved_args
139-else
140- echo $LIBTOOL $preserved_args
141- $LIBTOOL $preserved_args
142-fi
143diff --git a/build/autotools/shave.in b/build/autotools/shave.in
144deleted file mode 100644
145index 5c16f27..0000000
146--- a/build/autotools/shave.in
147+++ b/dev/null
148@@ -1,79 +0,0 @@
149-#!/bin/sh
150-
151-# we need sed
152-SED=@SED@
153-if test -z "$SED" ; then
154-SED=sed
155-fi
156-
157-lt_unmangle ()
158-{
159- last_result=`echo $1 | $SED -e 's#.libs/##' -e 's#[0-9a-zA-Z_\-\.]*_la-##'`
160-}
161-
162-# the tool to wrap (cc, cxx, ar, ranlib, ..)
163-tool="$1"
164-shift
165-
166-# the reel tool (to call)
167-REEL_TOOL="$1"
168-shift
169-
170-pass_through=0
171-preserved_args=
172-while test "$#" -gt 0; do
173- opt="$1"
174- shift
175-
176- case $opt in
177- --shave-mode=*)
178- mode=`echo $opt | $SED -e 's/[-_a-zA-Z0-9]*=//'`
179- ;;
180- -o)
181- lt_output="$1"
182- preserved_args="$preserved_args $opt"
183- ;;
184- *)
185- preserved_args="$preserved_args $opt"
186- ;;
187- esac
188-done
189-
190-# mode=link is handled in the libtool wrapper
191-case "$mode,$tool" in
192-link,*)
193- pass_through=1
194- ;;
195-*,cxx)
196- Q=" CXX "
197- ;;
198-*,cc)
199- Q=" CC "
200- ;;
201-*,fc)
202- Q=" FC "
203- ;;
204-*,f77)
205- Q=" F77 "
206- ;;
207-*,objc)
208- Q=" OBJC "
209- ;;
210-*,*)
211- # should not happen
212- Q=" CC "
213- ;;
214-esac
215-
216-lt_unmangle "$lt_output"
217-output=$last_result
218-
219-if test -z $V; then
220- if test $pass_through -eq 0; then
221- echo "$Q$output"
222- fi
223- $REEL_TOOL $preserved_args
224-else
225- echo $REEL_TOOL $preserved_args
226- $REEL_TOOL $preserved_args
227-fi
228diff --git a/build/autotools/shave.m4 b/build/autotools/shave.m4
229deleted file mode 100644
230index 0a3509e..0000000
231--- a/build/autotools/shave.m4
232+++ b/dev/null
233@@ -1,77 +0,0 @@
234-dnl Make automake/libtool output more friendly to humans
235-dnl Damien Lespiau <damien.lespiau@gmail.com>
236-dnl
237-dnl SHAVE_INIT([shavedir],[default_mode])
238-dnl
239-dnl shavedir: the directory where the shave scripts are, it defaults to
240-dnl $(top_builddir)
241-dnl default_mode: (enable|disable) default shave mode. This parameter
242-dnl controls shave's behaviour when no option has been
243-dnl given to configure. It defaults to disable.
244-dnl
245-dnl * SHAVE_INIT should be called late in your configure.(ac|in) file (just
246-dnl before AC_CONFIG_FILE/AC_OUTPUT is perfect. This macro rewrites CC and
247-dnl LIBTOOL, you don't want the configure tests to have these variables
248-dnl re-defined.
249-dnl * This macro requires GNU make's -s option.
250-
251-AC_DEFUN([_SHAVE_ARG_ENABLE],
252-[
253- AC_ARG_ENABLE([shave],
254- AS_HELP_STRING(
255- [--enable-shave],
256- [use shave to make the build pretty [[default=$1]]]),,
257- [enable_shave=$1]
258- )
259-])
260-
261-AC_DEFUN([SHAVE_INIT],
262-[
263- dnl you can tweak the default value of enable_shave
264- m4_if([$2], [enable], [_SHAVE_ARG_ENABLE(yes)], [_SHAVE_ARG_ENABLE(no)])
265-
266- if test x"$enable_shave" = xyes; then
267- dnl where can we find the shave scripts?
268- m4_if([$1],,
269- [shavedir="$ac_pwd"],
270- [shavedir="$ac_pwd/$1"])
271- AC_SUBST(shavedir)
272-
273- dnl make is now quiet
274- AC_SUBST([MAKEFLAGS], [-s])
275- AC_SUBST([AM_MAKEFLAGS], ['`test -z $V && echo -s`'])
276-
277- dnl we need sed
278- AC_CHECK_PROG(SED,sed,sed,false)
279-
280- dnl substitute libtool
281- SHAVE_SAVED_LIBTOOL=$LIBTOOL
282- LIBTOOL="${SHELL} ${shavedir}/shave-libtool '${SHAVE_SAVED_LIBTOOL}'"
283- AC_SUBST(LIBTOOL)
284-
285- dnl substitute cc/cxx
286- SHAVE_SAVED_CC=$CC
287- SHAVE_SAVED_CXX=$CXX
288- SHAVE_SAVED_FC=$FC
289- SHAVE_SAVED_F77=$F77
290- SHAVE_SAVED_OBJC=$OBJC
291- CC="${SHELL} ${shavedir}/shave cc ${SHAVE_SAVED_CC}"
292- CXX="${SHELL} ${shavedir}/shave cxx ${SHAVE_SAVED_CXX}"
293- FC="${SHELL} ${shavedir}/shave fc ${SHAVE_SAVED_FC}"
294- F77="${SHELL} ${shavedir}/shave f77 ${SHAVE_SAVED_F77}"
295- OBJC="${SHELL} ${shavedir}/shave objc ${SHAVE_SAVED_OBJC}"
296- AC_SUBST(CC)
297- AC_SUBST(CXX)
298- AC_SUBST(FC)
299- AC_SUBST(F77)
300- AC_SUBST(OBJC)
301-
302- V=@
303- else
304- V=1
305- fi
306- Q='$(V:1=)'
307- AC_SUBST(V)
308- AC_SUBST(Q)
309-])
310-
311diff --git a/configure.ac b/configure.ac
312index a3ed3ee..bc3163a 100644
313--- a/configure.ac
314+++ b/configure.ac
315@@ -14,7 +14,7 @@ m4_define([unique_api_version], [1.0])
316 # This is the X.Y used in the protocol negotiation
317 m4_define([unique_protocol_version], [1.0])
318
319-AC_PREREQ([2.59])
320+AC_PREREQ([2.63])
321
322 AC_INIT([unique], [unique_version],
323 [http://bugzilla.gnome.org/enter_bug.cgi?product=libunique],
324@@ -23,9 +23,21 @@ AC_INIT([unique], [unique_version],
325 AC_CONFIG_SRCDIR([unique/unique.h])
326 AC_CONFIG_MACRO_DIR([build/autotools])
327
328-AM_INIT_AUTOMAKE([1.10])
329+AM_INIT_AUTOMAKE([1.11 no-define -Wno-portability dist-bzip2])
330 AM_CONFIG_HEADER([config.h])
331
332+AM_SILENT_RULES([yes])
333+
334+AC_PROG_CC_C_O
335+
336+AM_PATH_GLIB_2_0
337+
338+LT_PREREQ([2.2.6])
339+LT_INIT([disable-static])
340+
341+# Honor aclocal flags
342+ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
343+
344 # version symbols
345 UNIQUE_MAJOR_VERSION=unique_major_version
346 UNIQUE_MINOR_VERSION=unique_minor_version
347@@ -49,21 +61,6 @@ UNIQUE_LT_CURRENT_MINUS_AGE=m4_eval(lt_current - lt_age)
348 AC_SUBST(UNIQUE_LT_VERSION_INFO)
349 AC_SUBST(UNIQUE_LT_CURRENT_MINUS_AGE)
350
351-AC_ISC_POSIX
352-AC_PROG_CC
353-AC_PROG_INSTALL
354-AC_PROG_MAKE_SET
355-AC_C_CONST
356-AC_PROG_LIBTOOL
357-AC_PATH_PROG(GLIB_MKENUMS, [glib-mkenums])
358-AC_PATH_PROG(GLIB_GENMARSHAL, [glib-genmarshal])
359-
360-AM_SANITY_CHECK
361-AM_PROG_CC_STDC
362-
363-# Honor aclocal flags
364-ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
365-
366 m4_define([glib_required], [2.12.0])
367 m4_define([gtk_required], [2.11.0])
368 m4_define([dbus_required], [0.70])
369@@ -122,7 +119,6 @@ AM_CONDITIONAL([HAVE_DBUS], [test "x$have_dbus" = "xyes"])
370 dnl Bacon backend
371 dnl This is the fallback backend, so we *need* these headers and functions
372 dnl even if we end up using D-Bus
373-dnl D-Bus backend dependencies
374 m4_define([have_bacon_default], [yes])
375 AC_ARG_ENABLE([bacon],
376 [AC_HELP_STRING([--enable-bacon=@<:@yes/no@:>@],
377@@ -178,9 +174,9 @@ AC_ARG_ENABLE([maintainer-flags],
378 AS_IF([test "x$enable_maintainer_flags" = "xyes" && test "x$GCC" = "xyes"],
379 [
380 AS_COMPILER_FLAGS([MAINTAINER_CFLAGS],
381- ["-Werror -Wall -Wshadow -Wcast-align
382- -Wno-uninitialized -Wempty-body -Wformat-security
383- -Winit-self"])
384+ ["-Wall -Wshadow -Wcast-align
385+ -Wno-uninitialized -Wempty-body
386+ -Wformat-security -Winit-self"])
387 ]
388 )
389
390@@ -230,27 +226,10 @@ AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE],
391 AM_GLIB_DEFINE_LOCALEDIR(UNIQUE_LOCALEDIR)
392
393 # introspection
394-GOBJECT_INTROSPECTION_CHECK([0.6.3])
395+GOBJECT_INTROSPECTION_CHECK([0.6.7])
396
397 # gtk-doc
398-GTK_DOC_CHECK([1.11])
399-
400-# nice builds
401-m4_ifdef([AM_SILENT_RULES],
402- [
403- AM_SILENT_RULES([yes])
404- use_shave=no
405- ],
406- [
407- SHAVE_INIT([build/autotools], [enable])
408- AC_CONFIG_FILES([
409- build/autotools/shave-libtool
410- build/autotools/shave
411- ])
412- use_shave=yes
413- ])
414-
415-AM_CONDITIONAL([USE_SHAVE], [test "x$use_shave" = "xyes"])
416+GTK_DOC_CHECK([1.13])
417
418 AC_CONFIG_FILES([
419 Makefile
420--
421cgit v0.9.0.2
diff --git a/meta/recipes-gnome/libunique/libunique/fix_for_compile_with_gcc-4.6.0.patch b/meta/recipes-gnome/libunique/libunique/fix_for_compile_with_gcc-4.6.0.patch
new file mode 100644
index 0000000000..d75de93fc2
--- /dev/null
+++ b/meta/recipes-gnome/libunique/libunique/fix_for_compile_with_gcc-4.6.0.patch
@@ -0,0 +1,36 @@
1Upstream-Status: Pending
2
3Fix Following compilation errors with gcc 4.6.0
4
5Nitin A Kamble <nitin.a.kamble@intel.com> 2011/05/10
6
7| uniquebackend-dbus.c: In function 'unique_backend_dbus_request_name':
8| uniquebackend-dbus.c:87:22: error: variable 'backend_dbus' set but not used [-Werror=unused-but-set-variable]
9| uniquebackend-dbus.c: In function 'unique_backend_dbus_send_message':
10| uniquebackend-dbus.c:189:12: error: variable 'res' set but not used [-Werror=unused-but-set-variable]
11| cc1: all warnings being treated as errors
12|
13| make[5]: *** [libunique_dbus_la-uniquebackend-dbus.lo] Error 1
14
15Index: libunique-1.1.6/unique/dbus/uniquebackend-dbus.c
16===================================================================
17--- libunique-1.1.6.orig/unique/dbus/uniquebackend-dbus.c
18+++ libunique-1.1.6/unique/dbus/uniquebackend-dbus.c
19@@ -84,7 +84,7 @@ unique_backend_dbus_register_proxy (Uniq
20 static gboolean
21 unique_backend_dbus_request_name (UniqueBackend *backend)
22 {
23- UniqueBackendDBus *backend_dbus;
24+ UniqueBackendDBus __attribute__((__unused__)) *backend_dbus;
25 const gchar *name;
26 DBusGConnection *connection;
27 DBusGProxy *proxy;
28@@ -186,7 +186,7 @@ unique_backend_dbus_send_message (Unique
29 GValueArray *data;
30 gchar *cmd;
31 gchar *resp;
32- gboolean res;
33+ gboolean __attribute__((__unused__)) res;
34 GError *error;
35 UniqueResponse response;
36
diff --git a/meta/recipes-gnome/libunique/libunique/noconst.patch b/meta/recipes-gnome/libunique/libunique/noconst.patch
new file mode 100644
index 0000000000..2cc03473c5
--- /dev/null
+++ b/meta/recipes-gnome/libunique/libunique/noconst.patch
@@ -0,0 +1,130 @@
1G_CONST_RETURN is deprecated in glib 2.30 so remove to to avoid
2build failures.
3
4RP 2011/10/12
5
6Upstream-Status: Pending
7
8Index: libunique-1.1.6/unique/uniqueapp.c
9===================================================================
10--- libunique-1.1.6.orig/unique/uniqueapp.c 2011-10-12 01:21:25.842046488 +0100
11+++ libunique-1.1.6/unique/uniqueapp.c 2011-10-12 01:21:55.062046796 +0100
12@@ -781,7 +781,7 @@
13 }
14
15
16-G_CONST_RETURN gchar *
17+const gchar *
18 unique_command_to_string (UniqueApp *app,
19 gint command)
20 {
21@@ -863,7 +863,7 @@
22 return retval;
23 }
24
25-G_CONST_RETURN gchar *
26+const gchar *
27 unique_response_to_string (UniqueResponse response)
28 {
29 GEnumClass *enum_class;
30Index: libunique-1.1.6/unique/uniquebackend.c
31===================================================================
32--- libunique-1.1.6.orig/unique/uniquebackend.c 2011-10-12 01:21:25.742046323 +0100
33+++ libunique-1.1.6/unique/uniquebackend.c 2011-10-12 01:21:55.062046796 +0100
34@@ -111,7 +111,7 @@
35 *
36 * Return value: FIXME
37 */
38-G_CONST_RETURN gchar *
39+const gchar *
40 unique_backend_get_name (UniqueBackend *backend)
41 {
42 g_return_val_if_fail (UNIQUE_IS_BACKEND (backend), NULL);
43@@ -154,7 +154,7 @@
44 *
45 * Return value: FIXME
46 */
47-G_CONST_RETURN gchar *
48+const gchar *
49 unique_backend_get_startup_id (UniqueBackend *backend)
50 {
51 g_return_val_if_fail (UNIQUE_IS_BACKEND (backend), NULL);
52Index: libunique-1.1.6/unique/uniquebackend.h
53===================================================================
54--- libunique-1.1.6.orig/unique/uniquebackend.h 2011-10-12 01:21:25.992046521 +0100
55+++ libunique-1.1.6/unique/uniquebackend.h 2011-10-12 01:21:56.512047875 +0100
56@@ -94,10 +94,10 @@
57
58 UniqueBackend * unique_backend_create (void);
59
60-G_CONST_RETURN gchar *unique_backend_get_name (UniqueBackend *backend);
61+const gchar *unique_backend_get_name (UniqueBackend *backend);
62 void unique_backend_set_name (UniqueBackend *backend,
63 const gchar *name);
64-G_CONST_RETURN gchar *unique_backend_get_startup_id (UniqueBackend *backend);
65+const gchar *unique_backend_get_startup_id (UniqueBackend *backend);
66 void unique_backend_set_startup_id (UniqueBackend *backend,
67 const gchar *startup_id);
68 GdkScreen * unique_backend_get_screen (UniqueBackend *backend);
69Index: libunique-1.1.6/unique/uniqueinternals.h
70===================================================================
71--- libunique-1.1.6.orig/unique/uniqueinternals.h 2011-10-12 01:21:25.892046532 +0100
72+++ libunique-1.1.6/unique/uniqueinternals.h 2011-10-12 01:21:56.512047875 +0100
73@@ -44,11 +44,11 @@
74 * and then back into an id
75 */
76 UniqueResponse unique_response_from_string (const gchar *response);
77-G_CONST_RETURN gchar *unique_response_to_string (UniqueResponse response);
78+const gchar *unique_response_to_string (UniqueResponse response);
79
80 gint unique_command_from_string (UniqueApp *app,
81 const gchar *command);
82-G_CONST_RETURN gchar *unique_command_to_string (UniqueApp *app,
83+const gchar *unique_command_to_string (UniqueApp *app,
84 gint command);
85
86 G_END_DECLS
87Index: libunique-1.1.6/unique/uniquemessage.c
88===================================================================
89--- libunique-1.1.6.orig/unique/uniquemessage.c 2011-10-12 01:21:25.942046524 +0100
90+++ libunique-1.1.6/unique/uniquemessage.c 2011-10-12 01:21:55.072046595 +0100
91@@ -185,7 +185,7 @@
92 *
93 * Since: 1.0.2
94 */
95-G_CONST_RETURN guchar *
96+const guchar *
97 unique_message_data_get (UniqueMessageData *message_data,
98 gsize *length)
99 {
100@@ -525,7 +525,7 @@
101 * owned by the #UniqueMessageData structure and should not be
102 * modified or freed
103 */
104-G_CONST_RETURN gchar *
105+const gchar *
106 unique_message_data_get_startup_id (UniqueMessageData *message_data)
107 {
108 g_return_val_if_fail (message_data != NULL, NULL);
109Index: libunique-1.1.6/unique/uniquemessage.h
110===================================================================
111--- libunique-1.1.6.orig/unique/uniquemessage.h 2011-10-12 01:21:25.792046596 +0100
112+++ libunique-1.1.6/unique/uniquemessage.h 2011-10-12 01:21:56.512047875 +0100
113@@ -48,7 +48,7 @@
114 void unique_message_data_set (UniqueMessageData *message_data,
115 const guchar *data,
116 gsize length);
117-G_CONST_RETURN guchar *unique_message_data_get (UniqueMessageData *message_data,
118+const guchar *unique_message_data_get (UniqueMessageData *message_data,
119 gsize *length);
120
121 gboolean unique_message_data_set_text (UniqueMessageData *message_data,
122@@ -63,7 +63,7 @@
123 gchar * unique_message_data_get_filename (UniqueMessageData *message_data);
124
125 GdkScreen * unique_message_data_get_screen (UniqueMessageData *message_data);
126-G_CONST_RETURN gchar * unique_message_data_get_startup_id (UniqueMessageData *message_data);
127+const gchar * unique_message_data_get_startup_id (UniqueMessageData *message_data);
128 guint unique_message_data_get_workspace (UniqueMessageData *message_data);
129
130 G_END_DECLS
diff --git a/meta/recipes-gnome/libunique/libunique_1.1.6.bb b/meta/recipes-gnome/libunique/libunique_1.1.6.bb
new file mode 100644
index 0000000000..d97d1d6597
--- /dev/null
+++ b/meta/recipes-gnome/libunique/libunique_1.1.6.bb
@@ -0,0 +1,25 @@
1SUMMARY = "Library for supporting single instance GTK+ applications"
2DESCRIPTION = "Unique is a library for writing single instance GTK+ applications. If you launch a single instance application twice, the second instance will either just quit or will send a message to the running instance."
3HOMEPAGE = "https://wiki.gnome.org/Attic/LibUnique"
4BUGTRACKER = "https://bugzilla.gnome.org/enter_bug.cgi?product=libunique"
5
6SRC_URI = "${GNOME_MIRROR}/libunique/1.1/libunique-${PV}.tar.bz2 \
7 file://fix_for_compile_with_gcc-4.6.0.patch \
8 file://noconst.patch \
9 file://build.patch"
10
11SRC_URI[md5sum] = "7955769ef31f1bc4f83446dbb3625e6d"
12SRC_URI[sha256sum] = "e5c8041cef8e33c55732f06a292381cb345db946cf792a4ae18aa5c66cdd4fbb"
13
14PR = "r7"
15
16DEPENDS = "glib-2.0 gtk+"
17
18PACKAGECONFIG ??= "dbus"
19PACKAGECONFIG[dbus] = "--enable-dbus,--disable-dbus,dbus dbus-glib"
20
21LICENSE = "LGPLv2.1"
22LIC_FILES_CHKSUM = "file://COPYING;md5=2d5025d4aa3495befef8f17206a5b0a1"
23
24
25inherit autotools pkgconfig