[CMake] CMake IR
Domagoj Saric
domagoj.saric at littleendian.com
Wed Jul 29 10:25:54 EDT 2015
On 29.7.2015. 12:02, Nagy-Egri Máté Ferenc via CMake wrote:
> The reason I suggested this as a CMake 4.0 feature is because I am the 11th
> person out of 10 who actually “likes” CMake a bit and cares for it. I’d rather
> empower a tool I use on a daily basis than spawn an alternative and spend half
> my life trying to winning the world over.
My 2 ranting cents: you perfectly summed my own thoughts on CMake. This
love-hate relationship seems to be a recurring theme (where you 'adore' the idea
behind CMake but 'abhore' the implementation of the idea) so 'there's got to be
something to it' ":)"
In addition to it feeling like working with (or fighting against) an ugly
crossover between a C preprocessor and a shell script from 1979, an increasingly
big source of frustration is its rigidness and limitation of 'only one
toolset/compiler per project'.
With platforms like Android (NDK) that require you to build for X different
architectures with different toolsets/compilers, or IDEs like Xcode or Visual
Studio that offer targeting so many different combinations of toolsets and
targets (even Android and iOS in the latest version) >from a single project<
having a build system that requires you to create a separate build directory for
each and every one of those combinations (and then somehow connect them into a
master build where a single CPack invocation will be able to gather and package
the build results of all the sub-builds) feels like an ancient torture device.
As for the proposal, wouldn't the first logical step in 'decoupling CMake from
its legacy' be what Clang did with libclang, i.e extracting the
'core'/non-scripting part of CMake into a libcmake around which new
interfaces/DSLs can written/created..?
--
Domagoj Saric
Software Architect
www.LittleEndian.com
More information about the CMake
mailing list