meson.eclass: Set needs_exe_wrapper in cross file

needs_exe_wrapper tells meson whether the build machine is able to
directly execute the binaries it produces or whether it needs an exe
wrapper (like QEMU). For non-native ABI builds like building 32-bit
libraries on an x86-64 system, we want this set to false to communicate
to meson that the build machine can run the binaries directly.

Reviewed-by: Mike Gilbert <floppym@gentoo.org>
Signed-off-by: Matt Turner <mattst88@gentoo.org>
This commit is contained in:
Matt Turner
2020-03-04 11:19:19 -08:00
parent 00e10fa9d9
commit b8d0ccd69d

View File

@@ -149,6 +149,9 @@ _meson_create_cross_file() {
# This may require adjustment based on CFLAGS
local cpu=${CHOST%%-*}
local needs_exe_wrapper=false
tc-is-cross-compiler && needs_exe_wrapper=true
cat > "${T}/meson.${CHOST}.${ABI}" <<-EOF
[binaries]
ar = $(_meson_env_array "$(tc-getAR)")
@@ -173,6 +176,7 @@ _meson_create_cross_file() {
objc_link_args = $(_meson_env_array "${OBJCFLAGS} ${LDFLAGS}")
objcpp_args = $(_meson_env_array "${OBJCXXFLAGS} ${CPPFLAGS}")
objcpp_link_args = $(_meson_env_array "${OBJCXXFLAGS} ${LDFLAGS}")
needs_exe_wrapper = ${needs_exe_wrapper}
[host_machine]
system = '${system}'