如何获取用 属性 STRINGS 定义的值集
How to get the set of values defined with PROPERTY STRINGS
CMake 允许将缓存条目限制为一组值。例如看
this link,引用:
set(BaseName "binary" CACHE STRING "BaseName chosen by the user at CMake configure time")
set_property(CACHE BaseName PROPERTY STRINGS binary octal decimal hexadecimal)
现在 cmake-gui 知道显示一个用于编辑 "BaseName" 缓存条目的下拉组合框。
问题是如何 'get' 用 PROPERTY STRINGS
定义的值集,以验证用户从命令行输入的(可能是错误的):
cmake -DBaseName:STRING=ValueNotInList -G "MSYS Makefiles" ..
就像 set_property()
, there's also get_property()
:
get_property(res CACHE BaseName PROPERTY STRINGS)
这会将变量 res
设置为 属性 的内容。
CMake 允许将缓存条目限制为一组值。例如看 this link,引用:
set(BaseName "binary" CACHE STRING "BaseName chosen by the user at CMake configure time")
set_property(CACHE BaseName PROPERTY STRINGS binary octal decimal hexadecimal)
现在 cmake-gui 知道显示一个用于编辑 "BaseName" 缓存条目的下拉组合框。
问题是如何 'get' 用 PROPERTY STRINGS
定义的值集,以验证用户从命令行输入的(可能是错误的):
cmake -DBaseName:STRING=ValueNotInList -G "MSYS Makefiles" ..
就像 set_property()
, there's also get_property()
:
get_property(res CACHE BaseName PROPERTY STRINGS)
这会将变量 res
设置为 属性 的内容。