CMake is an open-source, cross-platform family of tools designed to build, test and package software. CMake is used to control the software compilation process using simple platform and compiler independent configuration files, and generate native makefiles and workspaces that can be used in the compiler environment of your choice. For a project like SOFA, which has many optional features and possible option combinations, being able to quickly test a modification on several typical setups on my machine before pushing a significant change to the repository is a very valuable security. This is especially true for a complex project like ours. We rely on CMake for HDF software being successfully built and tested on platforms that range from supercomputers to Windows desktops and tablets.
|Published (Last):||18 December 2009|
|PDF File Size:||2.46 Mb|
|ePub File Size:||20.75 Mb|
|Price:||Free* [*Free Regsitration Required]|
Unlike many cross-platform systems, CMake is designed to be used in conjunction with the native build environment. CMake can compile source code, create libraries, generate wrappers, and build executables in arbitrary combinations.
CMake supports in-source and out-of-source builds, and can therefore support multiple builds from a single source tree. CMake provides extensive support for building static and dynamic libraries. The internals of how CMake works and how it impacts your build scripts is covered. Instructions are provided for running the different GUIs including command line options and a separate chapter on using ctest included with CMake to perform software testing.
A full reference of CMake's commands and variables with descriptions is included. The build process is controlled by creating one or more CMakeLists. Each CMakeLists. CMake includes commands for finding libraries and header files, support for optional components of your software, testing the compiler and platform for specific features, and much more.
CMake provides many powerful pre-defined commands, but if you need to, you can even add your own commands using CMake's macro capabilities.
[CMake] "Mastering CMake": which cmake version?
Mastering CMake is Now Available on Amazon
[CMake] Are the poor reviews of Mastering CMake Justified?