include
Load and run CMake code from a file or module.
include(<file|module> [OPTIONAL][RESULT_VARIABLE<var>]
[NO_POLICY_SCOPE])
从所给文件中加载和运行 CMake code。变量的读和写,访问调用者
的作用域(动态作用域)。如果OPTIONAL
存在,如果文件不存在,不会抛出错误。如果给出RESULT_VARIABLE
,变量<var>
将被设置为被 included 的文件的完整文件名,如果失败,则被设置为 NOTFOUND
。
如果是一个模块而不是文件,名为<modulename>.cmake
文件将被检索,检索路径依次为CMAKE_MODULE_PATH
,然后是 CMake 模块目录。这里有一个例外:如果调用include()
的文件将自己置于Cmake内置的模块目录中,则首先搜索Cmake 内置模块目录,然后是CMAKE_MODULE_PATH
。见policy CMP0017
。
见 cmake_policy()
命令文档关于NO_POLICY_SCOPE
选项的讨论。
CMAKE_MODULE_PATH
以分号分隔的目录列表,当 CMake 模块被 include() 或 find_package() 命令加载时,指定在搜索伴随 CMake 而来的默认模块前需要先搜索的 CMake 模块的搜索路径。默认为空,由项目设置。