1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
|
{
"version": 3,
"configurePresets": [
{
"name": "debug",
"displayName": "Debug",
"description": "Debug build",
"binaryDir": "${sourceDir}/cmake-build-debug",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "Debug",
"CMAKE_EXPORT_COMPILE_COMMANDS": "ON",
"CMAKE_CXX_FLAGS": "-Wall -Wextra -Wpedantic -Werror=shadow -Werror=non-virtual-dtor",
"CMAKE_CXX_FLAGS_DEBUG": "-g -Og",
"CMAKE_CXX_STANDARD": "20",
"CMAKE_CXX_STANDARD_REQUIRED": "YES",
"CMAKE_CXX_COMPILER_LAUNCHER": "ccache",
"CMAKE_CXX_CLANG_TIDY": "clang-tidy",
"MEMORYCHECK_COMMAND": "valgrind",
"MEMORYCHECK_COMMAND_OPTIONS": "--leak-check=full --show-leak-kinds=all --gen-suppressions=all"
}
},
{
"name": "coverage",
"inherits": "debug",
"binaryDir": "${sourceDir}/cmake-build-coverage",
"cacheVariables": {
"BUILD_COVERAGE": "ON",
"CMAKE_CXX_CLANG_TIDY": ""
}
},
{
"name": "release",
"displayName": "Release",
"description": "Release build",
"binaryDir": "${sourceDir}/cmake-build-release",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "Release",
"CMAKE_EXPORT_COMPILE_COMMANDS": "ON",
"CMAKE_CXX_FLAGS": "-Wall -Wextra -Wpedantic -Wshadow -Werror=non-virtual-dtor",
"CMAKE_CXX_FLAGS_RELEASE": "-O2",
"CMAKE_CXX_STANDARD": "20",
"CMAKE_CXX_STANDARD_REQUIRED": "YES"
}
}
],
"buildPresets": [
{ "name": "debug", "configurePreset": "debug" },
{ "name": "release", "configurePreset": "release" }
],
"testPresets": [
{
"name": "debug",
"configurePreset": "debug",
"output": { "outputOnFailure": true },
"execution": { "stopOnFailure": false }
},
{
"name": "release",
"configurePreset": "release"
}
]
}
|