For large repository with many projects, dependencies and contributors, getting everything to work nicely is not an easy task. Standardization is the biggest issue. The idea behind `otto` is to get any project up and running with the tooling needed for a modern C or C++ codebase while requiring minimal cmake/makefile coding.
Code for `otto` is at github http://github.com/jainvishal/otto
Features in a nutshell:
- Encapsulate complexities of cmake in module files
- Very small and simple makefiles for end user projects
- Handle external dependencies between projects using
find_package
- Out of source compilation
- Support for installing both ‘release’ and ‘debug’ binaries and shared objects
- Support for installation target. The binaries can be installed with the command
make install
. - Automatic
version.h
generated files.