Version 1 (modified by 13 years ago) ( diff ) | ,
---|
Header Modularization
Goals/Objectives/Needs/Wants
- Single include path (-I...). Without a single include path, builds, IDE's, and other tools become unmanageable.
- Easy checkout, commit, merge, switch, and other source control operations.
- Works well regardless of build engine; remember that users don't all use bjam or CMake.
- Doesn't break users existing scripts, IDE setups, etc. OK to break developers and release managers scripts.
- Easy library subset creation.
- Minimizes developer mistakes like failure to merge, commit, all files that changed.
- All maintenance occurs withing the library's libs/... directory. (Subset of (6), but important enough to list separately.)
- Easy scripting (inspect, unmerged changes, release mgt, etc.) ((7) goes a long way to achieve this.)
- Works well with installers.
- Supports test-on-demand and test-library-against-other-branch.
Note:
See TracWiki
for help on using the wiki.