Details
-
Bug
-
Resolution: Fixed
-
Not Evaluated
-
Qt Creator 10.0.0
-
None
-
65a1637d6 (10.0)
Description
Transitive inheritance of generator, binary path, condition and CMake cache variables does not work properly. With this CMakePresets.json file
{ "version": 3, "configurePresets": [ { "name": "level 0", "binaryDir": "${sourceDir}/build/${presetName}", "generator": "Ninja Multi-Config", "hidden": true, "cacheVariables": { "FOO": "BAR" }, "condition": { "type": "const", "value": false } }, { "name": "level 1", "inherits": "level 0", "cacheVariables": { "BAR": "BAZ" } }, { "name": "level 2", "inherits": "level 1" } ] }
instead of not showing any preset, the level 2 preset is shown, and its generator and binary path use the default values instead of those specified in the "level 0" preset. Moreover, when configuring a project with the level 2 preset only the CMake cache variable BAR defined in the level 1 preset is set, but the FOO variable from the level 0 preset isn't.
I have not checked whether properties other than these 4 (e.g. env variables) are affected, too, but I suspect they are.