diff --git a/CMakePresets.json b/CMakePresets.json index 67fd674..9bea883 100644 --- a/CMakePresets.json +++ b/CMakePresets.json @@ -10,6 +10,14 @@ "WIBO_ENABLE_LIBURING": "ON" } }, + { + "name": "clang-base", + "hidden": true, + "cacheVariables": { + "CMAKE_C_COMPILER": "clang", + "CMAKE_CXX_COMPILER": "clang++" + } + }, { "name": "debug", "displayName": "Debug", @@ -27,6 +35,24 @@ "cacheVariables": { "CMAKE_BUILD_TYPE": "Release" } + }, + { + "name": "debug-clang", + "displayName": "Debug (Clang)", + "inherits": ["ninja-base", "clang-base"], + "binaryDir": "${sourceDir}/build/debug-clang", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "Debug" + } + }, + { + "name": "release-clang", + "displayName": "Release (Clang)", + "inherits": ["ninja-base", "clang-base"], + "binaryDir": "${sourceDir}/build/release-clang", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "Release" + } } ], "buildPresets": [ @@ -43,6 +69,20 @@ "configurePreset": "release", "targets": ["wibo", "wibo_test_fixtures"], "configuration": "Release" + }, + { + "name": "debug-clang", + "displayName": "Build (Debug, Clang)", + "configurePreset": "debug-clang", + "targets": ["wibo", "wibo_test_fixtures"], + "configuration": "Debug" + }, + { + "name": "release-clang", + "displayName": "Build (Release, Clang)", + "configurePreset": "release-clang", + "targets": ["wibo", "wibo_test_fixtures"], + "configuration": "Release" } ], "testPresets": [ @@ -65,6 +105,26 @@ "outputOnFailure": true, "shortProgress": true } + }, + { + "name": "fixtures-debug-clang", + "displayName": "Run fixture tests (Debug, Clang)", + "configurePreset": "debug-clang", + "configuration": "Debug", + "output": { + "outputOnFailure": true, + "shortProgress": true + } + }, + { + "name": "fixtures-release-clang", + "displayName": "Run fixture tests (Release, Clang)", + "configurePreset": "release-clang", + "configuration": "Release", + "output": { + "outputOnFailure": true, + "shortProgress": true + } } ] }