【发布时间】:2018-05-20 18:05:58
【问题描述】:
基于thread "cmake variable scope, add_subdirectory",CMake set 命令将仅在当前范围内设置变量,除非指定了PARENT_SCOPE 参数。
最近,当我查看 project 命令时,根据 CMake 文档,将设置变量 <PROJECT-NAME>_SOURCE_DIR 和 <PROJECT-NAME>_BINARY_DIR。但它没有提到这些变量的范围是什么。这些变量可以在其他子目录中使用吗?例如:
|- root
| |- CMakeLists.txt // add_subdirectory(proj1); add_subdirectory(proj2)
| |
| |- proj1
| | |- CMakeLists.txt // project(proj1)
| |
| |- proj2
| | |- CMakeLists.txt // Does this have access to proj1_SOURCE_DIR or
// poj1_BINARY_DIR?
对于像Find_Package 这样的其他命令的变量呢? <Module>_FOUND 变量的范围是什么?谢谢!
【问题讨论】: