{ "version": 6, "cmakeMinimumRequired": { "major": 3 }, "configurePresets": [ { "name": "base", "hidden": true, "generator": "Ninja", "binaryDir": "${sourceDir}/bin/${presetName}", "cacheVariables": { "CMAKE_EXPORT_COMPILE_COMMANDS": "ON" } }, { "name": "debug", "displayName": "Debug", "inherits": "base", "cacheVariables": { "CMAKE_BUILD_TYPE": "Debug", "CMAKE_CXX_FLAGS_DEBUG": "-g" } }, { "name": "debug-san", "displayName": "Debug + Sanitizers", "inherits": "base", "cacheVariables": { "CMAKE_BUILD_TYPE": "Debug", "CMAKE_CXX_FLAGS_DEBUG": "-g -fsanitize=address,undefined" } }, { "name": "release", "displayName": "Release", "inherits": "base", "cacheVariables": { "CMAKE_BUILD_TYPE": "Release", "CMAKE_CXX_FLAGS_RELEASE": "-O3 -march=native -flto" } }, { "name": "release-fast", "displayName": "Release (Ofast, non-conformant)", "inherits": "base", "cacheVariables": { "CMAKE_BUILD_TYPE": "Release", "CMAKE_CXX_FLAGS_RELEASE": "-Ofast -march=native -flto" } } ], "buildPresets": [ { "name": "debug", "displayName": "Build Debug", "configurePreset": "debug" }, { "name": "release", "displayName": "Build Release", "configurePreset": "release" } ] }