--- /dev/null
+{
+ "version": 2,
+ "configurePresets": [
+ {
+ "name": "dev",
+ "displayName": "Build as debug",
+ "generator": "Ninja",
+ "binaryDir": "${sourceDir}/build",
+ "cacheVariables": {
+ "CMAKE_BUILD_TYPE": "Debug",
+ "CMAKE_EXPORT_COMPILE_COMMANDS": "ON"
+ }
+ },
+ {
+ "name": "asan",
+ "displayName": "Build with Asan support.",
+ "generator": "Ninja",
+ "binaryDir": "${sourceDir}/build-asan",
+ "cacheVariables": {
+ "CMAKE_BUILD_TYPE": "Debug",
+ "ECM_ENABLE_SANITIZERS" : "'address;undefined'",
+ "CMAKE_EXPORT_COMPILE_COMMANDS": "ON"
+ }
+ },
+ {
+ "name": "unity",
+ "displayName": "Build with CMake unity support.",
+ "generator": "Ninja",
+ "binaryDir": "${sourceDir}/build-unity",
+ "cacheVariables": {
+ "CMAKE_BUILD_TYPE": "Debug",
+ "CMAKE_UNITY_BUILD": "ON",
+ "CMAKE_EXPORT_COMPILE_COMMANDS": "ON"
+ }
+ },
+ {
+ "name": "release",
+ "displayName": "Build as release mode.",
+ "generator": "Ninja",
+ "binaryDir": "${sourceDir}/build-release",
+ "cacheVariables": {
+ "CMAKE_BUILD_TYPE": "Release"
+ }
+ },
+ {
+ "name": "profile",
+ "displayName": "profile",
+ "generator": "Ninja",
+ "binaryDir": "${sourceDir}/build-profile",
+ "cacheVariables": {
+ "CMAKE_BUILD_TYPE": "RelWithDebInfo",
+ "CMAKE_EXPORT_COMPILE_COMMANDS": "ON"
+ }
+ },
+ {
+ "name": "clazy",
+ "displayName": "clazy",
+ "generator": "Ninja",
+ "binaryDir": "${sourceDir}/build-clazy",
+ "cacheVariables": {
+ "CMAKE_BUILD_TYPE": "Debug"
+ },
+ "environment": {
+ "CXX": "clazy",
+ "CCACHE_DISABLE": "ON"
+ }
+ }
+ ],
+ "buildPresets": [
+ {
+ "name": "dev",
+ "configurePreset": "dev"
+ },
+ {
+ "name": "clazy",
+ "configurePreset": "clazy",
+ "environment": {
+ "CLAZY_CHECKS" : "level0,level1,detaching-member,ifndef-define-typo,isempty-vs-count,qrequiredresult-candidates,reserve-candidates,signal-with-return-value,unneeded-cast,function-args-by-ref,function-args-by-value,returning-void-expression,no-ctor-missing-parent-argument,isempty-vs-count,qhash-with-char-pointer-key,raw-environment-function,qproperty-type-mismatch,old-style-connect,qstring-allocations,container-inside-loop,heap-allocated-small-trivial-type,inefficient-qlist,qstring-varargs,level2,detaching-member,heap-allocated-small-trivial-type,isempty-vs-count,qstring-varargs,qvariant-template-instantiation,raw-environment-function,reserve-candidates,signal-with-return-value,thread-with-slots,no-ctor-missing-parent-argument,no-missing-typeinfo",
+ "CCACHE_DISABLE" : "ON"
+ }
+ }
+ ]
+}