1
0
mirror of https://git.yoctoproject.org/poky synced 2026-05-08 05:09:24 +00:00

meson: warn if the default value from meson.get_cross_property() is being used

Projects such as glib have tests that execute code to check their behaviour, and
in cross-compilation environments where they can't execute code fall back on
meson.get_cross_property() with a default value.  These default values may not
be appropriate: for example if glib can't verify that vsprintf() isn't broken it
assumes that it is, and embeds the gnulib copy of vsprintf() instead of using
glibc's implementation.

Add a warning whenever the default value for get_cross_property() is used so
that we can tell this is happening and set the value appropriately.

(From OE-Core rev: 669ddafcc9f363cbb81d4b71649241257785a840)

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-21 12:32:17 +00:00
committed by Richard Purdie
parent 928b20e705
commit 06606fd9e0
2 changed files with 24 additions and 0 deletions
+1
View File
@@ -14,6 +14,7 @@ SRC_URI = "https://github.com/mesonbuild/meson/releases/download/${PV}/meson-${P
file://cross-libdir.patch \
file://0001-modules-windows-split-WINDRES-env-variable.patch \
file://0002-environment.py-detect-windows-also-if-the-system-str.patch \
file://cross-prop-default.patch \
"
SRC_URI[sha256sum] = "ef9f14326ec1e30d3ba1a26df0f92826ede5a79255ad723af78a2691c37109fd"
SRC_URI[md5sum] = "0267b0871266056184c484792572c682"
@@ -0,0 +1,23 @@
meson.build files that use cc.run() in native builds can silently fallback to
meson.get_cross_property() in cross builds without an exe-wrapper, but there's
no way to know that this is happening.
As the defaults may be pessimistic (for example, disabling the support for a
feature that should be enabled) emit a warning when the default is used, so that
the recipe can explicitly set the cross property as relevant.
Upstream-Status: Submitted [https://github.com/mesonbuild/meson/pull/5071]
Signed-off-by: Ross Burton <ross.burton@intel.com>
diff --git a/mesonbuild/interpreter.py b/mesonbuild/interpreter.py
index 3c3cfae0..10e741ae 100644
--- a/mesonbuild/interpreter.py
+++ b/mesonbuild/interpreter.py
@@ -1890,6 +1890,7 @@ class MesonMain(InterpreterObject):
return props[propname]
except Exception:
if len(args) == 2:
+ mlog.warning('Cross property %s is using default value %s' % (propname, args[1]))
return args[1]
raise InterpreterException('Unknown cross property: %s.' % propname)