Python is great but it's a general-purpose language. A build system needs a domain-specific language, otherwise all but trivial tasks will require very verbose code. CMake should converge to conventions that are almost universal in modern interpreted languages, but having a DSL instead of whatever g.p. interpreted language happens to be fashionable today is a wise choice.
@toddseiler3 жыл бұрын
I would like to see support for a FASTBUILD as a generator.
@SimonToth833 жыл бұрын
I'm very confused by the C++20 modules part. Are you trying to make CMake figure out module dependencies automatically? That sounds kind of crazy. Why not just do what Bazel has been doing for ages?
@gracicot423 жыл бұрын
Modules != packages. A module is a unit of code, kind of a combined cpp + hpp file, optionaly combined with implementation units and partition units. A package can be composed of many modules. The dependencies he talk about are that when you import a module from another file, that file *must* be compiled first. If the other file has not be compiled first, the build fails. So the build system must scan the dependencies before compiling those files.
@coolwinder6 ай бұрын
Why is it so hard for people to explain CMake, this is perfect example, i just wasted an hour in this, gained zero.
@coolwinder6 ай бұрын
I suppose if it was expanded here, there would be no need for paid courses.
@victoreijkhout71153 жыл бұрын
"Professional Cmake" is bad. It lists all commands but with hardly any paradigmatic examples. I learned more from asking on reddit.