On Tue, Sep 04, 2018 at 09:02:18AM +0200, Thomas Huth wrote: > 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.
Doh, I sent a patch to fix this problem more broadly years ago now: https://lists.nongnu.org/archive/html/qemu-devel/2015-11/msg04157.html but it appears no maintainer ever merged it ! > 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 Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|