From ea78026087a155ab34c9037f747ff627dac62fbd Mon Sep 17 00:00:00 2001 From: Anichitei Ionel-Cristinel <49393881+ianichitei@users.noreply.github.com> Date: Tue, 17 Sep 2024 14:22:08 +0300 Subject: [PATCH] Add `CMakePresets.json` It defines only configure presets to be used mostly by our CI. --- CMakePresets.json | 82 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 82 insertions(+) create mode 100644 CMakePresets.json diff --git a/CMakePresets.json b/CMakePresets.json new file mode 100644 index 0000000..fa94d58 --- /dev/null +++ b/CMakePresets.json @@ -0,0 +1,82 @@ +{ + "version": 3, + "cmakeMinimumRequired": { + "major": 3, + "minor": 20, + "patch": 0 + }, + "configurePresets": [ + { + "name": "common-options", + "hidden": true, + "description": "Common options shared by all configurations", + "binaryDir": "${sourceDir}/build/${presetName}" + }, + { + "name": "asan", + "inherits": "common-options", + "description": "Enables ASAN", + "cacheVariables": { + "BDD_ASAN": { + "type": "BOOL", + "value": "ON" + } + } + }, + { + "name": "ubsan", + "inherits": "common-options", + "description": "Enables UBSAN", + "cacheVariables": { + "BDD_UBSAN": { + "type": "BOOL", + "value": "ON" + } + } + }, + { + "name": "debug-sanitizers", + "inherits": ["asan", "ubsan"], + "description": "Debug build with ASAN and UBSAN", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "Debug" + } + }, + { + "name": "no-mnemonic", + "inherits": "common-options", + "description": "Excludes mnemonics", + "cacheVariables": { + "BDD_NO_MNEMONIC": { + "type": "BOOL", + "value": "ON" + } + } + }, + + { + "name": "debug", + "inherits": "common-options", + "description": "Debug build", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "Debug" + } + }, + { + "name": "release", + "inherits": "common-options", + "description": "Release build with LTO", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "Release", + "BDD_LTO": { + "type": "BOOL", + "value": "ON" + } + } + } + ], + "buildPresets": [ + ], + "testPresets": [ + ] +}