Share on Facebook Share on Twitter Email
Answers.com

CMake

 
Wikipedia: CMake
CMake
Developer(s) Andy Cedilnik, Bill Hoffman, Brad King, Ken Martin, Alexander Neundorf
Stable release 2.8.0 / 2009-11-13; 8 days ago
Operating system Cross-platform
Type Software development tools
License BSD License
Website http://www.cmake.org/

CMake is a cross-platform system for build automation. The name is an abbreviation for "cross platform make"; despite the use of "make" in the name, CMake is a separate and higher-level application suite than the make system common to Unix development. It is comparable to the Unix GNU Autoconf system in that the build process is ultimately controlled by configuration files, in the case of CMake called CMakeLists.txt files. Like GNU Autoconf, it does not directly build the final software, but instead generates standard build files (e.g., makefiles on Unix and projects/workspaces in Windows Visual C++ or Eclipse CDT) which are used in the standard way, allowing an easier approach for developers familiar with a particular development environment. It is this use of the native build environment that distinguishes CMake from systems like Autoconf. CMake can compile source code, create libraries, generate wrappers, and build executables in arbitrary combinations. CMake supports in-place and out-of-place builds, and can therefore support multiple builds from a single source tree. CMake also supports static and dynamic library builds.

Contents

History

CMake was created in response to the need for a suitable cross-platform build environment for the Insight Segmentation and Registration Toolkit (ITK) funded by the United States National Library of Medicine as part of the Visible Human Project. It was influenced by an earlier system called pcmaker created by Ken Martin and other developers to support the Visualization Toolkit (VTK), an open-source 3D graphics and visualization system. To create CMake, Bill Hoffman at Kitware incorporated some key ideas from pcmaker, and added many more of his own, with the thought to adopt some of the functionality of the GNU build system. The initial CMake implementation was mid-2000, with accelerated development occurring in early 2001. Many improvements were due to the influences of other developers incorporating CMake into their own systems. For example, the VXL software community adopted CMake as their build environment, contributing many essential features. Brad King added several features in order to support CABLE and GCC-XML, a set of automated wrapping tools; and GE Corporate R&D required support of their testing infrastructure (DART). Other features were added to support the transition of VTK's build environment to CMake, and to support ParaView, a parallel visualization system to support the Advanced Computing Lab at Los Alamos National Laboratory.

Major features

Applications using CMake

See also

External links


Search unanswered questions...
Enter a question here...
Search: All sources Community Q&A Reference topics
 
 
Learn More
CPack
Kitware
Cook (software)

Does hept-cmake youpositive for cocaine? Read answer...

Help us answer these
How do you use CMake?

Post a question - any question - to the WikiAnswers community:

 

Copyrights:

Wikipedia. This article is licensed under the Creative Commons Attribution/Share-Alike License. It uses material from the Wikipedia article "CMake" Read more