76 lines
2.2 KiB
JSON
76 lines
2.2 KiB
JSON
{
|
|
"version": 3,
|
|
"cmakeMinimumRequired": {
|
|
"major": 3,
|
|
"minor": 21,
|
|
"patch": 0
|
|
},
|
|
"configurePresets": [
|
|
{
|
|
"name": "cmake-pedantic",
|
|
"hidden": true,
|
|
"warnings": {
|
|
"dev": true,
|
|
"deprecated": true,
|
|
"unusedCli": true,
|
|
"systemVars": false
|
|
}
|
|
},
|
|
{
|
|
"name": "dev-mode",
|
|
"hidden": true,
|
|
"inherits": "cmake-pedantic",
|
|
"cacheVariables": {
|
|
"DRAMSYS_BUILD_TESTS": "ON",
|
|
"DRAMSYS_WITH_DRAMPOWER": "ON",
|
|
"DRAMSYS_BUILD_TRACE_ANALYZER": "ON"
|
|
}
|
|
},
|
|
{
|
|
"name": "std",
|
|
"description": "This preset makes sure the project actually builds with at least the specified standard",
|
|
"hidden": true,
|
|
"cacheVariables": {
|
|
"CMAKE_CXX_EXTENSIONS": "OFF",
|
|
"CMAKE_CXX_STANDARD": "17",
|
|
"CMAKE_CXX_STANDARD_REQUIRED": "ON"
|
|
}
|
|
},
|
|
{
|
|
"name": "ci-common",
|
|
"binaryDir": "${sourceDir}/build",
|
|
"inherits": [
|
|
"std",
|
|
"dev-mode"
|
|
],
|
|
"cacheVariables": {
|
|
"CMAKE_BUILD_TYPE": "Release"
|
|
}
|
|
},
|
|
{
|
|
"name": "ci-coverage",
|
|
"binaryDir": "${sourceDir}/build/coverage",
|
|
"inherits": "ci-common",
|
|
"cacheVariables": {
|
|
"DRAMSYS_ENABLE_COVERAGE": "ON",
|
|
"CMAKE_BUILD_TYPE": "Coverage",
|
|
"CMAKE_CXX_FLAGS_COVERAGE": "-Og -g --coverage -fkeep-static-functions",
|
|
"CMAKE_EXE_LINKER_FLAGS_COVERAGE": "--coverage",
|
|
"CMAKE_SHARED_LINKER_FLAGS_COVERAGE": "--coverage"
|
|
}
|
|
},
|
|
{
|
|
"name": "dev",
|
|
"binaryDir": "${sourceDir}/build",
|
|
"inherits": [
|
|
"dev-mode",
|
|
"std"
|
|
],
|
|
"cacheVariables": {
|
|
"CMAKE_BUILD_TYPE": "Debug",
|
|
"CMAKE_CXX_FLAGS": "-Wall -Wextra -Wpedantic -fdiagnostics-color=always"
|
|
}
|
|
}
|
|
]
|
|
}
|