yams/CMakePresets.json
2025-08-12 20:52:21 -04:00

217 lines
5.6 KiB
JSON

{
"version": 3,
"cmakeMinimumRequired": {
"major": 3,
"minor": 20,
"patch": 0
},
"configurePresets": [
{
"name": "base",
"hidden": true,
"cacheVariables": {
"CMAKE_EXPORT_COMPILE_COMMANDS": "ON"
}
},
{
"name": "ninja-debug",
"displayName": "Ninja Debug",
"description": "Configure with Ninja generator (Debug)",
"inherits": "base",
"generator": "Ninja",
"binaryDir": "${sourceDir}/build/${presetName}",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "Debug",
"YAMS_USE_CONAN": "OFF"
}
},
{
"name": "ninja-release",
"displayName": "Ninja Release",
"description": "Configure with Ninja generator (Release)",
"inherits": "base",
"generator": "Ninja",
"binaryDir": "${sourceDir}/build/${presetName}",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "Release",
"YAMS_USE_CONAN": "OFF"
}
},
{
"name": "make-debug",
"displayName": "Unix Makefiles Debug",
"description": "Configure with Unix Makefiles generator (Debug)",
"inherits": "base",
"generator": "Unix Makefiles",
"binaryDir": "${sourceDir}/build/${presetName}",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "Debug",
"YAMS_USE_CONAN": "OFF"
}
},
{
"name": "make-release",
"displayName": "Unix Makefiles Release",
"description": "Configure with Unix Makefiles generator (Release)",
"inherits": "base",
"generator": "Unix Makefiles",
"binaryDir": "${sourceDir}/build/${presetName}",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "Release",
"YAMS_USE_CONAN": "OFF"
}
},
{
"name": "conan-ninja-debug",
"displayName": "Conan + Ninja Debug",
"description": "Use Conan toolchain (expects conan_toolchain.cmake in this preset's build dir)",
"inherits": "base",
"generator": "Ninja",
"binaryDir": "${sourceDir}/build/${presetName}",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "Debug",
"CMAKE_TOOLCHAIN_FILE": "${sourceDir}/build/${presetName}/conan_toolchain.cmake",
"YAMS_USE_CONAN": "ON"
}
},
{
"name": "conan-ninja-release",
"displayName": "Conan + Ninja Release",
"description": "Use Conan toolchain (expects conan_toolchain.cmake in this preset's build dir)",
"inherits": "base",
"generator": "Ninja",
"binaryDir": "${sourceDir}/build/${presetName}",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "Release",
"CMAKE_TOOLCHAIN_FILE": "${sourceDir}/build/${presetName}/conan_toolchain.cmake",
"YAMS_USE_CONAN": "ON"
}
},
{
"name": "conan-make-debug",
"displayName": "Conan + Make Debug",
"description": "Use Conan toolchain (expects conan_toolchain.cmake in this preset's build dir)",
"inherits": "base",
"generator": "Unix Makefiles",
"binaryDir": "${sourceDir}/build/${presetName}",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "Debug",
"CMAKE_TOOLCHAIN_FILE": "${sourceDir}/build/${presetName}/conan_toolchain.cmake",
"YAMS_USE_CONAN": "ON"
}
},
{
"name": "conan-make-release",
"displayName": "Conan + Make Release",
"description": "Use Conan toolchain (expects conan_toolchain.cmake in this preset's build dir)",
"inherits": "base",
"generator": "Unix Makefiles",
"binaryDir": "${sourceDir}/build/${presetName}",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "Release",
"CMAKE_TOOLCHAIN_FILE": "${sourceDir}/build/${presetName}/conan_toolchain.cmake",
"YAMS_USE_CONAN": "ON"
}
}
],
"buildPresets": [
{
"name": "build-ninja-debug",
"configurePreset": "ninja-debug"
},
{
"name": "build-ninja-release",
"configurePreset": "ninja-release"
},
{
"name": "build-make-debug",
"configurePreset": "make-debug"
},
{
"name": "build-make-release",
"configurePreset": "make-release"
},
{
"name": "build-conan-ninja-debug",
"configurePreset": "conan-ninja-debug"
},
{
"name": "build-conan-ninja-release",
"configurePreset": "conan-ninja-release"
},
{
"name": "build-conan-make-debug",
"configurePreset": "conan-make-debug"
},
{
"name": "build-conan-make-release",
"configurePreset": "conan-make-release"
}
],
"testPresets": [
{
"name": "test-ninja-debug",
"configurePreset": "ninja-debug",
"output": {
"outputOnFailure": true
}
},
{
"name": "test-ninja-release",
"configurePreset": "ninja-release",
"output": {
"outputOnFailure": true
}
},
{
"name": "test-make-debug",
"configurePreset": "make-debug",
"output": {
"outputOnFailure": true
}
},
{
"name": "test-make-release",
"configurePreset": "make-release",
"output": {
"outputOnFailure": true
}
},
{
"name": "test-conan-ninja-debug",
"configurePreset": "conan-ninja-debug",
"output": {
"outputOnFailure": true
}
},
{
"name": "test-conan-ninja-release",
"configurePreset": "conan-ninja-release",
"output": {
"outputOnFailure": true
}
},
{
"name": "test-conan-make-debug",
"configurePreset": "conan-make-debug",
"output": {
"outputOnFailure": true
}
},
{
"name": "test-conan-make-release",
"configurePreset": "conan-make-release",
"output": {
"outputOnFailure": true
}
}
]
}