Developer Tools

This page describes static and dynamic analysis tools used in the development of Kynema. These tools are run and must pass as part of the CI process, so it will likely become important for integration into a developer’s process.

clang-format

ClangFormat is used for linting to enforce a consistent code style. It can be installed with most package managers.

ClangFormat is configured by the .clang-format file at the top of the repository. If the tool is run from the top directory, it will automatically detect and load the settings in the configuration file.

clang-tidy

ClangTidy is another linting tool tool which enforces a variety of rules on the code in order to avoid common bugs.

ClangTidy is configure by the .clang-tidy file at the top of the repository. To run it, configure Kynema with the Kynema_ENABLE_CLANG_TIDY option.

Cppcheck

Cppcehck is yet another linting tools which detects undefined behavior and dangerous constructs with very few false positives.

To run Cppcheck, configure Kynema with the Kynema_ENABLE_CPPCHECK option.