{ "version": 3, "cmakeMinimumRequired": { "major": 3, "minor": 21, "patch": 0 }, "configurePresets": [ { "name": "default", "displayName": "Default (Release)", "binaryDir": "${sourceDir}/build/${presetName}", "cacheVariables": { "CMAKE_BUILD_TYPE": "Release" } }, { "name": "debug", "displayName": "Debug", "binaryDir": "${sourceDir}/build/${presetName}", "cacheVariables": { "CMAKE_BUILD_TYPE": "Debug" } }, { "name": "sanitize", "displayName": "Debug + Sanitizers (ASan + UBSan)", "binaryDir": "${sourceDir}/build/${presetName}", "cacheVariables": { "CMAKE_BUILD_TYPE": "Debug", "ABCMIDI_SANITIZERS": "ON" } } ], "buildPresets": [ { "name": "default", "configurePreset": "default" }, { "name": "debug", "configurePreset": "debug" }, { "name": "sanitize", "configurePreset": "sanitize" } ], "testPresets": [ { "name": "default", "configurePreset": "default", "output": { "outputOnFailure": true } }, { "name": "debug", "configurePreset": "debug", "output": { "outputOnFailure": true } }, { "name": "sanitize", "configurePreset": "sanitize", "output": { "outputOnFailure": true }, "environment": { "ASAN_OPTIONS": "abort_on_error=1:halt_on_error=1", "UBSAN_OPTIONS": "abort_on_error=1:halt_on_error=1:print_stacktrace=1" } } ] }