Version 3 (modified by 14 years ago) ( diff ) | ,
---|
CMake-Based Build System for Boost: Features
This page describes some of the features of a CMake-based build system for Boost. Some of the features come from CMake itself, some from the Boost-specific CMake macros.
- Configuration and user experience
- CMake is trivial to install on many platforms
- Automatically probes for compilers, supported libraries, and tools (e.g., no need to write a user-config.jam)
- Graphical CMake configuration makes customized builds easy
- Uses native build tools (e.g., Visual Studio, make, Xcode, Kdevelop) to build Boost
- Portability
- CMake works on a variety of platforms, many of which are tested nightly.
- CMake input files are platform-independent, high-level build descriptions.
- Deployment
- Complete support for installing from a build tree.
- Builds binary installers for Boost for a variety of platforms and formats (Mac OS X packages, Windows installers, RPMs, DEBs, etc.)
- Build system supports a modular Boost distribution, where libraries are self-contained subdirectories from which users can download and build a subset (in progress).
- Regression testing
- Complete regression-testing support using CTest
- Support for submitting regression testing results to a dashboard (CDash, Dart, Dart2; in progress: Bitten)
- Ability to build and run regression tests against an installed Boost tree.
- Maintainability
- CMake is open source (BSD license) and written in C++
- CMake is actively developed and maintained by Kitware, Inc.
- Other, large open-source projects (including KDE, VTK) use CMake for their build system
- The Boost-specific CMake modules are fully documented, both for Boost developers and with extensive comments within the build system itself
- The CMake system and language is well-documented online and in the CMake book
Note:
See TracWiki
for help on using the wiki.