meson.bbclass: Add support for nativesdk

We need to use the meson.cross file when building for nativesdk.
Additionally, we need to trick meson's sanity tests, just as it is
done for target builds.

(From OE-Core rev: abcb330c462c2c06d36f8f3681a6bd07d562c1fe)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Peter Kjellerstedt
2018-02-20 14:16:34 +01:00
committed by Richard Purdie
parent b487251b86
commit eaa9356744

View File

@@ -39,6 +39,7 @@ EXTRA_OEMESON += "${PACKAGECONFIG_CONFARGS}"
MESON_CROSS_FILE = ""
MESON_CROSS_FILE_class-target = "--cross-file ${WORKDIR}/meson.cross"
MESON_CROSS_FILE_class-nativesdk = "--cross-file ${WORKDIR}/meson.cross"
CCOMPILER ?= "gcc"
CXXCOMPILER ?= "g++"
@@ -105,6 +106,18 @@ meson_do_configure_prepend_class-target() {
export AR="${BUILD_AR}"
}
meson_do_configure_prepend_class-nativesdk() {
# Set these so that meson uses the native tools for its build sanity tests,
# which require executables to be runnable. The cross file will still
# override these for the nativesdk build. Note that we do *not* set CFLAGS,
# LDFLAGS, etc. as they will be slurped in by meson and applied to the
# nativesdk build, causing errors.
export CC="${BUILD_CC}"
export CXX="${BUILD_CXX}"
export LD="${BUILD_LD}"
export AR="${BUILD_AR}"
}
meson_do_configure_prepend_class-native() {
export PKG_CONFIG="pkg-config-native"
}