cmake
I’m currently working on a cross platform project. The code is C++ and I’m going to be doing most of my development on the linux side but I need all of my compile scripts to be able to work on windows. After doing some googling and talking to people cmake seems to be what I’m going to go with.
My problem is that the documentation sucks. In fact even the example on the site did not work when I tried to download it (Update: Thanks for fixing this Bill). I was able to download the file but it seemed to be an empty tar.gz file.
So with a bit more googling I was able to create my own example. I know the KDE guys switched to cmake but thats about it. Anyone have any experience with cmake? How did it work out for you? Any better recommendations? Better sites for documentation?

Scribus switched 2 years or something ago.
Avogadro (avogadro.sf.net) uses it
OpenBabel (openbabel.sf.net) will most likely switch.
Have a look here:
http://www.cmake.org/Wiki/CMake_Projects
Btw, CMake 2.6 will be out soon (rc6 or something like that is out) with many cool improvements over 2.4.
Works great for me, I been using it on a uni project that’s cross platform (Windows and Linux) and I have had no problems with it at all. My use of it is pretty simple though.
I agree the documentation isn’t great, but its enough with examples.
FTR, the Compiz Fusion guys are also in the process of switching to cmake: http://dev.compiz-fusion.org/~onestone/blog/?p=4
Did you take a look at waf: http://code.google.com/p/waf/ ?
So does anyone have any more complicated examples than the ones I posted?
@Ali Sabil, looks neat and I love the idea, just worried about its use, I would rather use a larger more tested build system. But I will for sure give it a go for smaller projects.
Also do many people use the built in testing for cmake?
I’m not overly fond of CMake, but I do like scons [http://www.scons.org/] for cross platform builds. It brings the full power of python to the build process. The only drawback is that everyone needs python installed to do a build. Scons also has much better docs, and if you’re already comfortable with python then you’re away
@Kevin McGuinness, what dont you like about cmake?
I also used cmake for a cross-platform university project, and it worked well. Documentation indeed sucks and I have learned it by trial and error and by looking at examples (mostly in KDE). Of course you may ask in #cmake for help
Have fun!
@earobinson,
It’s a couple of things; most of them are just personal preference. CMake generates a lot of files and caches, which kinda annoys me when I’m using it in conjunction with an IDE or source control – just a bit messy. I also dislike the macro syntax: it’s confusing and poorly documented.
I suppose i just find cmake somewhat inelegant.
@Kevin McGuinness I know what you mean about the caches at least svn puts them all in a .svn folder cmakes seem to be all over the place I do really hate that.
You might want to look at the tutorial examples that are from the mastering cmake book, they are included in the tests for CMake, and can be browsed online here:
http://www.cmake.org/cgi-bin/viewcvs.cgi/Tests/Tutorial/?root=CMake
You can also download them inside the source tar ball for CMake itself.
I did not realize the example tar file was bad, and will fix it, thanks for pointing it out.
As for cache files and extra stuff, please use out of source builds, it is much cleaner that way.
@Bill Hoffman Thanks, I look into the tutorials and the example works now.
I’m glad to know I’m not the only one who finds CMake documentation lacking. I just started doing research on it.