CMAKE_FIND_USE_PACKAGE_REGISTRY

在 3.16 版中增加。

控制 find_package() 命令的默认行为,即是否搜索 用户包注册表 提供的路径。

默认情况下,此变量未设置,行为则回退到由已弃用的 CMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY 变量确定的行为。如果也没有设置该变量,则 find_package() 将使用 用户包注册表,除非提供了 NO_CMAKE_PACKAGE_REGISTRY 选项。

当这两个变量都设置时,此变量优先于 CMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY

在某些情况下,例如仅查找系统范围的安装时,在搜索包时使用 用户包注册表 是不可取的。如果 CMAKE_FIND_USE_PACKAGE_REGISTRY 变量为 FALSE,则所有 find_package() 命令将跳过 用户包注册表,就像使用 NO_CMAKE_PACKAGE_REGISTRY 参数调用它们一样。

另请参阅禁用包注册表CMAKE_FIND_USE_CMAKE_PATHCMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATHCMAKE_FIND_USE_INSTALL_PREFIXCMAKE_FIND_USE_CMAKE_SYSTEM_PATHCMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATHCMAKE_FIND_USE_SYSTEM_PACKAGE_REGISTRYCMAKE_FIND_USE_PACKAGE_ROOT_PATH变量。