Hi Helmut! On 20/01/16 07:41, Helmut Grohne wrote: > Hi, > > On Mon, Sep 18, 2017 at 05:04:40PM -0300, Lisandro Damián Nicanor Pérez Meyer > wrote: > > The only way I could accept that if we could build-depend on a > > specific version (the same version we are trying to compile). > > > > Helmut told me that's not possible, and I know from experience that > > having a window opened to build qt with an oder qmake it's calling for > > big troubles. > > We arrived at a compromise: Turn the check into a build-time check. > Rather than having dpkg-checkbuilddeps verify the property, we can have > debian/rules check the version.
Totally agreed. > I also updated the patch to the current version. > > Limitations: > * Only works for arm64 and armel since no other architectures have > matching mkspecs I'm wondering why we don't use linux-g++ too, as it has been happening on all other archs. > * Fails when it encounters mysql_config. I didn't figure out yet how to > make it use pkg-config mysqlclient instead, but that's what needs to > happen. > > Helmut ACK, topic to investigate then. I've added the following into experimental as part of a not yet released change (but I have to do it soon rather than later): > diff --minimal -Nru qtbase-opensource-src-5.12.5+dfsg/debian/changelog > qtbase-opensource-src-5.12.5+dfsg/debian/changelog > --- qtbase-opensource-src-5.12.5+dfsg/debian/changelog 2019-12-31 > 12:19:15.000000000 +0100 > +++ qtbase-opensource-src-5.12.5+dfsg/debian/changelog 2020-01-16 > 16:27:50.000000000 +0100 > @@ -1,3 +1,13 @@ > +qtbase-opensource-src (5.12.5+dfsg-5.1) UNRELEASED; urgency=medium > + > + * Non-maintainer upload. Should we really close the bug here? I would keep it open until we make it work. > + * Improve cross building: (Closes: #876131) > + + Pass --external-hostbindir to use the native qmake. > + + Pass a cross platform_arg. > + + Verify that the qmake self-dependency exactly matches the version. > + > + -- Helmut Grohne <hel...@subdivi.de> Thu, 16 Jan 2020 16:27:50 +0100 > + > qtbase-opensource-src (5.12.5+dfsg-5) unstable; urgency=medium [snip] Here: > -ifeq ($(DEB_HOST_ARCH_OS),linux) > - platform_arg = linux-g++ > -else ifeq ($(DEB_HOST_ARCH_OS),hurd) > - platform_arg = hurd-g++ > -else ifeq ($(DEB_HOST_ARCH_OS),kfreebsd) > - platform_arg = gnukfreebsd-g++ > -else > - $(error Unknown qmake mkspec for $(DEB_HOST_ARCH_OS)) > +mkspec_osmap_kfreebsd = gnukfreebsd > +platform_os = $(or $(mkspec_osmap_$(DEB_HOST_ARCH_OS)),$(DEB_HOST_ARCH_OS)) > +platform_arg = $(platform_os)-g++ > + > +ifneq ($(DEB_BUILD_ARCH),$(DEB_HOST_ARCH)) > +platform_arg = > $(platform_os)-$(DEB_HOST_GNU_CPU)-$(DEB_HOST_ARCH_LIBC)$(filter-out > base,$(DEB_HOST_ARCH_ABI))-g++ > +endif > +ifneq (,$(filter cross,$(DEB_BUILD_PROFILES))) > +extra_configure_opts += -external-hostbindir /usr/lib/qt5/bin > endif We have always used linux-g++ on linux, so maybe we can keep that? > ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) > @@ -72,6 +73,9 @@ > dh $@ --with pkgkde_symbolshelper > > override_dh_auto_configure: Would the following comment be ok? # Check we are cross building with the exact same Qt version. > +ifneq (,$(filter cross,$(DEB_BUILD_PROFILES))) > + test "`dpkg-query -f '$${Version}' -W qt5-qmake-bin`" = "$(DEB_VERSION)" > +endif Cheers, Lisandro.