set : 将一个 CMAKE 变量设置为给定值。
set( <variable> <value> [[CACHE <type> <docstring> [FORCE]] | PARENT_SCOPE])
将变量<variable>的值设置为<value>。在<variable>被设置之前,<value>会被展开。
如果有 CACHE 选项,那么<variable>就会添加到 cache 中;这时<type>和<docstring>是必需的。
<type>被 CMake GUI 用来选择一个窗口,让用户设置值。<type>可以是下述值中的一个:
FILEPATH = 文件选择对话框。
PATH = 路径选择对话框。
STRING = 任意的字符串。
BOOL = 布尔值选择复选框。
INTERNAL = 不需要 GUI 输入端。(适用于永久保存的变量)。
如果<type>是内部的(INTERNAL),那么<value>总是会被写入到 cache 中,并替换任何已经存在于 cache 中的值。
如果它不是一个 cache 变量,那么这个变量总是会写入到当前的makefile 中。FORCE 选项将覆盖 cache 值,从而去掉任何用户带来的改变。
如果指定了 PARENT_SCOPE 选项,变量<variable>将会被设置为当前作用域