92 lines
2.9 KiB
JSON
92 lines
2.9 KiB
JSON
{
|
|
"version": 5,
|
|
"cmakeMinimumRequired": {
|
|
"major": 3,
|
|
"minor": 24,
|
|
"patch": 0
|
|
},
|
|
"configurePresets": [
|
|
{
|
|
"name": "linux-debug",
|
|
"displayName": "Linux Debug",
|
|
"generator": "Ninja",
|
|
"binaryDir": "${sourceDir}/build/debug",
|
|
"cacheVariables": {
|
|
"CMAKE_BUILD_TYPE": "Debug",
|
|
"PLOT_BUILD_GLFW": true,
|
|
"PLOT_BUILD_IMGUI": true,
|
|
"PLOT_BUILD_EXAMPLES": true,
|
|
"PLOT_BUILD_QT6": true,
|
|
"PLOT_BUILD_GTK4": true
|
|
}
|
|
},
|
|
{
|
|
"name": "linux-release",
|
|
"displayName": "Linux Release",
|
|
"description": "Release artifact for install: PLOT_BUILD_TESTS is OFF so the installed libplot_core.a carries none of the test-only counter instrumentation (PLOT_PYRAMID_COUNT_*, PLOT_RING_STATS). The suite runs in linux-debug and linux-asan.",
|
|
"generator": "Ninja",
|
|
"binaryDir": "${sourceDir}/build/release",
|
|
"cacheVariables": {
|
|
"CMAKE_BUILD_TYPE": "Release",
|
|
"PLOT_BUILD_TESTS": false,
|
|
"PLOT_BUILD_GLFW": true,
|
|
"PLOT_BUILD_IMGUI": true,
|
|
"PLOT_BUILD_EXAMPLES": true,
|
|
"PLOT_BUILD_QT6": true,
|
|
"PLOT_BUILD_GTK4": true
|
|
}
|
|
},
|
|
{
|
|
"name": "linux-asan",
|
|
"displayName": "Linux Debug (AddressSanitizer)",
|
|
"generator": "Ninja",
|
|
"binaryDir": "${sourceDir}/build/asan",
|
|
"cacheVariables": {
|
|
"CMAKE_BUILD_TYPE": "Debug",
|
|
"PLOT_SANITIZE": "address",
|
|
"PLOT_BUILD_GLFW": true,
|
|
"PLOT_BUILD_IMGUI": true,
|
|
"PLOT_BUILD_QT6": true,
|
|
"PLOT_BUILD_GTK4": true
|
|
}
|
|
},
|
|
{
|
|
"name": "linux-coverage",
|
|
"displayName": "Linux Debug (code coverage)",
|
|
"description": "The instrumented tree behind tools/coverage.sh: src/** compiled with --coverage -O0 -g (and linked with --coverage, so the test binary writes .gcda), built into build/cov. Adapters and examples stay off so the measurement is the library plus its unit suite and the build stays quick; PLOT_BUILD_TESTS=ON and PLOT_COVERAGE=ON are required, the latter adding the `coverage` target. Nothing here changes the other presets.",
|
|
"generator": "Ninja",
|
|
"binaryDir": "${sourceDir}/build/cov",
|
|
"cacheVariables": {
|
|
"CMAKE_BUILD_TYPE": "Debug",
|
|
"CMAKE_CXX_FLAGS": "--coverage -O0 -g",
|
|
"CMAKE_EXE_LINKER_FLAGS": "--coverage",
|
|
"PLOT_BUILD_TESTS": true,
|
|
"PLOT_COVERAGE": true,
|
|
"PLOT_BUILD_EXAMPLES": false,
|
|
"PLOT_BUILD_GLFW": false,
|
|
"PLOT_BUILD_IMGUI": false,
|
|
"PLOT_BUILD_QT6": false,
|
|
"PLOT_BUILD_GTK4": false
|
|
}
|
|
}
|
|
],
|
|
"buildPresets": [
|
|
{
|
|
"name": "linux-debug",
|
|
"configurePreset": "linux-debug"
|
|
},
|
|
{
|
|
"name": "linux-release",
|
|
"configurePreset": "linux-release"
|
|
},
|
|
{
|
|
"name": "linux-asan",
|
|
"configurePreset": "linux-asan"
|
|
},
|
|
{
|
|
"name": "linux-coverage",
|
|
"configurePreset": "linux-coverage"
|
|
}
|
|
]
|
|
}
|