Gentoo Archives: gentoo-dev

From: Matt Turner <mattst88@g.o>
To: gentoo-dev@l.g.o
Cc: floppym@g.o, williamh@g.o, Matt Turner <mattst88@g.o>
Subject: [gentoo-dev] [PATCH] meson.eclass: Set needs_exe_wrapper in cross file
Date: Wed, 04 Mar 2020 19:55:55
Message-Id: 20200304195530.685934-1-mattst88@gentoo.org
1 needs_exe_wrapper tells meson whether the build machine is able to
2 directly execute the binaries it produces or whether it needs an exe
3 wrapper (like QEMU). For non-native ABI builds like building 32-bit
4 libraries on an x86-64 system, we want this set to false to communicate
5 to meson that the build machine can run the binaries directly.
6
7 This allows dev-libs/wayland to execute the wayland-scanner binary it
8 builds rather than relying on the system's.
9
10 Signed-off-by: Matt Turner <mattst88@g.o>
11 ---
12 eclass/meson.eclass | 4 ++++
13 1 file changed, 4 insertions(+)
14
15 diff --git a/eclass/meson.eclass b/eclass/meson.eclass
16 index 0588590b31e..16e17dd4a38 100644
17 --- a/eclass/meson.eclass
18 +++ b/eclass/meson.eclass
19 @@ -149,6 +149,9 @@ _meson_create_cross_file() {
20 # This may require adjustment based on CFLAGS
21 local cpu=${CHOST%%-*}
22
23 + local needs_exe_wrapper=false
24 + tc-is-cross-compiler && needs_exe_wrapper=true
25 +
26 cat > "${T}/meson.${CHOST}.${ABI}" <<-EOF
27 [binaries]
28 ar = $(_meson_env_array "$(tc-getAR)")
29 @@ -173,6 +176,7 @@ _meson_create_cross_file() {
30 objc_link_args = $(_meson_env_array "${OBJCFLAGS} ${LDFLAGS}")
31 objcpp_args = $(_meson_env_array "${OBJCXXFLAGS} ${CPPFLAGS}")
32 objcpp_link_args = $(_meson_env_array "${OBJCXXFLAGS} ${LDFLAGS}")
33 + needs_exe_wrapper = ${needs_exe_wrapper}
34
35 [host_machine]
36 system = '${system}'
37 --
38 2.24.1

Replies