[Development] Qt 6 buildsystem support requirements
Allan Sandfeld Jensen
kde at carewolf.com
Sat Jul 21 08:40:47 CEST 2018
On Samstag, 21. Juli 2018 07:38:10 CEST Bogdan Vatra via Development wrote:
> Hi,
>
> În ziua de sâmbătă, 21 iulie 2018, la 05:35:48 EEST, Thiago Macieira a
scris:
> > Hello
> >
> > Having spent far too much time trying to figure out why crappy
> > buildsystems
>
> [...]
>
> > 1) Ease of obtention
> >
> > a) Must be packaged by all major package managers where Qt 6 is expected
> > to
> >
> > be relevant. That is, it must be available as a package in:
> > - ArchLinux
> > - Debian testing
> > - Gentoo
> > - Fedora current and previous
> > - openSUSE current and previous
> > - Ubuntu LTS released more than 6 months prior
> > - Homebrew (macOS)
>
> [...]
>
> > b) Must be easily compiled from source on a standard system installation.
> > All of its dependencies must come from the system's package manager and
> > there must be no cyclic dependencies. That is, it cannot require itself to
> > build and it must not depend on Qt, either in source form or binary.
>
> You really hate QBS don't you ? :)
>
> Anyway IMHO is more important to have a clean, nice and easy to use syntax
> and to be tooling friendly than 1.b.
>
> GN[1] is another example of build system which didn't care too much about
> 1.a,b,c and it still used in quite big projects (e.g. chrome, fuchsia). To
> my huge surprise, they managed to move it into a separate repo and remove
> all chromium dependencies (yep, a few months ago you had to checkout the
> entire chromium repo to build it :) ).
>
Sounds good, but at least for the last year it has also been so unstable that
any older version of GN couldn't build a newer Chromium release, and all the
build logic was heavily tied to how Chromium does this, and it has a
bootstrapper than never worked in any releases ever, so the only way to build
GN was to download GN and build it with the blackbox binary.
`Allan
More information about the Development
mailing list