Question about set

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

Question about set

Steven Truppe
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" ...


best regards!

--

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
https://cmake.org/mailman/listinfo/cmake
Reply | Threaded
Open this post in threaded view
|

Re: Question about set

Andreas Naumann
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 [hidden email]:
> 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" ...
>
>
> best regards!
>

--

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
https://cmake.org/mailman/listinfo/cmake
Reply | Threaded
Open this post in threaded view
|

Re: Question about set

CMake mailing list
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 [hidden email]:
> >
> > 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
--

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
https://cmake.org/mailman/listinfo/cmake
Reply | Threaded
Open this post in threaded view
|

Re: Question about set

Steven Truppe
I need it for an INTERNAL variable, for the different android
architecture types that are supported. so he can only set one of the
available arch types.


On 18.02.19 18:16, Kyle Edwards wrote:

> 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 [hidden email]:
>>> 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
>
--

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
https://cmake.org/mailman/listinfo/cmake
Reply | Threaded
Open this post in threaded view
|

Re: Question about set

Craig Scott-3
In reply to this post by CMake mailing list


On Tue, Feb 19, 2019 at 4:16 AM Kyle Edwards via CMake <[hidden email]> wrote:
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 [hidden email]:
> >
> > 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")
 
Note that this isn't an enforcing feature, only a convenience for CMake GUI and ccmake. It tells those tools what to show as selectable options for that cache variable, but you can still set the variable to anything you like via the cmake -D command line option or in the project itself.

--
Craig Scott
Melbourne, Australia

Get the hand-book for every CMake user: Professional CMake: A Practical Guide

--

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
https://cmake.org/mailman/listinfo/cmake
Reply | Threaded
Open this post in threaded view
|

Re: Question about set

Steven Truppe

Thank you.

On 18.02.19 21:46, Craig Scott wrote:


On Tue, Feb 19, 2019 at 4:16 AM Kyle Edwards via CMake <[hidden email]> wrote:
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 [hidden email]:
> >
> > 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")
 
Note that this isn't an enforcing feature, only a convenience for CMake GUI and ccmake. It tells those tools what to show as selectable options for that cache variable, but you can still set the variable to anything you like via the cmake -D command line option or in the project itself.

--
Craig Scott
Melbourne, Australia

Get the hand-book for every CMake user: Professional CMake: A Practical Guide


--

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
https://cmake.org/mailman/listinfo/cmake