| | 1 | = CMake-Based Build System for Boost: Features = |
| | 2 | |
| | 3 | 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. |
| | 4 | |
| | 5 | * Configuration |
| | 6 | * Automatically probes for supported libraries (e.g., no need to write a user-config.jam) |
| | 7 | |
| | 8 | * User experience |
| | 9 | * CMake is trivial to install on many platforms |
| | 10 | * Graphical CMake configuration makes customized builds easy |
| | 11 | * Uses native build tools (e.g., Visual Studio) to build Boost |
| | 12 | |
| | 13 | * Modularity |
| | 14 | * |
| | 15 | |
| | 16 | * Portability |
| | 17 | * |
| | 18 | |
| | 19 | * Deployment |
| | 20 | * Complete support for installing from a build tree |
| | 21 | * Builds [wiki:CMakeBinaryInstaller binary installers] for Boost for a variety of platforms and formats (Mac OS X packages, Windows installers, RPMs, DEBs, etc.) |
| | 22 | |
| | 23 | * Regression testing |
| | 24 | * Complete regression-testing support using CTest |
| | 25 | * Support for submitting regression testing results to a dashboard (CDash, Dart, Dart2) |
| | 26 | * Ability to build and run regression tests against an installed Boost tree |
| | 27 | |
| | 28 | * Maintainability |
| | 29 | * CMake is open source (BSD license) and written in C++ |
| | 30 | * CMake is actively developed and maintained by [http://www.kitware.com/ Kitware, Inc.] |
| | 31 | * Other, large open-source projects (including KDE, VTK) use CMake for their build system |
| | 32 | * The Boost-specific CMake modules are fully documented, both for Boost developers and with extensive comments within the build system itself |
| | 33 | |