When cross-compiling QEMU for a target that significantly differs from the host, the current information in config.status is not enough to properly re-create the configuration. For example when I try to test my build with the mingw32 cross-compiler, I regularly get this error after the build system tried to re-create the configuration with the config.status file:
ERROR: sizeof(size_t) doesn't match GLIB_SIZEOF_SIZE_T. You probably need to set PKG_CONFIG_LIBDIR to point to the right pkg-config files for your build target A similar problem exists for the "windres" tool, where you have to set the WINDRES variable in case it has a different name. So let's fix these issues by storing the configuration for these variables in the config.status file, too. Signed-off-by: Thomas Huth <th...@redhat.com> --- configure | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/configure b/configure index 58862d2..4d8888f 100755 --- a/configure +++ b/configure @@ -7534,6 +7534,12 @@ cat <<EOD >config.status # Compiler output produced by configure, useful for debugging # configure, is in config.log if it exists. EOD +if [ -n "$PKG_CONFIG_LIBDIR" ]; then + echo "export PKG_CONFIG_LIBDIR=\"$PKG_CONFIG_LIBDIR\"" >>config.status +fi +if [ -n "$WINDRES" ]; then + echo "export WINDRES=\"$WINDRES\"" >>config.status +fi printf "exec" >>config.status printf " '%s'" "$0" "$@" >>config.status echo ' "$@"' >>config.status -- 1.8.3.1