Date: Mon, 4 Jan 2021 06:56:43 +0100
From: John Darrington <john@darrington.wattle.id.au>
To: Friedrich Beckmann <friedrich.beckmann@gmx.de>
Cc: John Darrington <john@darrington.wattle.id.au>, pspp-dev
<pspp-dev@gnu.org>
Subject: Re: Buildbot success in GNU pspp CI on debian-buster-amd64
On Mon, Jan 04, 2021 at 12:47:00AM +0100, Friedrich Beckmann wrote:
Hi John,
it tried the cross build with the script from Harry based on opensuse and mingw in an out of source build but it ends with the following:
Harry's script needs to be reconsidered. In particular, based on my discussions with Harry,
it uses a wrapper which forces everything to be targeted on mingw. This happened to work
until recently. However now, when cross building, an auxilliary native build is required.
It was created by GNU PSPP configure 1.5.2-g21f20b, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ ../configure --cache-file=mingw32-config.cache --host=i686-w64-mingw32 --build=x86_64-suse-linux-gnu --target=i686-w64-mingw32 --prefix=/usr/i686-w64-mingw32/sys-root/mingw --exec-prefix=/usr/i686-w64-mingw32/sys-root/mingw --bindir=/usr/i686-w64-mingw32/sys-root/mingw/bin --sbindir=/usr/i686-w64-mingw32/sys-root/mingw/sbin --sysconfdir=/usr/i686-w64-mingw32/sys-root/mingw/etc --datadir=/usr/i686-w64-mingw32/sys-root/mingw/share --includedir=/usr/i686-w64-mingw32/sys-root/mingw/include --libdir=/usr/i686-w64-mingw32/sys-root/mingw/lib --libexecdir=/usr/i686-w64-mingw32/sys-root/mingw/libexec --localstatedir=/usr/i686-w64-mingw32/sys-root/mingw/var --sharedstatedir=/usr/i686-w64-mingw32/sys-root/mingw/com --mandir=/usr/i686-w64-mingw32/sys-root/mingw/share/man --infodir=/usr/i686-w64-mingw32/sys-root/mingw/share/info --enable-relocatable PSPPIRE_LDFLAGS=/tmp/pspp.res --with-libpq
This is the problem. --host= and --target are incorrect here (as are most of the other
flags).
It seems a bit bold to me to state that the developers of Mingw on openSUSE release macros for calling Mingw with incorrect flags. Especially as this always worked.
The current situation is that the source of PSPP and the routines of Mingw, as released on openSUSE, are incompatible. I don't know if this can be solved and I am far from sure I can solve it. Especially as the configure for cross-compiling triggers a native build looks to me as a problem.
I would prefer the option as Fritz suggested or a pre-condition of a native current PSPP build which can be called for cross-compiling.
I think these problems will disappear, if the pspp is built in the way recommended in the
INSTALL file. Just make sure the build and source directories are not the same.
If someone wants to work on this, I am happy to support him/here with my knowledge.
Stay safe