2019-05-19 23:29:18 -07:00
|
|
|
# Note: CMake support is community-based. The maintainers do not use CMake
|
2019-04-29 17:18:42 -04:00
|
|
|
# internally.
|
|
|
|
|
2023-06-20 08:20:43 -07:00
|
|
|
cmake_minimum_required(VERSION 3.13)
|
2019-05-28 11:06:26 +02:00
|
|
|
|
2019-02-04 18:59:51 +00:00
|
|
|
project(googletest-distribution)
|
2024-08-01 06:34:07 -07:00
|
|
|
set(GOOGLETEST_VERSION 1.15.2)
|
2019-02-04 18:59:51 +00:00
|
|
|
|
2021-08-20 17:47:35 -04:00
|
|
|
if(NOT CYGWIN AND NOT MSYS AND NOT ${CMAKE_SYSTEM_NAME} STREQUAL QNX)
|
|
|
|
set(CMAKE_CXX_EXTENSIONS OFF)
|
2018-10-24 12:03:07 +08:00
|
|
|
endif()
|
2015-11-11 18:29:41 -02:00
|
|
|
|
|
|
|
enable_testing()
|
|
|
|
|
2017-08-09 15:29:36 -04:00
|
|
|
include(CMakeDependentOption)
|
2018-07-24 11:06:55 -04:00
|
|
|
include(GNUInstallDirs)
|
2017-08-09 15:29:36 -04:00
|
|
|
|
2023-09-29 17:26:23 +03:00
|
|
|
# Note that googlemock target already builds googletest.
|
2015-11-11 18:29:41 -02:00
|
|
|
option(BUILD_GMOCK "Builds the googlemock subproject" ON)
|
2017-12-01 12:48:46 +01:00
|
|
|
option(INSTALL_GTEST "Enable installation of googletest. (Projects embedding googletest may want to turn this OFF.)" ON)
|
2022-10-18 21:39:44 -07:00
|
|
|
option(GTEST_HAS_ABSL "Use Abseil and RE2. Requires Abseil and RE2 to be separately added to the build." OFF)
|
2017-08-16 10:49:06 -04:00
|
|
|
|
2023-12-01 23:09:45 +01:00
|
|
|
if(GTEST_HAS_ABSL)
|
|
|
|
if(NOT TARGET absl::base)
|
|
|
|
find_package(absl REQUIRED)
|
|
|
|
endif()
|
|
|
|
if(NOT TARGET re2::re2)
|
|
|
|
find_package(re2 REQUIRED)
|
|
|
|
endif()
|
|
|
|
endif()
|
|
|
|
|
2015-11-11 18:29:41 -02:00
|
|
|
if(BUILD_GMOCK)
|
|
|
|
add_subdirectory( googlemock )
|
2017-12-01 12:48:46 +01:00
|
|
|
else()
|
2015-11-11 18:29:41 -02:00
|
|
|
add_subdirectory( googletest )
|
|
|
|
endif()
|