FindGTest

From Get docs
Cmake/docs/3.21/module/findgtest


FindGTest

Locate the Google C++ Testing Framework.

New in version 3.20: Upstream GTestConfig.cmake is used if possible.


Imported targets

New in version 3.20: This module defines the following IMPORTED targets:


GTest::gtest
The Google Test gtest library, if found; adds Thread::Thread automatically
GTest::gtest_main
The Google Test gtest_main library, if found

Deprecated since version 3.20: For backwards compatibility, this module defines additionally the following deprecated IMPORTED targets (available since 3.5):


GTest::GTest
The Google Test gtest library, if found; adds Thread::Thread automatically
GTest::Main
The Google Test gtest_main library, if found

Result variables

This module will set the following variables in your project:

GTest_FOUND
Found the Google Testing framework
GTEST_INCLUDE_DIRS
the directory containing the Google Test headers

The library variables below are set as normal variables. These contain debug/optimized keywords when a debugging library is found.

GTEST_LIBRARIES
The Google Test gtest library; note it also requires linking with an appropriate thread library
GTEST_MAIN_LIBRARIES
The Google Test gtest_main library
GTEST_BOTH_LIBRARIES
Both gtest and gtest_main

Cache variables

The following cache variables may also be set:

GTEST_ROOT
The root directory of the Google Test installation (may also be set as an environment variable)
GTEST_MSVC_SEARCH
If compiling with MSVC, this variable can be set to MT or MD (the default) to enable searching a GTest build tree

Example usage

enable_testing()
find_package(GTest REQUIRED)

add_executable(foo foo.cc)
target_link_libraries(foo GTest::gtest GTest::gtest_main)

add_test(AllTestsInFoo foo)

Deeper integration with CTest

See GoogleTest for information on the gtest_add_tests() and gtest_discover_tests() commands.

Changed in version 3.9: Previous CMake versions defined gtest_add_tests() macro in this module.


© 2000–2021 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.21/module/FindGTest.html