Deprecated m4 macros don't use CPU-OS-pkg-config when cross-compiling
This is Debian bug https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=894069.
Steps to reproduce
Cross-compile terminatorx (version not stated, but presumably 4.0.1), which uses the deprecated AM_PATH_GTK_3_0
macro.
For example, you might be building on an x86_64 system (the build architecture in Autotools terms) for an ARM system (the host architecture).
Current behavior
AC_PATH_PROG([pkg-config])
searches $PATH
for pkg-config
, which is the pkg-config for the build architecture (usually x86_64), and queries the GTK version etc. for the build architecture
Expected outcome
AC_PATH_TOOL([pkg-config])
searches $PATH
for e.g. arm-linux-gnueabihf-pkg-config
, which is the pkg-config for the host architecture (e.g. ARM), queries the GTK version etc. for the host architecture, and skips checks that do not make sense when cross-compiling
Version information
GTK 3.22.29 on Debian. GTK 4 is unaffected, because the deprecated macros have been removed there.
It looks as though this also affects GTK 2 (untested). The GTK 2 version of the macro also hard-codes pkg-config
in one location where GTK 3 correctly uses $PKG_CONFIG
.