如何获取使用PROPERTY STRINGS定义的值集

时间:2015-01-19 08:15:10

标签: cmake

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”缓存条目。

问题是如何'获取'用PROPERTY STRINGS定义的值集,以便从命令行验证用户的(可能是错误的)输入:

cmake -DBaseName:STRING=ValueNotInList -G "MSYS Makefiles" ..

1 个答案:

答案 0 :(得分:1)

就像那里set_property()一样,还有get_property()

get_property(res CACHE BaseName PROPERTY STRINGS)

这会将变量res设置为属性的内容。