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.

(From OE-Core rev: e04e0a20cab04966698c50dc79195a8f159248d3)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Ross Burton 2019-03-26 12:01:57 +00:00 committed by Richard Purdie
parent 35742c10f5
commit 9bad984bf3
3 changed files with 8 additions and 0 deletions

View File

@ -0,0 +1,6 @@
[properties]
have_c99_vsnprintf = true
have_c99_snprintf = true
have_unix98_printf = true
va_val_copy = true
growing_stack = false

View 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"

View 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