{ "version": 3, "configurePresets": [ { "name": "debug", "displayName": "Debug", "description": "Debug build", "binaryDir": "${sourceDir}/cmake-build-debug", "cacheVariables": { "CMAKE_BUILD_TYPE": "Debug", "CMAKE_EXPORT_COMPILE_COMMANDS": "ON", "CMAKE_CXX_FLAGS": "-Wall -Wextra -Wpedantic -Werror=shadow -Werror=non-virtual-dtor", "CMAKE_CXX_FLAGS_DEBUG": "-g -Og", "CMAKE_CXX_STANDARD": "20", "CMAKE_CXX_STANDARD_REQUIRED": "YES", "CMAKE_CXX_CLANG_TIDY": "clang-tidy", "MEMORYCHECK_COMMAND": "valgrind", "MEMORYCHECK_COMMAND_OPTIONS": "--leak-check=full --show-leak-kinds=all --gen-suppressions=all" } }, { "name": "coverage", "inherits": "debug", "binaryDir": "${sourceDir}/cmake-build-coverage", "cacheVariables": { "BUILD_COVERAGE": "ON", "CMAKE_CXX_CLANG_TIDY": "" } }, { "name": "release", "displayName": "Release", "description": "Release build", "binaryDir": "${sourceDir}/cmake-build-release", "cacheVariables": { "CMAKE_BUILD_TYPE": "Release", "CMAKE_EXPORT_COMPILE_COMMANDS": "ON", "CMAKE_CXX_FLAGS": "-Wall -Wextra -Wpedantic -Wshadow -Werror=non-virtual-dtor", "CMAKE_CXX_FLAGS_RELEASE": "-O2", "CMAKE_CXX_STANDARD": "20", "CMAKE_CXX_STANDARD_REQUIRED": "YES" } } ], "buildPresets": [ { "name": "debug", "configurePreset": "debug" }, { "name": "release", "configurePreset": "release" } ], "testPresets": [ { "name": "debug", "configurePreset": "debug", "output": { "outputOnFailure": true }, "execution": { "stopOnFailure": false } }, { "name": "release", "configurePreset": "release" } ] }