rotgen/CMakePresets.json
2025-08-13 17:43:57 +02:00

113 lines
2.8 KiB
JSON

{
"version": 4,
"cmakeMinimumRequired": {
"major": 3,
"minor": 22,
"patch": 0
},
"configurePresets": [
{
"name": "clangd",
"displayName": "ClangD",
"description": "ClangD preset, provides compile_commands.json",
"generator": "Ninja",
"binaryDir": "${sourceDir}/build",
"cacheVariables": {
"CMAKE_EXPORT_COMPILE_COMMANDS": "ON",
"CMAKE_BUILD_TYPE": "Debug",
"CMAKE_CXX_COMPILER": "clang++",
"CMAKE_C_COMPILER": "clang",
"CMAKE_CXX_LINKER_LAUNCHER": "clang++",
"CMAKE_C_LINKER_LAUNCHER": "clang"
}
},
{
"name": "release",
"displayName": "Release",
"description": "Release build",
"generator": "Ninja",
"binaryDir": "${sourceDir}/build/release",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "RelWithDebInfo"
}
},
{
"name": "debug",
"inherits": "release",
"displayName": "Debug",
"description": "Debug build",
"binaryDir": "${sourceDir}/build/debug",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "Debug"
}
},
{
"name": "release-static",
"displayName": "Release (Static size)",
"description": "Release (Static size) build",
"generator": "Ninja",
"binaryDir": "${sourceDir}/build/release-static",
"cacheVariables": {
"ROTGEN_MAX_SIZE": "16"
}
},
{
"name": "debug-static",
"displayName": "Debug (Static size)",
"description": "Debug (Static size) build",
"generator": "Ninja",
"binaryDir": "${sourceDir}/build/debug-static",
"cacheVariables": {
"ROTGEN_MAX_SIZE": "16"
}
},
{
"name": "release-et",
"displayName": "Release (No Expr. Temp.)",
"description": "Release (No Expr. Temp.) build",
"generator": "Ninja",
"binaryDir": "${sourceDir}/build/release-et",
"cacheVariables": {
"ROTGEN_ENABLE_EXPRESSION_TEMPLATES": "ON",
"ROTGEN_MAX_SIZE": "16"
}
},
{
"name": "debug-et",
"displayName": "Debug (No Expr. Temp.)",
"description": "Debug (No Expr. Temp.) build",
"generator": "Ninja",
"binaryDir": "${sourceDir}/build/debug-et",
"cacheVariables": {
"ROTGEN_ENABLE_EXPRESSION_TEMPLATES": "ON",
"ROTGEN_MAX_SIZE": "16"
}
}
],
"buildPresets": [
{
"name": "release",
"configurePreset": "release"
},
{
"name": "release-static",
"configurePreset": "release-static"
},
{
"name": "release-et",
"configurePreset": "release-et"
},
{
"name": "debug",
"configurePreset": "debug"
},
{
"name": "debug-static",
"configurePreset": "debug-static"
},
{
"name": "debug-et",
"configurePreset": "debug-et"
}
]
}