179179 "cacheVariables" : { "CMAKE_BUILD_TYPE" : " Debug" }
180180 },
181181
182- {
183- "name" : " linux-clang-release-asan" ,
184- "displayName" : " Linux Clang Release (ASan)" ,
185- "description" : " Linux/WSL Clang Release,启用 Address Sanitizer" ,
186- "inherits" : [ " linux-clang-base" , " linux-asan-base" ],
187- "cacheVariables" : { "CMAKE_BUILD_TYPE" : " Release" }
188- },
189- {
190- "name" : " linux-clang-release-tsan" ,
191- "displayName" : " Linux Clang Release (TSan)" ,
192- "description" : " Linux/WSL Clang Release,启用 Thread Sanitizer" ,
193- "inherits" : [ " linux-clang-base" , " linux-tsan-base" ],
194- "cacheVariables" : { "CMAKE_BUILD_TYPE" : " Release" }
195- },
196-
197182 {
198183 "name" : " linux-clang-debug" ,
199184 "displayName" : " Linux Clang Debug" ,
205190 "displayName" : " Linux Clang Release" ,
206191 "inherits" : " linux-clang-base" ,
207192 "cacheVariables" : { "CMAKE_BUILD_TYPE" : " Release" }
193+ },
194+ {
195+ "name" : " linux-clang-relwithstack" ,
196+ "displayName" : " Linux Clang RelWithPerf " ,
197+ "description" : " Release 优化级别,但保留调试符号和完整的调用堆栈。" ,
198+ "inherits" : " linux-clang-base" ,
199+ "cacheVariables" : {
200+ "CMAKE_BUILD_TYPE" : " Release" ,
201+ "CMAKE_CXX_FLAGS" : " -O3 -g -fno-omit-frame-pointer $env{CMAKE_CXX_FLAGS}" ,
202+ "CMAKE_C_FLAGS" : " -O3 -g -fno-omit-frame-pointer $env{CMAKE_C_FLAGS}"
203+ }
204+ },
205+ {
206+ "name" : " linux-clang-relwithstack-tsan" ,
207+ "displayName" : " Linux Clang RelWithPerf (TSAN)" ,
208+ "description" : " Release 优化级别,但保留调试符号和完整的调用堆栈,启用 Thread Sanitizer" ,
209+ "inherits" : [ " linux-clang-base" , " linux-tsan-base" ],
210+ "cacheVariables" : {
211+ "CMAKE_BUILD_TYPE" : " Release" ,
212+ "CMAKE_CXX_FLAGS" : " -O3 -g -fsanitize=thread -fno-omit-frame-pointer $env{CMAKE_CXX_FLAGS}" ,
213+ "CMAKE_C_FLAGS" : " -O3 -g -fsanitize=thread -fno-omit-frame-pointer $env{CMAKE_C_FLAGS}"
214+ }
215+ },
216+ {
217+ "name" : " linux-clang-relwithstack-asan" ,
218+ "displayName" : " Linux Clang RelWithPerf (ASAN)" ,
219+ "description" : " Release 优化级别,但保留调试符号和完整的调用堆栈,启用 Address Sanitizer" ,
220+ "inherits" : [ " linux-clang-base" , " linux-asan-base" ],
221+ "cacheVariables" : {
222+ "CMAKE_BUILD_TYPE" : " Release" ,
223+ "CMAKE_CXX_FLAGS" : " -O3 -g -fsanitize=address -fno-omit-frame-pointer $env{CMAKE_CXX_FLAGS}" ,
224+ "CMAKE_C_FLAGS" : " -O3 -g -fsanitize=address -fno-omit-frame-pointer $env{CMAKE_C_FLAGS}"
225+ }
208226 }
209-
210227 ],
211228
212229 "buildPresets" : [
219236 "configurePreset" : " linux-clang-release"
220237 },
221238 {
222- "name" : " linux-clang-release -asan" ,
223- "configurePreset" : " linux-clang-release -asan"
239+ "name" : " linux-clang-relwithstack -asan" ,
240+ "configurePreset" : " linux-clang-relwithstack -asan"
224241 },
225242 {
226- "name" : " linux-clang-release -tsan" ,
227- "configurePreset" : " linux-clang-release -tsan"
243+ "name" : " linux-clang-relwithstack -tsan" ,
244+ "configurePreset" : " linux-clang-relwithstack -tsan"
228245 },
229246 {
230247 "name" : " msvc-x64-release" ,
231248 "configurePreset" : " msvc-x64-release"
249+ },
250+ {
251+ "name" : " linux-clang-relwithstack" ,
252+ "configurePreset" : " linux-clang-relwithstack"
232253 }
233254 ]
234255}
0 commit comments