commit 2a349006b9c1feba0a29ede4838cf8f5fdc0b2e5 Author: Hans-Christoph Steiner hans@eds.org Date: Tue Oct 29 21:13:56 2019 +0100
force pkg-config to only use --prefix when cross-compiling
The current pkg-config setup has no sense of whether it is cross-compiling, so it will detect things on the build system that are not present or are wrong for the host system. This forces the cross-compiling build to only look for pkg-config .pc files in --prefix.
A version of this has been the setup for many years with the Android builds.
Fixes #32191
Signed-off-by: Hans-Christoph Steiner hans@eds.org --- changes/ticket32191 | 3 +++ configure.ac | 10 ++++++++++ 2 files changed, 13 insertions(+)
diff --git a/changes/ticket32191 b/changes/ticket32191 new file mode 100644 index 000000000..65e919fe0 --- /dev/null +++ b/changes/ticket32191 @@ -0,0 +1,3 @@ + o Minor features (build system): + - force pkg-config to only use --prefix when cross-compiling. + Closes ticket 32191. diff --git a/configure.ac b/configure.ac index 0e9bfe1f6..ece831d5b 100644 --- a/configure.ac +++ b/configure.ac @@ -37,6 +37,16 @@ else pkg_config_user_action="check the PKG_CONFIG_PATH environment variable" fi
+if test "x$PKG_CONFIG_PATH" = "x" && test "x$prefix" != "xNONE" && test "$host" != "$build"; then + export PKG_CONFIG_PATH=$prefix/lib/pkgconfig + AC_MSG_NOTICE([set PKG_CONFIG_PATH=$PKG_CONFIG_PATH to support cross-compiling]) + if test -f "$PKG_CONFIG_PATH/libevent.pc"; then + echo "checking for $PKG_CONFIG_PATH/libevent.pc... yes" + else + AC_MSG_ERROR([$PKG_CONFIG_PATH/libevent.pc not found!]) + fi +fi + AC_ARG_ENABLE(openbsd-malloc, AS_HELP_STRING(--enable-openbsd-malloc, [use malloc code from OpenBSD. Linux only. Deprecated: see --with-malloc])) AC_ARG_ENABLE(static-openssl,
tor-commits@lists.torproject.org