Re: [CMake] Question about set

2019-02-18 Thread workbe...@gmx.at

Thank you.

On 18.02.19 21:46, Craig Scott wrote:



On Tue, Feb 19, 2019 at 4:16 AM Kyle Edwards via CMake 
mailto:cmake@cmake.org>> 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 workbe...@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")

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
https://crascit.com

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


Re: [CMake] Question about set

2019-02-18 Thread Craig Scott
On Tue, Feb 19, 2019 at 4:16 AM Kyle Edwards via CMake 
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 workbe...@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")
>

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
https://crascit.com

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


Re: [CMake] Question about set

2019-02-18 Thread workbe...@gmx.at
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 workbe...@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


--

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


Re: [CMake] Question about set

2019-02-18 Thread Kyle Edwards via CMake
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 workbe...@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
-- 

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


Re: [CMake] Question about set

2019-02-18 Thread 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 workbe...@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" ...



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