我试图查看在调用GTEST_FOUND
时如何设置find_package(GTest REQUIRED)
,但是在此文件中没有设置变量GTEST_FOUND
的迹象:
https://github.com/Kitware/CMake/blob/master/Modules/FindGTest.cmake
如果没有在FindGTest.cmake
中完成变量设置,有人知道吗?
答案 0 :(得分:1)
GTEST_FOUND
变量实际上是在FindPackageHandleStandardArgs.cmake
文件中设置的。您可以在FindGTest.cmake
中看到对此函数的调用:
include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(GTest DEFAULT_MSG GTEST_LIBRARY GTEST_INCLUDE_DIR GTEST_MAIN_LIBRARY)
FIND_PACKAGE_HANDLE_STANDARD_ARGS
函数使用包名称的第一个参数(在本例中为GTest
)来设置<PackageName>_FOUND
变量。
以下是FIND_PACKAGE_HANDLE_STANDARD_ARGS
函数的标题信息中的引号:
如果将
<PackageName>_FOUND
变量全部设置为TRUE
变量<required-var>...
有效且可选 约束已满足,FALSE
否则。成功或 根据结果和显示失败消息 是否给了REQUIRED
和/或QUIET
选项 :command:find_package
调用。