[Development] Build system for Qt 6

Adam Majer adamm at zombino.com
Sun Dec 16 20:37:07 CET 2018


On 12/16/2018 08:05 PM, Thiago Macieira wrote:
> On Sunday, 16 December 2018 05:21:35 PST Ray Donnelly wrote:
>>   As I say it's "ok" for developers but not for
>> packagers.
> 
> Which one is ok for packagers?

 From packaging standpoint, autotools are clearly the best. But I would 
say cmake is ok for 2nd place. qmake is also nice, but that's what we 
want to get rid of.

In general, the rule would be: any system that is widely used is 
superior to any system that is not so widely used. If you have some 
magic buildsystem that no one is using, it will sooner or later bite you 
in the butt. The lack of maintenance and development and simply users of 
the build system will result in large technical debt as compared to more 
popular build systems. And eventually one will have to scrap it.

I'll just give two examples here. Boost.Build - was to be the "simplest" 
build system... and now no one wants to use it, even the Boost project. 
It's the opposite of simple to understand. Another example is Gyp. It's 
used by Node and V8. It's been abandoned by Google and it's using 
python2 and there is little motivation to migrate it to Python3 - 
something will have to give here soon. And in both these cases using 
cmake would have resulted in easier maintenance. Actually, Boost is 
slowly migrating to cmake.

So yes, just use cmake knowing that you will find some problems. But at 
least you no longer have to maintain the build tool itself.

- Adam



More information about the Development mailing list