-
Notifications
You must be signed in to change notification settings - Fork 26
/
CMakePresets.json
86 lines (86 loc) · 2.44 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
{
"version": 3,
"cmakeMinimumRequired": {
"major": 3,
"minor": 21
},
"configurePresets": [
{
"name": "default",
"displayName": "Default (Release)",
"description": "Default preset for release build",
"inherits": [
"c23-release"
]
},
{
"name": "coverage-base",
"displayName": "Enable Coverage",
"description": "Using compilers: C = /usr/bin/clang, CXX = /usr/bin/clang++",
"hidden": true,
"cacheVariables": {
"CMAKE_C_COMPILER": "/usr/bin/clang",
"CMAKE_CXX_COMPILER": "/usr/bin/clang++",
"CMAKE_BUILD_TYPE": "Debug",
"CMAKE_C_FLAGS": "-fprofile-instr-generate -fcoverage-mapping"
},
"environment": {
"LLVM_PROFILE_FILE": "default_%p_%m.profraw"
}
},
{
"name": "c23",
"displayName": "C23 (Debug)",
"description": "Build with only C dependencies",
"binaryDir": "${sourceDir}/build",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "Debug"
}
},
{
"name": "c23-release",
"displayName": "C23 (Release)",
"description": "Build with only C dependencies",
"inherits": [
"c23"
],
"cacheVariables": {
"CMAKE_BUILD_TYPE": "Release"
}
},
{
"name": "c23-release-ci",
"displayName": "C23 (Release CI)",
"description": "Build with only C dependencies",
"inherits": [
"c23-release"
],
"cacheVariables": {
"ERROR_ON_WARNING": true
}
},
{
"name": "c23-coverage",
"displayName": "C23 (Debug Coverage)",
"description": "Build with only C dependencies",
"inherits": [
"c23",
"coverage-base"
]
}
],
"buildPresets": [
{
"name": "default",
"configurePreset": "default"
},
{
"name": "c23-coverage",
"configurePreset": "c23-coverage"
},
{
"name": "c23-release-ci",
"configurePreset": "c23-release-ci"
}
]
}