[CMake] What about...

Brandon J. Van Every bvanevery at gmail.com
Sun May 28 08:36:02 EDT 2006


Thomas Zander wrote:
> But, to directly answer your assertion; the most human feeling of me 
> feeling lost when there is something new to learn is not the reason for 
> my emails here. I honestly find it counter productive of you to go for 
> that excuse.  Its soo easy.
>
> The suggestions I made here are an attempt to make cmake (which I _am_ 
> using daily) get better. To make it the best by learning from all the 
> build systems I have had to use over the years.
>   

Some of your suggestions, about ./configure interfaces, I've raised on 
CMake-Promote.

Others, like "why can't I avoid make?" show a basic flaw in your 
thinking.  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.  So you will always be getting your hands dirty, 
even if CMake evolves to become the squeakiest cleanest thing around.  
If there's a build system out there that you think is really really 
cool, and you want to do a lot of work, you could write a CMake 
generator for it.  Otherwise, you may have to face the reality that most 
build systems are not all that cool.  I mean, there's nothing 
particularly great about Visual Studio .sln files.  I just happen to 
have invested in that skill.  Ditto Makefiles, for that matter.  Ant 
didn't get me excited; I seem to have allergic reactions to XML.  Once 
upon a time it came down to SCons vs. CMake, and CMake won.  I won't be 
bothering with SCons until it's time to convert a SCons project, or 
SCons people.

IIRC the KDE guys dumped SCons because it was too much of a PITA....

There is always the temptation to write a build system from scratch, in 
the paradigm of one's choice.  For instance, a Chicken Scheme native 
build system.  I've toured a lot of boutique open source languages... 
there are a lot of half-finished, half-assed build systems out there.  
Typically they're done by 1 guy who's just sorta poking along at his 
personal project.  The list of build systems with a team, a community, 
and product maturity is rather short.  In other words, I think you 
grouse about CMake because there isn't anything better out there.  
Otherwise you'd be using that Other Better Build System [TM].


Cheers,
Brandon Van Every



More information about the CMake mailing list