]> code.ossystems Code Review - openembedded-core.git/commitdiff
glib: set glib-specific cross properties
authorRoss Burton <ross.burton@intel.com>
Tue, 26 Mar 2019 12:01:57 +0000 (12:01 +0000)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 26 Mar 2019 14:03:48 +0000 (14:03 +0000)
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>
meta/recipes-core/glib-2.0/glib-2.0/glib-meson.cross [new file with mode: 0644]
meta/recipes-core/glib-2.0/glib-2.0_2.58.3.bb
meta/recipes-core/glib-2.0/glib.inc

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 (file)
index 0000000..8420f98
--- /dev/null
@@ -0,0 +1,6 @@
+[properties]
+have_c99_vsnprintf = true
+have_c99_snprintf = true
+have_unix98_printf = true
+va_val_copy = true
+growing_stack = false
index 2de2affa51a7a4137c478249e905e120815768bf..c872c7492027bc9b3c609004253b2cece0ce8f0e 100644 (file)
@@ -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"
index 6f0ec1ad2e982302cefed671c6271b06150460c1..574bb38557b0c5f5c06af235e5452bb1357f064e 100644 (file)
@@ -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