
select new behavior for CMP0135 when supported by cmake so that: "CMake 3.24 and above prefers to set the timestamps of all extracted contents to the time of the extraction. This ensures that anything that depends on the extracted contents will be rebuilt whenever the URL changes."
41 lines
1.1 KiB
CMake
41 lines
1.1 KiB
CMake
# Note: CMake support is community-based. The maintainers do not use CMake
|
|
# internally.
|
|
|
|
cmake_minimum_required(VERSION 3.13)
|
|
|
|
if(cmake_VERSION VERSION_GREATER_EQUAL "3.24")
|
|
cmake_policy(SET CMP0135 NEW)
|
|
endif()
|
|
|
|
project(googletest-distribution)
|
|
set(GOOGLETEST_VERSION 1.15.2)
|
|
|
|
if(NOT CYGWIN AND NOT MSYS AND NOT ${CMAKE_SYSTEM_NAME} STREQUAL QNX)
|
|
set(CMAKE_CXX_EXTENSIONS OFF)
|
|
endif()
|
|
|
|
enable_testing()
|
|
|
|
include(CMakeDependentOption)
|
|
include(GNUInstallDirs)
|
|
|
|
# Note that googlemock target already builds googletest.
|
|
option(BUILD_GMOCK "Builds the googlemock subproject" ON)
|
|
option(INSTALL_GTEST "Enable installation of googletest. (Projects embedding googletest may want to turn this OFF.)" ON)
|
|
option(GTEST_HAS_ABSL "Use Abseil and RE2. Requires Abseil and RE2 to be separately added to the build." OFF)
|
|
|
|
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()
|
|
|
|
if(BUILD_GMOCK)
|
|
add_subdirectory( googlemock )
|
|
else()
|
|
add_subdirectory( googletest )
|
|
endif()
|