{ "version": 6, "cmakeMinimumRequired": { "major": 3, "minor": 25, "patch": 0 }, "configurePresets": [ { "name": "clang-base", "hidden": true, "generator": "Ninja", "binaryDir": "${sourceDir}/build/${presetName}", "cacheVariables": { "CMAKE_CXX_COMPILER": "clang++", "CMAKE_EXPORT_COMPILE_COMMANDS": true, "BUILD_TESTING": true } }, { "name": "clang-debug", "displayName": "Clang + Ninja / Debug", "inherits": "clang-base", "cacheVariables": { "CMAKE_BUILD_TYPE": "Debug", "PRISM_SANITIZERS": false } }, { "name": "clang-release", "displayName": "Clang + Ninja / Release", "inherits": "clang-base", "cacheVariables": { "CMAKE_BUILD_TYPE": "Release", "PRISM_SANITIZERS": false } }, { "name": "clang-sanitize", "displayName": "Clang + Ninja / Address + Undefined Behavior Sanitizers", "inherits": "clang-debug", "cacheVariables": { "PRISM_SANITIZERS": true } } ], "buildPresets": [ { "name": "clang-debug", "configurePreset": "clang-debug" }, { "name": "clang-release", "configurePreset": "clang-release" }, { "name": "clang-sanitize", "configurePreset": "clang-sanitize" } ], "testPresets": [ { "name": "clang-debug", "configurePreset": "clang-debug", "output": { "outputOnFailure": true }, "execution": { "noTestsAction": "error" } }, { "name": "clang-release", "configurePreset": "clang-release", "output": { "outputOnFailure": true }, "execution": { "noTestsAction": "error" } }, { "name": "clang-sanitize", "configurePreset": "clang-sanitize", "output": { "outputOnFailure": true }, "execution": { "noTestsAction": "error" } } ] }