[Development] Qt 6 buildsystem support requirements

Shawn Rutledge Shawn.Rutledge at qt.io
Tue Jul 31 09:18:32 CEST 2018


> On 30 Jul 2018, at 22:30, Matthew Woehlke <mwoehlke.floss at gmail.com> wrote:
> 
> On a related note, "hermetic builds" is pretty ironic. Your *build*
> might be hermetic, but bazel itself is *far* from... it's very reliant
> on putting all its garbage in "magic locations" in your home directory,
> unlike most build tools that only need to write to your build directory.

Speaking of which (and speaking of re-inventing the wheel)… I seem to have a lot of qbs-related files on my system despite the fact that I don’t actively use it.  (OK I tried to build some project on github once, one that is already trying to use it.)  E.g. under ~/.config/QtProject/qbs/1.10.0 it looks like some meta-info, the kind of stuff that cmake and pkg-config already has:

$ cat ~/.config/QtProject/qbs/1.10.0/profiles/qt-4-8-7/modules/Qt/phonon/phonon.qbs
import qbs 1.0
import '../QtModule.qbs' as QtModule

QtModule {
    qtModuleName: "phonon"
    Depends { name: "Qt"; submodules: ['core'] }
    cpp.defines: ["QT_PHONON_LIB"]
    cpp.includePaths: ["/usr/include/qt4", "/usr/include/qt4/Phonon"]
}

I don’t know how it got there, but I prefer to have some understanding of what goes in my .config dir so that I can use a git repo to replicate the important stuff between systems (and ignore the rest, maybe even trash it sometimes).  Is there any way that mess can be avoided?  I mean really, meta-info about *system* packages going into my home dir, as if qbs could even rely on finding those files there, rather than being installed alongside the system package itself?!?

Maybe it’s better to continue depending on pkg-config, since it’s an old standard that we probably shouldn’t drop support for anyway, rather than duplicating it?



More information about the Development mailing list