diff options
-rw-r--r-- | meta/classes/gconf.bbclass | 1 | ||||
-rw-r--r-- | meta/recipes-gnome/gnome/gconf-3.2.3/backenddir.patch | 43 | ||||
-rw-r--r-- | meta/recipes-gnome/gnome/gconf_3.2.3.bb | 5 |
3 files changed, 48 insertions, 1 deletions
diff --git a/meta/classes/gconf.bbclass b/meta/classes/gconf.bbclass index 71926b7818..f164547782 100644 --- a/meta/classes/gconf.bbclass +++ b/meta/classes/gconf.bbclass @@ -3,6 +3,7 @@ DEPENDS += "gconf gconf-native" # This is referenced by the gconf m4 macros and would default to the value hardcoded # into gconf at compile time otherwise export GCONF_SCHEMA_INSTALL_SOURCE = "xml:merged:${STAGING_DIR_NATIVE}${sysconfdir}/gconf/gconf.xml.defaults" +export GCONF_BACKEND_DIR = "${STAGING_LIBDIR_NATIVE}/GConf/2" gconf_postinst() { if [ "x$D" != "x" ]; then diff --git a/meta/recipes-gnome/gnome/gconf-3.2.3/backenddir.patch b/meta/recipes-gnome/gnome/gconf-3.2.3/backenddir.patch new file mode 100644 index 0000000000..4baf905b71 --- /dev/null +++ b/meta/recipes-gnome/gnome/gconf-3.2.3/backenddir.patch @@ -0,0 +1,43 @@ +Allow the backend directory to be specified from the environment. This is +required so we can relocate gconf-native to different paths and still +allow it to work. + +Upstream-Status: Pending + +RP 2011/11/23 + +Index: GConf-3.2.3/gconf/gconf-backend.c +=================================================================== +--- GConf-3.2.3.orig/gconf/gconf-backend.c 2011-07-01 14:01:20.000000000 +0100 ++++ GConf-3.2.3/gconf/gconf-backend.c 2011-11-23 14:56:37.141293320 +0000 +@@ -21,6 +21,7 @@ + #include <config.h> + #include "gconf-backend.h" + #include "gconf-internals.h" ++#include <stdlib.h> + #include <stdio.h> + #include <string.h> + #include <sys/stat.h> +@@ -171,6 +172,7 @@ + gchar* back; + gchar* file; + gchar* retval; ++ const gchar* backenddir; + + g_return_val_if_fail(address != NULL, NULL); + +@@ -179,9 +181,13 @@ + if (back == NULL) + return NULL; + ++ backenddir = getenv("GCONF_BACKEND_DIR"); ++ if (backenddir == NULL) ++ backenddir = GCONF_BACKEND_DIR; ++ + file = g_strconcat("gconfbackend-", back, NULL); + +- retval = g_module_build_path(GCONF_BACKEND_DIR, file); ++ retval = g_module_build_path(backenddir, file); + + g_free(back); + diff --git a/meta/recipes-gnome/gnome/gconf_3.2.3.bb b/meta/recipes-gnome/gnome/gconf_3.2.3.bb index 3d3e65ff91..aa9da780f9 100644 --- a/meta/recipes-gnome/gnome/gconf_3.2.3.bb +++ b/meta/recipes-gnome/gnome/gconf_3.2.3.bb @@ -5,10 +5,13 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=55ca817ccb7d5b5b66355690e9abc605" DEPENDS = "glib-2.0 dbus dbus-glib libxml2 intltool-native" +PR = "r1" + inherit gnomebase SRC_URI = "${GNOME_MIRROR}/GConf/${@gnome_verdir("${PV}")}/GConf-${PV}.tar.bz2;name=archive \ - file://nointro.patch" + file://nointro.patch \ + file://backenddir.patch" SRC_URI[archive.md5sum] = "f80329173cd9d134ad07e36002dd2a15" SRC_URI[archive.sha256sum] = "52008a82a847527877d9e1e549a351c86cc53cada4733b8a70a1123925d6aff4" |