{ "version": 3, "cmakeMinimumRequired": { "major": 3, "minor": 19, "patch": 0 }, "configurePresets": [ { "name": "default", "displayName": "Default (Release)", "description": "Release build without sanitizers", "binaryDir": "${sourceDir}/build", "cacheVariables": { "CMAKE_BUILD_TYPE": "RelWithDebInfo" } }, { "name": "default-asan", "displayName": "Default (Release + ASan)", "description": "Release build with Address Sanitizer", "binaryDir": "${sourceDir}/build", "cacheVariables": { "CMAKE_BUILD_TYPE": "RelWithDebInfo", "CMAKE_CXX_FLAGS": "-fsanitize=address -fno-omit-frame-pointer", "CMAKE_C_FLAGS": "-fsanitize=address -fno-omit-frame-pointer", "CMAKE_EXE_LINKER_FLAGS": "-fsanitize=address", "CMAKE_SHARED_LINKER_FLAGS": "-fsanitize=address" } }, { "name": "debug", "displayName": "Debug (no ASan)", "description": "Debug build without sanitizers", "binaryDir": "${sourceDir}/build", "cacheVariables": { "CMAKE_BUILD_TYPE": "Debug" } }, { "name": "debug-asan", "displayName": "Debug (ASan)", "description": "Debug build with Address Sanitizer", "binaryDir": "${sourceDir}/build", "cacheVariables": { "CMAKE_BUILD_TYPE": "Debug", "CMAKE_CXX_FLAGS": "-fsanitize=address -fno-omit-frame-pointer", "CMAKE_C_FLAGS": "-fsanitize=address -fno-omit-frame-pointer", "CMAKE_EXE_LINKER_FLAGS": "-fsanitize=address", "CMAKE_SHARED_LINKER_FLAGS": "-fsanitize=address" } } ] }