| { | |
| "version": 2, | |
| "cmakeMinimumRequired": { | |
| "major": 3, | |
| "minor": 10, | |
| "patch": 0 | |
| }, | |
| "configurePresets": [ | |
| { | |
| "name": "release", | |
| "displayName": "Release build config", | |
| "cacheVariables": { | |
| "STRIP_BINARIES": "OFF" | |
| }, | |
| "generator": "Unix Makefiles", | |
| "binaryDir": "${sourceDir}/build/release" | |
| }, | |
| { | |
| "name": "dev-release", | |
| "displayName": "Default development optimized build config", | |
| "cacheVariables": { | |
| "LEAN_EXTRA_CXX_FLAGS": "-g3", | |
| "LEANC_EXTRA_CC_FLAGS": "-g3", | |
| "STRIP_BINARIES": "OFF", | |
| "WFAIL": "OFF" | |
| }, | |
| "generator": "Unix Makefiles", | |
| "binaryDir": "${sourceDir}/build/release" | |
| }, | |
| { | |
| "name": "debug", | |
| "displayName": "Debug build config", | |
| "cacheVariables": { | |
| "CMAKE_BUILD_TYPE": "Debug", | |
| "LEAN_EXTRA_CXX_FLAGS": "-g3 -DLEAN_DEFAULT_THREAD_STACK_SIZE=16*1024*1024", | |
| "LEANC_EXTRA_CC_FLAGS": "-g3", | |
| "STRIP_BINARIES": "OFF" | |
| }, | |
| "generator": "Unix Makefiles", | |
| "binaryDir": "${sourceDir}/build/debug" | |
| }, | |
| { | |
| "name": "relwithassert", | |
| "displayName": "Release with assertions enabled", | |
| "cacheVariables": { | |
| "CMAKE_BUILD_TYPE": "RelWithAssert", | |
| "STRIP_BINARIES": "OFF" | |
| }, | |
| "generator": "Unix Makefiles", | |
| "binaryDir": "${sourceDir}/build/relwithassert" | |
| }, | |
| { | |
| "name": "sanitize", | |
| "displayName": "Sanitize build config", | |
| "cacheVariables": { | |
| "LEAN_EXTRA_CXX_FLAGS": "-g3 -fsanitize=address,undefined -DLEAN_DEFAULT_THREAD_STACK_SIZE=16*1024*1024", | |
| "LEANC_EXTRA_CC_FLAGS": "-g3 -fsanitize=address,undefined", | |
| "LEAN_EXTRA_LINKER_FLAGS": "-fsanitize=address,undefined -fsanitize-link-c++-runtime -fuse-ld=lld", | |
| "STRIP_BINARIES": "OFF", | |
| "USE_MIMALLOC": "OFF", | |
| "BSYMBOLIC": "OFF", | |
| "LEAN_TEST_VARS": "MAIN_STACK_SIZE=16000 TEST_STACK_SIZE=16000 LSAN_OPTIONS=max_leaks=10" | |
| }, | |
| "generator": "Unix Makefiles", | |
| "binaryDir": "${sourceDir}/build/sanitize" | |
| }, | |
| { | |
| "name": "sanitize-thread", | |
| "displayName": "Thread Sanitize build config", | |
| "cacheVariables": { | |
| "LEAN_EXTRA_CXX_FLAGS": "-g3 -fsanitize=thread", | |
| "LEANC_EXTRA_CC_FLAGS": "-g3 -fsanitize=thread", | |
| "LEAN_EXTRA_LINKER_FLAGS": "-fsanitize=thread -fuse-ld=lld", | |
| "STRIP_BINARIES": "OFF", | |
| "SMALL_ALLOCATOR": "OFF", | |
| "USE_MIMALLOC": "OFF", | |
| "BSYMBOLIC": "OFF" | |
| }, | |
| "generator": "Unix Makefiles", | |
| "binaryDir": "${sourceDir}/build/sanitize-thread" | |
| }, | |
| { | |
| "name": "sandebug", | |
| "inherits": ["sanitize", "debug"], | |
| "displayName": "Sanitize+debug build config", | |
| "binaryDir": "${sourceDir}/build/sandebug" | |
| } | |
| ], | |
| "buildPresets": [ | |
| { | |
| "name": "release", | |
| "configurePreset": "release" | |
| }, | |
| { | |
| "name": "dev-release", | |
| "configurePreset": "dev-release" | |
| }, | |
| { | |
| "name": "debug", | |
| "configurePreset": "debug" | |
| }, | |
| { | |
| "name": "relwithassert", | |
| "configurePreset": "relwithassert" | |
| }, | |
| { | |
| "name": "sanitize", | |
| "configurePreset": "sanitize" | |
| }, | |
| { | |
| "name": "sandebug", | |
| "configurePreset": "sandebug" | |
| } | |
| ], | |
| "testPresets": [ | |
| { | |
| "name": "release", | |
| "configurePreset": "release", | |
| "output": {"outputOnFailure": true, "shortProgress": true} | |
| }, | |
| { | |
| "name": "dev-release", | |
| "configurePreset": "dev-release", | |
| "output": {"outputOnFailure": true, "shortProgress": true} | |
| }, | |
| { | |
| "name": "debug", | |
| "configurePreset": "debug", | |
| "inherits": "release" | |
| }, | |
| { | |
| "name": "relwithassert", | |
| "configurePreset": "relwithassert", | |
| "inherits": "release" | |
| }, | |
| { | |
| "name": "sanitize", | |
| "configurePreset": "sanitize", | |
| "inherits": "release" | |
| }, | |
| { | |
| "name": "sanitize-thread", | |
| "configurePreset": "sanitize-thread", | |
| "inherits": "release" | |
| }, | |
| { | |
| "name": "sandebug", | |
| "configurePreset": "sandebug", | |
| "inherits": "release" | |
| } | |
| ] | |
| } |