summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoss Burton <ross.burton@intel.com>2019-03-26 12:01:57 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2019-03-26 14:03:48 +0000
commite04e0a20cab04966698c50dc79195a8f159248d3 (patch)
tree819bdf0ddc208d3b441f22368e39624586626498
parentaeaca9bb1b1c8bf44818945dc4b2cbd6d4b5cef2 (diff)
downloadopenembedded-core-e04e0a20cab04966698c50dc79195a8f159248d3.tar.gz
glib: set glib-specific cross properties
GLib wants to execute code to identify several properties of the system, for example is vsprintf() broken and what direction does the stack grow. In cross-compiled environments these fallback to the default values which are not always correct (our vsprintf() is fine, but the test assumes it isn't) so set these properties explicitly. Ideally this happens magically by meson.bbclass using the same logic as siteinfo.bbclass, but we need to fix glib now. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-core/glib-2.0/glib-2.0/glib-meson.cross6
-rw-r--r--meta/recipes-core/glib-2.0/glib-2.0_2.58.3.bb1
-rw-r--r--meta/recipes-core/glib-2.0/glib.inc1
3 files changed, 8 insertions, 0 deletions
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/glib-meson.cross b/meta/recipes-core/glib-2.0/glib-2.0/glib-meson.cross
new file mode 100644
index 0000000000..8420f9874e
--- /dev/null
+++ b/meta/recipes-core/glib-2.0/glib-2.0/glib-meson.cross
@@ -0,0 +1,6 @@
+[properties]
+have_c99_vsnprintf = true
+have_c99_snprintf = true
+have_unix98_printf = true
+va_val_copy = true
+growing_stack = false
diff --git a/meta/recipes-core/glib-2.0/glib-2.0_2.58.3.bb b/meta/recipes-core/glib-2.0/glib-2.0_2.58.3.bb
index 2de2affa51..c872c74920 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0_2.58.3.bb
+++ b/meta/recipes-core/glib-2.0/glib-2.0_2.58.3.bb
@@ -16,6 +16,7 @@ SRC_URI = "${GNOME_MIRROR}/glib/${SHRT_VER}/glib-${PV}.tar.xz \
file://0001-Set-host_machine-correctly-when-building-with-mingw3.patch \
file://0001-Do-not-write-bindir-into-pkg-config-files.patch \
file://0001-meson.build-do-not-hardcode-linux-as-the-host-system.patch \
+ file://glib-meson.cross \
"
SRC_URI_append_class-native = " file://relocate-modules.patch"
diff --git a/meta/recipes-core/glib-2.0/glib.inc b/meta/recipes-core/glib-2.0/glib.inc
index 6f0ec1ad2e..574bb38557 100644
--- a/meta/recipes-core/glib-2.0/glib.inc
+++ b/meta/recipes-core/glib-2.0/glib.inc
@@ -53,6 +53,7 @@ PACKAGECONFIG[libelf] = ",,elfutils"
PACKAGECONFIG[tests] = "-Dinstalled_tests=true,-Dinstalled_tests=false,dbus"
EXTRA_OEMESON = "-Ddtrace=false -Dfam=false -Dsystemtap=false -Dselinux=false"
+EXTRA_OEMESON_append_class-target = " --cross-file ${WORKDIR}/glib-meson.cross"
do_configure_prepend() {
sed -i -e '1s,#!.*,#!${USRBINPATH}/env python3,' ${S}/gio/gdbus-2.0/codegen/gdbus-codegen.in