I didn't want to start shitting on alternatives, but cmake is in my experience clearly the worst of all options.
It seems that more often than not, cmake setups work on the developer's own machine and nothing else. And the choice of undocumented "-DSOMETHING" is about as user hostile as it gets.
CMake is a clear better choice (it also sucks but it sucks waaaay less).