Status
Travis-ci Build Status
Codecov Coverage Status codecov

Modern C++ project template

CMake based C++ project template for modern C++, i.e. C++11 and beyond

An example project which can be used as starting point for C++11/14/17 projects using cmake. It includes:

  • static code analysis integration with clang-tidy
  • Source code documentation using DoxyPress
  • A Dummy unittest using the Catch testing framework and the trompeloeil mocking framework.
  • A Dummy BDD Style (Gherkin) feature test using Cucumber and Cucumber-cpp
  • CMake targets to build, run tests and measure metrics.

Dependencies


Building the Project requires

  • a recent Version of CMake (3.6.x). See CMake documentation for more information about building using CMake.
  • a recent C++ compiler supporting C++14

The external dependencies are downloaded and built.

How to build


Linux You can use cmake to configure and build. E.g.

  • mkdir build && (cd build && cmake ../src)
  • cmake --build build --target all --config Debug