Details
-
Bug
-
Resolution: Done
-
Not Evaluated
-
Qt Creator 4.6.2
-
-
fdccc542754bc5361b8391ecd3902a88a84ab3cf
Description
Hi,
Qt creator should populate the GUI-field with cache variables, even if configuration fails.
To understand:
Please run the following mini CMakeLists.txt in Qt Creator
cmake_minimum_required(VERSION 3.4) project(go) set(MONTH_INITIAL "Please specify a month") set(MONTH ${MONTH_INITIAL} CACHE STRING "Please specify month") set(MONTH_CHOICES "January" "February" "March" "April" "May" "June" "July" "August" "September" "October" "November" "December") set_property(CACHE MONTH PROPERTY STRINGS ${MONTH_CHOICES}) if (NOT MONTH IN_LIST MONTH_CHOICES) message(FATAL_ERROR "Specify MONTH. Must be one of ${MONTH_CHOICES}") endif() message("######## Month is set to ${MONTH}")
It will (correctly) fail with message:
CMake Error at CMakeLists.txt:14 (message): Specify MONTH. Must be one of January;February;March;April;May;June;July;August;September;October;November;December
But under Project Settings, we see that the field with CMake Cache Variables is empty
This should be improved!!
I would like to see the cache variable MONTH with value set to "Please specify a month" (which is the default via MONTH_INITIAL) and then if I click, I want to get a drop-down with the possible choices: "January", "February", etc.
The command
grep -r MONTH .
shows the following
./CMakeCache.txt:MONTH:STRING=Please specify a month ./CMakeCache.txt://STRINGS property for variable: MONTH ./CMakeCache.txt:MONTH-STRINGS:INTERNAL=January;February;March;April;May;June;July;August;September;October;November;December
So all the information is there, even if Configuration failed. It should be displayed in the field.
PS: cmake-gui has exactly this desired behaviour:
cmake-gui /path/to/top # then click bottom-left Configure button and choose any Generator and click Finish