diff options
Diffstat (limited to 'yocto-poky/meta/recipes-core/glib-2.0')
13 files changed, 473 insertions, 0 deletions
diff --git a/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/0001-Remove-the-warning-about-deprecated-paths-in-schemas.patch b/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/0001-Remove-the-warning-about-deprecated-paths-in-schemas.patch new file mode 100644 index 000000000..41a190edd --- /dev/null +++ b/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/0001-Remove-the-warning-about-deprecated-paths-in-schemas.patch @@ -0,0 +1,36 @@ +From 41534253b6b61ed4769eb6a3966698a50ee73b71 Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin <alex.kanavin@gmail.com> +Date: Fri, 12 Jun 2015 17:08:46 +0300 +Subject: [PATCH] Remove the warning about deprecated paths in schemas + +Some schemas in gsettings-desktop-schemas (such as proxy and locale) +are still using deprecated paths, as of 3.16.1. This causes warning +messages, and meta/lib/oe/rootfs.py complaints about them. + +Upstream-Status: Inappropriate +Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> + +--- + gio/glib-compile-schemas.c | 6 ------ + 1 file changed, 6 deletions(-) + +diff --git a/gio/glib-compile-schemas.c b/gio/glib-compile-schemas.c +index e42949b..ec79d7c 100644 +--- a/gio/glib-compile-schemas.c ++++ b/gio/glib-compile-schemas.c +@@ -1202,12 +1202,6 @@ parse_state_start_schema (ParseState *state, + return; + } + +- if (path && (g_str_has_prefix (path, "/apps/") || +- g_str_has_prefix (path, "/desktop/") || +- g_str_has_prefix (path, "/system/"))) +- g_printerr ("warning: Schema '%s' has path '%s'. Paths starting with " +- "'/apps/', '/desktop/' or '/system/' are deprecated.\n", id, path); +- + state->schema_state = schema_state_new (path, gettext_domain, + extends, extends_name, list_of); + +-- +2.1.4 + diff --git a/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/0001-configure.ac-Do-not-use-readlink-when-cross-compilin.patch b/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/0001-configure.ac-Do-not-use-readlink-when-cross-compilin.patch new file mode 100644 index 000000000..0be36316b --- /dev/null +++ b/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/0001-configure.ac-Do-not-use-readlink-when-cross-compilin.patch @@ -0,0 +1,31 @@ +commit 9b38d507ec37b3d7d4df6095fa7ed16b47d399f7 +Author: Drew Moseley <drew_moseley@mentor.com> +Date: Sat Mar 29 21:10:43 2014 -0400 + + configure.ac: Do not use readlink when cross compiling. + + Do not use readlink to set ABS_GLIB_RUNTIME_LIBDIR when cross + compiling. Doing so causes host paths to potentially pollute + the target. + + Note that in this case the path is not converted to absolute if + it contains any ".." references so it's not completely correct. + + Upstream-Status: Submitted [https://bugzilla.gnome.org/show_bug.cgi?id=727575] + Signed-off-by: Drew Moseley <drew_moseley@mentor.com> + +diff -rub glib-2.38.2.orig/configure.ac glib-2.38.2/configure.ac +--- glib-2.38.2.orig/configure.ac 2014-04-03 20:17:13.035567143 -0400 ++++ glib-2.38.2/configure.ac 2014-04-03 20:19:07.071566057 -0400 +@@ -275,7 +275,11 @@ + [], + [with_runtime_libdir=""]) + GLIB_RUNTIME_LIBDIR="$with_runtime_libdir" ++AS_IF([ test $cross_compiling = yes ], [ ++ABS_GLIB_RUNTIME_LIBDIR="$libdir/$with_runtime_libdir" ++], [ + ABS_GLIB_RUNTIME_LIBDIR="`readlink -m $libdir/$with_runtime_libdir`" ++]) + AC_SUBST(GLIB_RUNTIME_LIBDIR) + AC_SUBST(ABS_GLIB_RUNTIME_LIBDIR) + AM_CONDITIONAL(HAVE_GLIB_RUNTIME_LIBDIR, [test "x$with_runtime_libdir" != "x"]) diff --git a/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/add-march-i486-into-CFLAGS-automatically.patch b/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/add-march-i486-into-CFLAGS-automatically.patch new file mode 100644 index 000000000..3aac35a5d --- /dev/null +++ b/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/add-march-i486-into-CFLAGS-automatically.patch @@ -0,0 +1,39 @@ +From 55253b55b9c65f3e0efbbe03cbab2a4c4014a16b Mon Sep 17 00:00:00 2001 +From: Song.Li <Song.Li@windriver.com> +Date: Thu, 5 Jul 2012 15:09:41 +0800 +Subject: [PATCH] add -march=i486 into CFLAGS automatically + +Upstream-Status: Inappropriate [configuration] + +glib configure will check if current gcc need -march=i486, +when gcc need -march=i486 but CFLAGS don't have, +glib configure will abort and advise the user to add -march=i486 or later. +This will break the build process,it's not good for automatic build system. +so change this to adding -march=i485 automatically when it is needed. +--- + configure.ac | 6 ++++-- + 1 files changed, 4 insertions(+), 2 deletions(-) + +Index: glib-2.36.0/configure.ac +=================================================================== +--- glib-2.36.0.orig/configure.ac ++++ glib-2.36.0/configure.ac +@@ -2378,7 +2378,7 @@ dnl + dnl Note that the atomic ops are only available with GCC on x86 when + dnl using -march=i486 or higher. If we detect that the atomic ops are + dnl not available but would be available given the right flags, we want +-dnl to abort and advise the user to fix their CFLAGS. It's better to do ++dnl to add -march=i486 automatically to fix their CFLAGS. It's better to do + dnl that then to silently fall back on emulated atomic ops just because + dnl the user had the wrong build environment. + +@@ -2401,7 +2401,8 @@ AC_CACHE_CHECK([for lock-free atomic int + AC_TRY_COMPILE([], + [volatile int atomic = 2;\ + __sync_bool_compare_and_swap (&atomic, 2, 3);], +- [AC_MSG_ERROR([GLib must be build with -march=i486 or later.])], ++ [AC_MSG_WARN([GLib must be build with -march=i486 or later.]) ++ SAVE_CFLAGS="${SAVE_CFLAGS} -march=i486"], + []) + CFLAGS="${SAVE_CFLAGS}" + fi diff --git a/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/allow-run-media-sdX-drive-mount-if-username-root.patch b/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/allow-run-media-sdX-drive-mount-if-username-root.patch new file mode 100644 index 000000000..3d0c008bb --- /dev/null +++ b/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/allow-run-media-sdX-drive-mount-if-username-root.patch @@ -0,0 +1,39 @@ +From c53e94a520b573aa0dcf12903e9563fe8badc34c Mon Sep 17 00:00:00 2001 +From: Marius Avram <marius.avram@intel.com> +Date: Wed, 27 Aug 2014 12:10:41 +0300 +Subject: [PATCH] Allow /run/media/sdX drive mount if username root + +In case that the username logged in the system is root +the drives are directly mounted in /run/media/sdX and +not /run/media/<username>/sdX as the function +g_unix_mount_guess_should_display() expects. + +Without this change USB stick mounts are not accesible from +graphical applications such as the File Manager (pcmanfm). + +Upstream-Status: Inappropriate + +Signed-off-by: Marius Avram <marius.avram@intel.com> +--- + gio/gunixmounts.c | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/gio/gunixmounts.c b/gio/gunixmounts.c +index 4999354..f6c1472 100644 +--- a/gio/gunixmounts.c ++++ b/gio/gunixmounts.c +@@ -2136,6 +2136,11 @@ g_unix_mount_guess_should_display (GUnixMountEntry *mount_entry) + mount_path[sizeof ("/run/media/") - 1 + user_name_len] == '/') + is_in_runtime_dir = TRUE; + ++ /* Allow no username in path in /run/media if current user is root */ ++ if (strcmp(user_name, "root") == 0 && ++ strncmp (mount_path, "/run/media/", sizeof("run/media")) == 0) ++ is_in_runtime_dir = TRUE; ++ + if (is_in_runtime_dir || g_str_has_prefix (mount_path, "/media/")) + { + char *path; +-- +1.7.9.5 + diff --git a/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/configure-libtool.patch b/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/configure-libtool.patch new file mode 100644 index 000000000..1d69a3f29 --- /dev/null +++ b/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/configure-libtool.patch @@ -0,0 +1,60 @@ +From 1c5718648d49e795efee91c220a2bf9386c184f2 Mon Sep 17 00:00:00 2001 +From: Martin Jansa <Martin.Jansa@gmail.com> +Date: Sat, 28 Apr 2012 18:24:50 +0200 +Subject: [PATCH] configure: use $host_alias-libtool instead of libtool + directly + +Poky renames libtool to $host_alias-libtool. +./$host_alias-libtool isn't created until after configure runs with +libtool >= 2.2.2 +so we can't call # it at this point. We can safely assume a version is +available +from PATH though + +Rebased to glib-2.27.3 by Dongxiao Xu <dongxiao.xu@intel.com> +Rebased to glib-2.32.1 by Martin Jansa <Martin.Jansa@gmail.com> + +Upstream-Status: Inappropriate [configuration] + +Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> +--- + configure.ac | 8 ++++---- + 1 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/configure.ac b/configure.ac +index a6478c6..9a93d60 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1470,7 +1470,7 @@ if test x"$glib_native_win32" = xyes; then + G_MODULE_LDFLAGS= + else + export SED +- G_MODULE_LDFLAGS=`(./libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh` ++ G_MODULE_LDFLAGS=`(./$host_alias-libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh` + fi + dnl G_MODULE_IMPL= don't reset, so cmd-line can override + G_MODULE_NEED_USCORE=0 +@@ -1535,9 +1535,9 @@ if test "$G_MODULE_IMPL" = "G_MODULE_IMPL_DL"; then + LDFLAGS="$LDFLAGS $G_MODULE_LDFLAGS" + dnl *** check for OSF1/5.0 RTLD_GLOBAL brokenness + echo "void glib_plugin_test(void) { }" > plugin.c +- ${SHELL} ./libtool --mode=compile --tag=CC ${CC} ${CFLAGS} \ ++ ${SHELL} ./$host_alias-libtool --mode=compile --tag=CC ${CC} ${CFLAGS} \ + ${CPPFLAGS} -c -o plugin.lo plugin.c >/dev/null 2>&1 +- ${SHELL} ./libtool --mode=link --tag=CC ${CC} ${CFLAGS} \ ++ ${SHELL} ./$host_alias-libtool --mode=link --tag=CC ${CC} ${CFLAGS} \ + ${LDFLAGS} -module -o plugin.la -export-dynamic \ + -shrext ".o" -avoid-version plugin.lo \ + -rpath /dont/care >/dev/null 2>&1 +@@ -1614,7 +1614,7 @@ fi + + AC_MSG_CHECKING(for the suffix of module shared libraries) + export SED +-shrext_cmds=`./libtool --config | grep '^shrext_cmds='` ++shrext_cmds=`./$host_alias-libtool --config | grep '^shrext_cmds='` + eval $shrext_cmds + module=yes eval std_shrext=$shrext_cmds + # chop the initial dot +-- +1.7.8.6 + diff --git a/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/fix-conflicting-rand.patch b/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/fix-conflicting-rand.patch new file mode 100644 index 000000000..1571112b0 --- /dev/null +++ b/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/fix-conflicting-rand.patch @@ -0,0 +1,35 @@ +Rename 'rand' variable to avoid conflict. + +Upstream-Status: pending +Signed-off-by: Björn Stenberg <bjst@enea.com> + +diff -u glib-2.34.3/tests/refcount/signals.c~ glib-2.34.3/tests/refcount/signals.c +--- glib-2.34.3/tests/refcount/signals.c 2012-11-26 17:52:48.000000000 +0100 ++++ glib-2.34.3/tests/refcount/signals.c 2013-02-08 14:24:10.052477546 +0100 +@@ -9,7 +9,7 @@ + #define MY_IS_TEST_CLASS(tclass) (G_TYPE_CHECK_CLASS_TYPE ((tclass), G_TYPE_TEST)) + #define MY_TEST_GET_CLASS(test) (G_TYPE_INSTANCE_GET_CLASS ((test), G_TYPE_TEST, GTestClass)) + +-static GRand *rand; ++static GRand *grand; + + typedef struct _GTest GTest; + typedef struct _GTestClass GTestClass; +@@ -84,7 +84,7 @@ + NULL + }; + +- rand = g_rand_new(); ++ grand = g_rand_new(); + + test_type = g_type_register_static (G_TYPE_OBJECT, "GTest", + &test_info, 0); +@@ -218,7 +218,7 @@ + static void + my_test_do_prop (GTest * test) + { +- test->value = g_rand_int (rand); ++ test->value = g_rand_int (grand); + g_object_notify (G_OBJECT (test), "test-prop"); + } + diff --git a/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/glib-2.0-configure-readlink.patch b/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/glib-2.0-configure-readlink.patch new file mode 100644 index 000000000..9759d11e3 --- /dev/null +++ b/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/glib-2.0-configure-readlink.patch @@ -0,0 +1,29 @@ +configure.ac: change readlink -f to -m + +Change "readlink -f" to "readlink -m" since $libdir/$with_runtime_libdir +may not exist. + +This patch should go to the upstream, I will send it sooner. + +Upstream-Status: Pending + +Signed-off-by: Robert Yang <liezhi.yang@windriver.com> +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +--- a/configure.ac ++++ b/configure.ac +@@ -271,7 +271,7 @@ AC_ARG_WITH(runtime-libdir, + [], + [with_runtime_libdir=""]) + GLIB_RUNTIME_LIBDIR="$with_runtime_libdir" +-ABS_GLIB_RUNTIME_LIBDIR="`readlink -f $libdir/$with_runtime_libdir`" ++ABS_GLIB_RUNTIME_LIBDIR="`readlink -m $libdir/$with_runtime_libdir`" + AC_SUBST(GLIB_RUNTIME_LIBDIR) + AC_SUBST(ABS_GLIB_RUNTIME_LIBDIR) + AM_CONDITIONAL(HAVE_GLIB_RUNTIME_LIBDIR, [test "x$with_runtime_libdir" != "x"]) +-- +1.8.1.2 + diff --git a/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/glib-gettextize-dir.patch b/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/glib-gettextize-dir.patch new file mode 100644 index 000000000..ee435111f --- /dev/null +++ b/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/glib-gettextize-dir.patch @@ -0,0 +1,24 @@ +# an very old patch cherry-picked in every glib-2.0 patch directory. The earliest container +# for it is 2.6.5 in OE. The earliest commit for it is c8e5702127e507e82e6f68a4b8c546803accea9d +# in OE side which ports from previous bitkeeper SCM. In OE side it's only used til 2.12.4. +# +# keep it since it's always cleaner to not hardcode destination path. Use @datadir@ is more +# portable here. mark for upstream +# +# by Kevin Tian <kevin.tian@intel.com>, 06/25/2010 +# Rebased by Dongxiao Xu <dongxiao.xu@intel.com>, 11/16/2010 + +Upstream-Status: Inappropriate [configuration] + +diff -ruN glib-2.27.3-orig/glib-gettextize.in glib-2.27.3/glib-gettextize.in +--- glib-2.27.3-orig/glib-gettextize.in 2009-04-01 07:04:20.000000000 +0800 ++++ glib-2.27.3/glib-gettextize.in 2010-11-16 12:55:06.874605916 +0800 +@@ -52,7 +52,7 @@ + datadir=@datadir@ + datarootdir=@datarootdir@ + +-gettext_dir=$prefix/share/glib-2.0/gettext ++gettext_dir=@datadir@/glib-2.0/gettext + + while test $# -gt 0; do + case "$1" in diff --git a/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/ptest-paths.patch b/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/ptest-paths.patch new file mode 100644 index 000000000..f3be02770 --- /dev/null +++ b/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/ptest-paths.patch @@ -0,0 +1,30 @@ +Instead of writing the temporary mapping files in the mappedfile test to the +user runtime directory, write them to $TMP. The runtime directory may not +currently exist if the test is executed on a non-desktop system and the test +doesn't attempt to create the directory structure. + +Upstream-Status: Pending +Signed-off-by: Ross Burton <ross.burton@intel.com> + +diff --git a/glib/tests/mappedfile.c b/glib/tests/mappedfile.c +index 40e0e60..27a24be 100644 +--- a/glib/tests/mappedfile.c ++++ b/glib/tests/mappedfile.c +@@ -81,7 +81,7 @@ test_writable (void) + const gchar *new = "abcdefghijklmnopqrstuvxyz"; + gchar *tmp_copy_path; + +- tmp_copy_path = g_build_filename (g_get_user_runtime_dir (), "glib-test-4096-random-bytes", NULL); ++ tmp_copy_path = g_build_filename (g_get_tmp_dir (), "glib-test-4096-random-bytes", NULL); + + g_file_get_contents (g_test_get_filename (G_TEST_DIST, "4096-random-bytes", NULL), &contents, &len, &error); + g_assert_no_error (error); +@@ -125,7 +125,7 @@ test_writable_fd (void) + int fd; + gchar *tmp_copy_path; + +- tmp_copy_path = g_build_filename (g_get_user_runtime_dir (), "glib-test-4096-random-bytes", NULL); ++ tmp_copy_path = g_build_filename (g_get_tmp_dir (), "glib-test-4096-random-bytes", NULL); + + g_file_get_contents (g_test_get_filename (G_TEST_DIST, "4096-random-bytes", NULL), &contents, &len, &error); + g_assert_no_error (error); diff --git a/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/run-ptest b/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/run-ptest new file mode 100644 index 000000000..130ae09b6 --- /dev/null +++ b/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/run-ptest @@ -0,0 +1,3 @@ +#! /bin/sh + +gnome-desktop-testing-runner glib diff --git a/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/uclibc.patch b/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/uclibc.patch new file mode 100644 index 000000000..2a154fdd4 --- /dev/null +++ b/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0/uclibc.patch @@ -0,0 +1,20 @@ +Fix DATADIRNAME on uclibc/Linux + +translation files are always installed under PREFIX/share/locale in uclibc +based systems therefore lets set DATADIRNAME to "share". + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +Upstream-Status: Pending +Index: glib-2.38.2/m4macros/glib-gettext.m4 +=================================================================== +--- glib-2.38.2.orig/m4macros/glib-gettext.m4 2013-11-07 07:29:13.000000000 -0800 ++++ glib-2.38.2/m4macros/glib-gettext.m4 2014-03-15 14:51:54.712135644 -0700 +@@ -239,7 +239,7 @@ + [CATOBJEXT=.mo + DATADIRNAME=lib]) + ;; +- *-*-openbsd*) ++ *-*-openbsd* | *-*-linux-uclibc*) + CATOBJEXT=.mo + DATADIRNAME=share + ;; diff --git a/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0_2.44.1.bb b/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0_2.44.1.bb new file mode 100644 index 000000000..1e3d36af1 --- /dev/null +++ b/yocto-poky/meta/recipes-core/glib-2.0/glib-2.0_2.44.1.bb @@ -0,0 +1,23 @@ +require glib.inc + +PE = "1" + +SHRT_VER = "${@oe.utils.trim_version("${PV}", 2)}" + +SRC_URI = "${GNOME_MIRROR}/glib/${SHRT_VER}/glib-${PV}.tar.xz \ + file://configure-libtool.patch \ + file://fix-conflicting-rand.patch \ + file://add-march-i486-into-CFLAGS-automatically.patch \ + file://glib-2.0-configure-readlink.patch \ + file://run-ptest \ + file://ptest-paths.patch \ + file://uclibc.patch \ + file://0001-configure.ac-Do-not-use-readlink-when-cross-compilin.patch \ + file://allow-run-media-sdX-drive-mount-if-username-root.patch \ + file://0001-Remove-the-warning-about-deprecated-paths-in-schemas.patch \ + " + +SRC_URI_append_class-native = " file://glib-gettextize-dir.patch" + +SRC_URI[md5sum] = "83efba4722a9674b97437d1d99af79db" +SRC_URI[sha256sum] = "8811deacaf8a503d0a9b701777ea079ca6a4277be10e3d730d2112735d5eca07" diff --git a/yocto-poky/meta/recipes-core/glib-2.0/glib.inc b/yocto-poky/meta/recipes-core/glib-2.0/glib.inc new file mode 100644 index 000000000..072f79011 --- /dev/null +++ b/yocto-poky/meta/recipes-core/glib-2.0/glib.inc @@ -0,0 +1,104 @@ +SUMMARY = "A general-purpose utility library" +DESCRIPTION = "GLib is a general-purpose utility library, which provides many useful data types, macros, type conversions, string utilities, file utilities, a main loop abstraction, and so on." +HOMEPAGE = "https://developer.gnome.org/glib/" + +# pcre is under BSD; +# docs/reference/COPYING is with a 'public domai'-like license! +LICENSE = "LGPLv2+ & BSD & PD" +LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7 \ + file://glib/glib.h;beginline=4;endline=17;md5=b4f0f4a399c19e5ebb20c31b79d6bc32 \ + file://gmodule/COPYING;md5=3bf50002aefd002f49e7bb854063f7e7 \ + file://gmodule/gmodule.h;beginline=4;endline=17;md5=b4f0f4a399c19e5ebb20c31b79d6bc32 \ + file://glib/pcre/COPYING;md5=266ebc3ff74ee9ce6fad65577667c0f4 \ + file://glib/pcre/pcre.h;beginline=11;endline=35;md5=de27f2bf633d20a2b7af0b1983423283 \ + file://docs/reference/COPYING;md5=f51a5100c17af6bae00735cd791e1fcc" +BUGTRACKER = "http://bugzilla.gnome.org" +SECTION = "libs" + +BBCLASSEXTEND = "native nativesdk" + +DEPENDS = "glib-2.0-native virtual/libiconv libffi zlib" +DEPENDS_append_class-target = "${@bb.utils.contains('DISTRO_FEATURES', 'ptest', ' dbus', '', d)}" +DEPENDS_class-native = "pkgconfig-native gettext-native libffi-native zlib-native" +DEPENDS_class-nativesdk = "nativesdk-libtool nativesdk-gettext nativesdk-libffi nativesdk-zlib ${BPN}-native" + +PACKAGES =+ "${PN}-utils ${PN}-bash-completion ${PN}-codegen" + +LEAD_SONAME = "libglib-2.0.*" +FILES_${PN}-utils = "${bindir}/* ${datadir}/glib-2.0/gettext" + +inherit autotools gettext gtk-doc pkgconfig ptest-gnome + +S = "${WORKDIR}/glib-${PV}" + +CORECONF = "--disable-dtrace --disable-fam --disable-libelf --disable-systemtap --disable-man" + +PRINTF = "--enable-included-printf=no" +PRINTF_darwin = "--enable-included-printf=yes" +PRINTF_mingw32 = "--enable-included-printf=yes" +EXTRA_OECONF = "${PRINTF} ${CORECONF}" +EXTRA_OECONF_class-native = "${CORECONF} --disable-selinux" +EXTRA_OECONF_append_libc-uclibc = " --with-libiconv=gnu" + +do_configure_prepend() { + sed -i -e '1s,#!.*,#!${USRBINPATH}/env python,' ${S}/gio/gdbus-2.0/codegen/gdbus-codegen.in +} + +FILES_${PN} = "${libdir}/lib*${SOLIBS} ${libdir}/gio ${datadir}/glib-2.0/schemas \ + ${datadir}/glib-2.0/gettext/mkinstalldirs ${datadir}/glib-2.0/gettext/po/Makefile.in.in" +FILES_${PN}-dev += "${libdir}/glib-2.0/include \ + ${libdir}/gio/modules/lib*${SOLIBSDEV} \ + ${libdir}/gio/modules/*.la" +FILES_${PN}-dbg += "${datadir}/glib-2.0/gdb ${datadir}/gdb \ + ${libdir}/gio/modules/.debug \ + ${libdir}/glib-2.0/installed-tests/glib/.debug" +FILES_${PN}-codegen = "${datadir}/glib-2.0/codegen/*.py" +FILES_${PN}-bash-completion = "${sysconfdir}/bash_completion.d \ + ${datadir}/bash-completion" + +ARM_INSTRUCTION_SET = "arm" +USE_NLS = "yes" + +do_install_append () { + if [ -f ${D}${bindir}/gtester-report ]; then + sed ${D}${bindir}/gtester-report -i -e '1s|^#!.*|#!/usr/bin/env python|' + fi + + # Remove some unpackaged files + rm -f ${D}${datadir}/glib-2.0/codegen/*.pyc + rm -f ${D}${datadir}/glib-2.0/codegen/*.pyo + + # Some distros have both /bin/perl and /usr/bin/perl, but we set perl location + # for target as /usr/bin/perl, so fix it to /usr/bin/perl. + if [ -f ${D}${bindir}/glib-mkenums ]; then + sed -i -e '1s,#!.*perl,#! ${USRBINPATH}/env perl,' ${D}${bindir}/glib-mkenums + fi +} + +RDEPENDS_${PN}-ptest += "\ + gnome-desktop-testing \ + tzdata \ + tzdata-americas \ + tzdata-asia \ + tzdata-europe \ + tzdata-posix \ + python-pygobject \ + python-dbus \ + shared-mime-info \ + " + +RDEPENDS_${PN}-ptest_append_libc-glibc = "\ + glibc-gconv-utf-16 \ + glibc-charmap-utf-8 \ + glibc-gconv-cp1255 \ + glibc-charmap-cp1255 \ + glibc-gconv-utf-32 \ + glibc-gconv-utf-7 \ + glibc-gconv-euc-jp \ + glibc-gconv-iso8859-1 \ + glibc-gconv-iso8859-15 \ + glibc-charmap-invariant \ + glibc-localedata-translit-cjk-variants \ + " + +INSANE_SKIP_${PN}-ptest += "libdir" |