So, why not using cmake as build controller generator? It has many advantages:
- It can generate makefiles, MSVC projects, Codeblock projects, Eclipse projects, and many...
- It can configure the project in a tidy manner. For example, one can trigger an option to configure whether it builds a single-float or double-float version
- It is widely used by many people, like Ogre, OSG, Bullets, KDE. Thus it's robust and well-supported.
I'm using cmake for my C/C++ programs, and I felt it pretty good.

