[Development] Future of QBS

Matthew Woehlke mwoehlke.floss at gmail.com
Tue Oct 17 16:26:05 CEST 2017


On 2017-10-16 22:05, Kevin Kofler wrote:
> Konstantin Tokarev wrote:
>> I have no real experience with Meson, but at least it has following
>> advantages:
>>
>> * Its language is typed(!),
> 
> CMake also has a concept of types. In particular, the cache variables (i.e.,
> the variables you can set on the command line, which are also cached across
> invocations) have a type.

That's... misleading. The only time when those "types" matter is when
you are using cmake-gui; they influence the convenience widgets that
cmake-gui uses to assist users in providing appropriate values.

Internally, everything is a string.

>> has native support for arrays(!)
> 
> That is what the CMake LIST command is for.

...and yet, internally, everything is a string. "Lists" in CMake tend to
get mucked up when you need to deal with values that contain the list
separator token (';'). Real, first-class support for arrays would be a
welcome improvement.

>> * It is target-oriented from the start and is not so burdened by legacy
>> ways of doing things wrong, which plague old CMake projects and confuse
>> newcomers
> 
> CMake is a mature tool with a long history,

...and another advantage of this is that CMake has solved many, many
"hard" problems that don't occur to all these folks that want to write
"new and shiny" tools.

Turing completeness is another case in point. You may *say* you don't
want it... until you run into some problem that you just can't seem to
solve in your build tool.

-- 
Matthew




More information about the Development mailing list