diff --git a/CMakePresets.json b/CMakePresets.json new file mode 100644 index 000000000..9820535db --- /dev/null +++ b/CMakePresets.json @@ -0,0 +1,81 @@ +{ + "version": 2, + "cmakeMinimumRequired": { + "major": 3, + "minor": 20, + "patch": 0 + }, + "configurePresets": [ + { + "name": "default", + "inherits": "service-debug", + "displayName": "Default (same as service-debug)" + }, + { + "name": "service-debug", + "displayName": "Debug Monado service", + "generator": "Ninja", + "binaryDir": "${sourceDir}/build", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "Debug", + "BUILD_DOC": "OFF", + "SANITIZE_ADDRESS": "ON", + "SANITIZE_UNDEFINED": "ON" + } + }, + { + "name": "standalone-debug", + "inherits": "service-debug", + "displayName": "Debug Monado standalone", + "cacheVariables": { + "XRT_FEATURE_SERVICE": "OFF" + } + }, + { + "name": "service-release", + "displayName": "Release Monado service", + "inherits": "service-debug", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "Release", + "BUILD_DOC": "ON", + "BUILD_DOC_EXTRACT_ALL": "ON", + "SANITIZE_ADDRESS": "OFF", + "SANITIZE_UNDEFINED": "OFF" + } + }, + { + "name": "standalone-release", + "displayName": "Release Monado standalone", + "inherits": "service-release", + "cacheVariables": { + "XRT_FEATURE_SERVICE": "OFF" + } + }, + { + "name": "service-debug-optimized", + "displayName": "Debug Monado service with optimizations", + "inherits": "service-debug", + "cacheVariables": { + "CMAKE_CXX_FLAGS": "-g -march=native -O3 -fno-omit-frame-pointer", + "CMAKE_C_FLAGS": "-g -march=native -O3 -fno-omit-frame-pointer", + "SANITIZE_UNDEFINED": "OFF" + } + }, + { + "name": "standalone-debug-optimized", + "displayName": "Debug Monado standalone with optimizations", + "inherits": "service-debug-optimized", + "cacheVariables": { + "XRT_FEATURE_SERVICE": "OFF" + } + } + ], + "buildPresets": [ + { + "name": "default", + "displayName": "Build and install", + "configurePreset": "default", + "targets": "install" + } + ] +} diff --git a/CMakePresets.json.license b/CMakePresets.json.license new file mode 100644 index 000000000..312455cd4 --- /dev/null +++ b/CMakePresets.json.license @@ -0,0 +1,2 @@ +SPDX-FileCopyrightText: 2022 Collabora, Ltd +SPDX-License-Identifier: CC0-1.0