CMake (was More about x-packages)
Kai-Uwe Behrmann
ku.b at gmx.de
Sat Dec 22 01:09:17 PST 2007
More to the Cons:
Cmake is complicated or at least non intiutive to debug.
to elaborate:
One of the projects, I like to build, got backslashes in the final
compiler line. I could see them with cmake Verbose=1. Ok, cmake created a
Makefile. In a few second I hoped to find the line and all is ok. Opened
a Makefile and seen lots of cmake specific CMAKE_COMMAND and the
like calls. I did not expect this kind of nativeness in Makefile. At some
point I stalled the build due to lack of time to invest further.
CMake feels not like unix:
o no make uninstall target by default as with autotools
o no environment variables
o no config.site scripts(?)
o omitting the fun of posix scripting
The above sentences reflect my state of knowledge. Clearly from a pov of a
cmake outsider, as generaly most people for build tools are.
That, less people love libtool, does not automatic imply to omit autotools
completely and use cmake.
Cmake has the same disadvantage like autotools, to have a intermediate
step like libtool to hide many details. But want I'd want is to see
and being able to directly react to the details. A long search where some
options come from is a terrible wast of time.
For autotools based build systems I'd say, just omit libtool and stay with
the shell scripts and makefile combo. Put most host specifics into one
file by configure and include that in every Makefile. There are projects
out to work like this in an easy manner. Ok the autotools documentation
could be improved to better reflect alternative ways of utilisation.
A comparision using FLTK (fltk-1.1.x-r5989), which I enjoy to learn from
its clear build system:
CMake: 1min 18seconds
make: 1min 3seconds
That Make was quicker, is probably due to not compile the local zlib, png
and jpeg versions. But this are probably just 10 seconds. configure
detected the libs and omited automatically.
One question: What is the difference of installing Cmake in opposite to
MinGW in order to compile a software project?
kind regards
Kai-Uwe Behrmann
--
developing for colour management
www.behrmann.name + www.oyranos.org
More information about the xorg
mailing list