commit:     b8d0ccd69d3b71e73c9ccef7c213c0c135ea3abd
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Wed Mar  4 19:19:19 2020 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Mon Mar  9 00:15:04 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b8d0ccd6

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 <AT> gentoo.org>
Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>

 eclass/meson.eclass | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/eclass/meson.eclass b/eclass/meson.eclass
index 0588590b31e..16e17dd4a38 100644
--- a/eclass/meson.eclass
+++ b/eclass/meson.eclass
@@ -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}'

Reply via email to