[CMake] Question about set

Kyle Edwards kyle.edwards at kitware.com
Mon Feb 18 12:16:02 EST 2019


On Mon, 2019-02-18 at 17:59 +0100, Andreas Naumann wrote:
> Hey,
> 
> I would introduce a list with the allowed values and introduce a
> macro 
> "checked_set", which tests the setting or aborts.
> 
> Regards,
> Andreas"
> 
> Am 18.02.19 um 15:06 schrieb Workbench at gmx.at:
> > 
> > Hi everyone,
> > 
> > i've looked the web but found no result. I need a string variable
> > that 
> > allows only certain values, like bool variables only allow
> > true/false 
> > my string should be either "A" or "B" ...

Is this a cache variable or a regular variable? Cache variables have
this enum-like support in the form of the STRINGS property. Example:

set(MYSTRING "A" CACHE STRING "Documentation for the variable")
set_property(CACHE MYSTRING PROPERTY STRINGS "A;B")

If you need to do this with an ordinary variable, consider using
variable_watch().

Kyle


More information about the CMake mailing list