[CMake] CMake + Native Builds, Relationship

Steve Johns steve.johns at verizon.net
Sun May 28 10:32:27 EDT 2006


In another thread, Brandon wrote:

> CMake is a build system generator; that means the drill is always going to 
> be CMake + some other build system.  It's never going to be CMake by 
> itself.

This statement seems to sum up the strength and purpose of CMake.  This 
strikes me a a big-picture point that I never want to lose sight of.

As a newbie to CMake, and considering the above, one thing I'd like to get 
clearer on is the nature of the ongoing interaction between CMake itself and 
the native build system files it generates.

What I mean is, you don't just run CMake, get a native build system, and 
then proceed on in the native environment as if CMake no longer existed. 
Instead, the existence of CMake is somehow embedded in the native build 
systems that are created, and CMake itself gets re-invoked at various points 
in the future by those native builds as you go about extending and 
maintaining your project.  In fact, your own workflow is required to change 
somewhat as a result of the presence of CMake, yes?

I'd appreciate any commentary, or pointers to commentary, on the ongoing 
relationship between CMake and the native build systems it generates.

In my own terminology, working with CMake adds a meta-level to the model of 
a build process, and it is the nature of that meta-level that I'd like to 
get a better conceptual grasp on.  I don't know if that's a good or a poor 
way to put it, but I imagine that someone can grok my intent and offer a few 
pearls of insight.

Thanks!  :^)










More information about the CMake mailing list