67 lines
1.4 KiB
JSON
67 lines
1.4 KiB
JSON
{
|
|
"version": 6,
|
|
"configurePresets": [
|
|
{
|
|
"name": "base",
|
|
"hidden": true,
|
|
"generator": "Ninja",
|
|
"binaryDir": "${sourceDir}/build/${presetName}",
|
|
"cacheVariables": {
|
|
"CMAKE_EXPORT_COMPILE_COMMANDS": "ON"
|
|
}
|
|
},
|
|
{
|
|
"name": "debug",
|
|
"displayName": "Debug",
|
|
"inherits": "base",
|
|
"cacheVariables": {
|
|
"CMAKE_BUILD_TYPE": "Debug"
|
|
}
|
|
},
|
|
{
|
|
"name": "release",
|
|
"displayName": "Release (with debug info)",
|
|
"inherits": "base",
|
|
"cacheVariables": {
|
|
"CMAKE_BUILD_TYPE": "RelWithDebInfo"
|
|
}
|
|
},
|
|
{
|
|
"name": "asan",
|
|
"displayName": "Debug + AddressSanitizer/UBSan",
|
|
"inherits": "debug",
|
|
"cacheVariables": {
|
|
"CMAKE_CXX_FLAGS": "-fsanitize=address,undefined -fno-omit-frame-pointer",
|
|
"CMAKE_C_FLAGS": "-fsanitize=address,undefined -fno-omit-frame-pointer"
|
|
}
|
|
},
|
|
{
|
|
"name": "tsan",
|
|
"displayName": "Debug + ThreadSanitizer",
|
|
"inherits": "debug",
|
|
"cacheVariables": {
|
|
"CMAKE_CXX_FLAGS": "-fsanitize=thread",
|
|
"CMAKE_C_FLAGS": "-fsanitize=thread"
|
|
}
|
|
}
|
|
],
|
|
"buildPresets": [
|
|
{
|
|
"name": "debug",
|
|
"configurePreset": "debug"
|
|
},
|
|
{
|
|
"name": "release",
|
|
"configurePreset": "release"
|
|
},
|
|
{
|
|
"name": "asan",
|
|
"configurePreset": "asan"
|
|
},
|
|
{
|
|
"name": "tsan",
|
|
"configurePreset": "tsan"
|
|
}
|
|
]
|
|
}
|