CMakeCatchTemplate: A C++ template project

J Open Res Softw. 2021 Jul 16;9(1):17. doi: 10.5334/jors.319.

Abstract

CMakeCatchTemplate (https://github.com/MattClarkson/CMakeCatchTemplate) is a project to provide a starting structure for C++ projects configured with CMake, that can be customised to work in a variety of scenarios, allowing developers to deploy new algorithms to users in a shorter timeframe. Main features include a SuperBuild to build optional dependencies; unit tests using Catch; support for CUDA, OpenMP and MPI; examples of command line and GUI applications; Doxygen integration; Continuous Integration templates and support for building/deploying Python modules.

Keywords: C++; CMake; Project template; Scaffolding.