-
Notifications
You must be signed in to change notification settings - Fork 0
/
CMakePresets.json
120 lines (120 loc) · 2.91 KB
/
CMakePresets.json
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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
{
"version": 2,
"cmakeMinimumRequired": {
"major": 3,
"minor": 20,
"patch": 0
},
"configurePresets": [
{
"name": "default",
"description": "Build configuration using Ninja Multi-config",
"generator": "Ninja Multi-Config",
"binaryDir": "${sourceDir}/out/default",
"cacheVariables": {
"CMAKE_EXPORT_COMPILE_COMMANDS": "ON"
}
},
{
"name": "ninja-clang",
"description": "Build configuration using Ninja Multi-config / clang",
"inherits": "default",
"binaryDir": "${sourceDir}/out/clang",
"cacheVariables": {
"CMAKE_C_COMPILER": "clang",
"CMAKE_CXX_COMPILER": "clang++"
}
},
{
"name": "ninja-ubsan",
"description": "UBSan build configuration using Ninja Multi-config",
"inherits": "default",
"binaryDir": "${sourceDir}/out/ubsan",
"cacheVariables": {
"CMAKE_CXX_FLAGS": "-fsanitize=undefined"
}
},
{
"name": "ninja-asan",
"description": "ASan build configuration using Ninja Multi-config",
"inherits": "ninja-ubsan",
"binaryDir": "${sourceDir}/out/asan",
"cacheVariables": {
"CMAKE_CXX_FLAGS": "-fsanitize=address -O1"
}
},
{
"name": "ninja-tsan",
"inherits": "ninja-ubsan",
"description": "TSan build configuration using Ninja Multi-config",
"binaryDir": "${sourceDir}/out/tsan",
"cacheVariables": {
"CMAKE_CXX_FLAGS": "-fsanitize=thread -O1"
}
},
{
"name": "vs22",
"description": "Build configuration using Visual Studio 17 (2022)",
"generator": "Visual Studio 17 2022",
"binaryDir": "${sourceDir}/out/vs",
"architecture": {
"value": "x64",
"strategy": "external"
}
}
],
"buildPresets": [
{
"name": "Debug",
"configurePreset": "default",
"configuration": "Debug"
},
{
"name": "Release",
"configurePreset": "default",
"configuration": "Release"
},
{
"name": "RelWithDebInfo",
"configurePreset": "default",
"configuration": "RelWithDebInfo"
},
{
"name": "UBSan-Debug",
"configurePreset": "ninja-ubsan",
"configuration": "Debug"
},
{
"name": "ASan-Debug",
"configurePreset": "ninja-asan",
"configuration": "Debug"
}
],
"testPresets": [
{
"name": "Debug",
"configurePreset": "default",
"configuration": "Debug"
},
{
"name": "Release",
"configurePreset": "default",
"configuration": "Release"
},
{
"name": "RelWithDebInfo",
"configurePreset": "default",
"configuration": "RelWithDebInfo"
},
{
"name": "UBSan Debug",
"configurePreset": "ninja-ubsan",
"configuration": "Debug"
},
{
"name": "ASan Debug",
"configurePreset": "ninja-asan",
"configuration": "Debug"
}
]
}