build: Use more conservative GResource embedding on non-x86_64
authorSimon McVittie <smcv@debian.org>
Sat, 17 Sep 2022 20:50:38 +0000 (21:50 +0100)
committerSimon McVittie <smcv@debian.org>
Sat, 17 Sep 2022 20:50:38 +0000 (21:50 +0100)
Doing clever things with objcopy is faster and seems to be reliable on
x86_64 Linux, but also doesn't work on all toolchains and architectures:
in particular, Debian has had trouble with this on arm and mips.
In a distro build environment where we are compiling all of GTK every
time, the cost of potentially unreliable builds is higher than the cost
of using slower but more conservative GResource embedding.

Resolves: https://gitlab.gnome.org/GNOME/gtk/-/issues/5107
Signed-off-by: Simon McVittie <smcv@debian.org>
gtk/meson.build

index 080bffe0a658c611d712a5e1c6bd836de666edf2..225b0b8cac84bd87031526a1a0b103a4d1f86135 100644 (file)
@@ -877,7 +877,7 @@ endif
 
 ld = find_program('ld', required : false)
 
-if not meson.is_cross_build() and build_machine.cpu_family() != 'arm' and build_machine.system() == 'linux' and objcopy.found() and objcopy_supports_add_symbol and ld.found()
+if not meson.is_cross_build() and build_machine.cpu_family() == 'x86_64' and build_machine.system() == 'linux' and objcopy.found() and objcopy_supports_add_symbol and ld.found()
   glib_compile_resources = find_program('glib-compile-resources')
 
   # Create the resource blob