This repository is a template for CMake C++ Projects.
- gcc
- clang
Use this directory for all source files of the project.
Place libraries here. This directory is added to the include path.
Place any test-related sources here.
This script checks all *.cpp
and *.hpp
files for conformity with the file .clang-format
.
This script formats all *.cpp
and *.hpp
files in the src directory with clang format.
The files are changed by it!
This script generates version information files. It is called automatically when the target is built.
The name of the executable that is generated.
The minimum required C++ standard: 98, 03, 11, 14, 17, 20
The CPU architecture for which the code is generated.
It is only relevant if the option OPTIMIZE_FOR_ARCHITECTURE
is enabled.
Enables the automatic generation of a doxygen documentation.
Doxygen must be installed on the system and a Doxyfile.in
file must be provided.
An additional CMake target is created.
Enable/Disable compiler warnings. Should never be disabled by default!
Link the default multithreading library for the current target system.
Prefers pthread
if available.
Forces the compiler to generate a 32 bit application by setting the -m32
flag.
Enables the support for openmp.
Enables Optimization -O3
also in debug configuration.
Should only be enabled if the resulting binary is too slow.
Enable automatic formatting via clang-format. An additional CMake target is created.
Enable static code checks with clang tidy. An additional CMake target is created.
Enable interprocedural and link time optimizations.
Enable compiler specific C++ extensions. Should be disabled for reasons of portability.
Enable tests.