[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#876131: qtbase-opensource-src FTCBFS: uses the build architecture toolchain



Hi Helmut!

On Thu, Jan 16, 2020 at 08:25:47PM +0100, Helmut Grohne wrote:
> I can explain this. Please compare the relevant mkspecs:
>
> https://sources.debian.org/src/qtbase-opensource-src/5.12.5+dfsg-5/mkspecs/linux-g++/qmake.conf/
> https://sources.debian.org/src/qtbase-opensource-src/5.12.5+dfsg-5/mkspecs/linux-aarch64-gnu-g++/qmake.conf/
>
> You'll quickly observe that they look much the same with one key
> difference. The arm64 one has all the tools prefixed with the GNU
> triplet. And that's precisely the property we need here. In principle,
> could mechanically generate a similar mkspec for any other architecture.
> It is much like a CMake toolchain file or a meson toolchain file. We
> need it to tell QT which architecture to build for.
>
> Possibly we could patch a new linux-debian-g++ mkspec that sets up the
> variables based on the dpkg-architecture environment variables. If we go
> that route, make sure not to install that into a binary package. Prior
> art: linux-oe-g++
> (https://github.com/meta-qt5/meta-qt5/wiki/Building-with-OE).

I wonder if we can use the linux-g++ mkspec and pass QMAKE_CXX and similar
variables to configure, just like we pass them to qmake for cross builds:

https://salsa.debian.org/qt-kde-team/qt/qtbase/blob/master/debian/qmake-cross-wrapper.in

configure just passes its options to qmake anyway:

https://sources.debian.org/src/qtbase-opensource-src/5.12.5+dfsg-5/configure/#L857

Or maybe set external-hostbindir to /usr/lib/${DEB_BUILD_MULTIARCH}/qt5/bin,
in which case qmake will be a symlink to qmake-cross-wrapper? Though thinking
more about it, in this case the real qmake will get two -qtconf options, of
which the latter (added by configure) will be wrong. So that will probably not
work.

--
Dmitry Shachnev

Attachment: signature.asc
Description: PGP signature


Reply to: