diff --git a/.gitignore b/.gitignore index f2588fb2..2e7db2d7 100644 --- a/.gitignore +++ b/.gitignore @@ -67,3 +67,4 @@ configure.sh /unittests/enum_escape/enum_escape /unittests/literal_true_false/literal_true_false /unittests/msexchange_noservice_wsdl/msexchange_noservice_wsdl +/build-* diff --git a/CMakePresets.json b/CMakePresets.json new file mode 100644 index 00000000..f29c7f93 --- /dev/null +++ b/CMakePresets.json @@ -0,0 +1,90 @@ +{ + "version": 5, + "configurePresets": [ + { + "name": "base", + "generator": "Ninja", + "binaryDir": "${sourceDir}/build-${presetName}", + "hidden": true, + "cacheVariables": { + "CMAKE_EXPORT_COMPILE_COMMANDS": "ON" + }, + "warnings": { + "uninitialized": true + }, + "errors": { + "dev": true + } + }, + { + "name": "static-base", + "hidden": true, + "generator": "Ninja", + "cacheVariables": { + "KDSoap_STATIC": "ON" + }, + "inherits": ["base"] + }, + { + "name": "dev", + "inherits": ["base"], + "cacheVariables": { + "CMAKE_BUILD_TYPE": "Debug", + "KDSoap_STATIC": "OFF", + "KDSoap_TESTS": "ON", + "KDSoap_EXAMPLES": "ON", + "KDSoap_QT6": "ON" + } + }, + { + "name": "dev-asan", + "inherits": ["dev"], + "cacheVariables": { + "ECM_ENABLE_SANITIZERS": "'address;undefined'" + } + }, + { + "name": "dev-static", + "inherits": ["dev"], + "cacheVariables": { + "KDSoap_STATIC": "ON" + } + }, + { + "name": "clazy", + "inherits": "dev", + "cacheVariables": { + "KDSoap_EXAMPLES": "OFF", + "KDSoap_TESTS": "OFF" + }, + "environment": { + "CXX": "clazy", + "CCACHE_DISABLE": "ON" + } + }, + { + "name": "release", + "inherits": "base", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "Release" + } + }, + { + "name": "release-static", + "inherits": ["release"], + "cacheVariables": { + "KDSoap_STATIC": "ON" + } + } + ], + "buildPresets": [ + { + "name": "clazy", + "configurePreset": "clazy", + "environment": { + "CLAZY_CHECKS": "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,no-skipped-base-method", + "CCACHE_DISABLE": "ON" + } + } + ] +} diff --git a/REUSE.toml b/REUSE.toml index 098fe992..4524a211 100644 --- a/REUSE.toml +++ b/REUSE.toml @@ -26,7 +26,7 @@ SPDX-License-Identifier = "MIT" #misc config files [[annotations]] -path = [".pre-commit-config.yaml", ".codespellrc", ".krazy", ".cmake-format.py", ".clang-format", ".clang-tidy", ".clazy", ".codedocs", ".gitignore", ".gitmodules", ".mdlrc", ".mdlrc.rb", ".pep8", ".pylintrc", "docs/api/Doxyfile.cmake", "distro/**", "REUSE.toml"] +path = ["CMakePresets.json", ".pre-commit-config.yaml", ".codespellrc", ".krazy", ".cmake-format.py", ".clang-format", ".clang-tidy", ".clazy", ".codedocs", ".gitignore", ".gitmodules", ".mdlrc", ".mdlrc.rb", ".pep8", ".pylintrc", "docs/api/Doxyfile.cmake", "distro/**", "REUSE.toml"] precedence = "aggregate" SPDX-FileCopyrightText = "Klarälvdalens Datakonsult AB, a KDAB Group company " SPDX-License-Identifier = "BSD-3-Clause"