Hi, Am Mittwoch 05 Juli 2006 09:01 schrieb Sagnes, Frederic: > Hello, > > I'm getting used to CMake to build a cross platform project on Windows and > Linux, and it really seems to be quite powerful. But the documentation > provided on the website is really minimalist, rough (no topics, no real > examples ...) and incomplete (no summary of all internal variables and > their meanings, some commands are not clearly described ...). I'm really > feeling like I'm missing a big part of the magic behind CMake. We could > buy the book, but I'm working in a corporate environment and it would > take weeks until I get it.
Please check also the cmake wiki and FAQ. There are also many examples in vtk, itk and KDE 4 svn ( http://websvn.kde.org/trunk/KDE/ ) > Did I miss something or the only available documentation is the > command-line generated one, the FAQ and the Wiki? > > Here are a few question I couldn't answer by reading the documentation: > * How can I be sure to link statically on Unix when using the > FIND_LIBRARY primitive? > * How can I raise an error message and stop the generation (when > a library I'm depending on is not available for instance) MESSAGE(FATAL_ERROR "game over") > * Can I use an > intern variable so that CMake can automatically raise the compiler error > checking level (like CMAKE_CXX_WARNING_LEVEL for Visual Studio), and add > for instance -Wall and -pedantic to the GCC command line? See the flags below. You can also check if (MSVC) and if (CMAKE_COMPILER_IS_GNUCXX) to test for the compiler in cmake. > * How does CMake > handle release/debug profiles with Unix Makefile generator? You can set CMAKE_BUILD_TYPE e.g. to DEBUG or RELEASE, and then the specific compile flags will be used: set(CMAKE_CXX_FLAGS_RELEASE "-O2") set(CMAKE_CXX_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline") set(CMAKE_C_FLAGS_RELEASE "-O2") set(CMAKE_C_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline") Bye Alex -- Der GMX SmartSurfer hilft bis zu 70% Ihrer Onlinekosten zu sparen! Ideal für Modem und ISDN: http://www.gmx.net/de/go/smartsurfer _______________________________________________ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake