局部变量
set(my_variable "the value is a string")
默认情况下,只在当前目录中定义局部变量,并通过 add_subdirectory
命令添加任何子目录。
要扩展变量的范围,有两种可能性:
-
CACHE
it,这将使其全局可用 -
使用
PARENT_SCOPE
,这将使其在父范围内可用。父作用域是父目录中的CMakeLists.txt
文件或当前函数的调用者。从技术上讲,父目录将是通过
add_subdirectory
命令包含当前文件的CMakeLists.txt
文件。