CMAKE_FIND_PACKAGE_REDIRECTS_DIR¶
在 3.24 版本中添加。
这个只读变量指定了一个目录,find_package()
命令会首先检查这个目录,然后再搜索其他任何地方以查找模块或配置包文件。在这个目录中的配置包文件将始终优先于任何其他 Find 模块文件或配置包文件被找到。
此变量的主要目的是促进 find_package()
和 FetchContent_MakeAvailable()
之间的集成。后者命令在填充依赖项时,可能会在 CMAKE_FIND_PACKAGE_REDIRECTS_DIR
目录中创建文件。这允许后续对同一依赖项的 find_package()
调用重用已填充的内容,而不是尝试从构建外部的某个位置满足依赖项。项目可能还希望在某些情况下将文件写入此目录(有关示例,请参阅 与 find_package() 集成)。
CMAKE_FIND_PACKAGE_REDIRECTS_DIR
指向的目录将在每次 CMake 运行时开始时始终被擦除并重新创建为空目录。在 CMake 运行期间写入此目录的任何文件将在下次 CMake 配置项目时丢失。
CMAKE_FIND_PACKAGE_REDIRECTS_DIR
仅在 CMake 项目模式下设置。当 CMake 在脚本模式下运行时(即 cmake -P
)不会设置。