NA-MIC/Projects/NA-MIC Kit/CMake - NAMIC Kit Building
Back to NA-MIC_Collaborations
Name of Project
The purpose of CMake is to simplify cross-platform development of software, and to integrate NAMIC software into the software testing and quality process. For example. CMake coordinates with CTest (to test software) and CPack (to package software).
Description
CMake is a cross platform build tool that converts simple scripts called CMake list files into a set of files used by the native development environment to build (i.e., compile and link) the project. It does this across all combinations of hardware, operating system and compilers (each combination is called a platform) that are used in the NAMIC environment. CMake is the tool that makes it posssible for the NA-MIC Kit to run across multiple computer operating systems. CMake supports several advanced features including system inspection, shared library versioning, and parallel building of files. CMake helps integrate software development into the NAMIC quality process via the related CTest tool.
In Year 3, much of the effort built on last year's adoption of CMake by the KDE community (the world's largest open source software system). The resulting visibility led to significant increases in the size of the CMake community, as well as numerous contributions and bug reports. The following are highlights of the past year's effort.
- Improved Mac XCode support
- Extensions to CMake language (e.g., elseif construct, FILE_IS_NEWER to if command)
- Optimized speed / performance improvements
- Improved FindPackage.cmake modules (for example, Package is Qt3, Qt4)
- Better default search paths
- CPack integration and support
- Support for QNX platform
- Numerous bug fixes
Key Investigators
- Kitware: Andy Cedilnik, Bill Hoffman, Brad King, Ken Martin