chore: require cmake v3.14 and use FetchContent_MakeAvailable

This commit is contained in:
Stanislav Angelovič
2023-05-17 20:00:35 +02:00
parent 64337e545d
commit 0bfda9ab92
2 changed files with 8 additions and 14 deletions

View File

@ -2,7 +2,7 @@
# PROJECT INFORMATION # PROJECT INFORMATION
#------------------------------- #-------------------------------
cmake_minimum_required(VERSION 3.13) cmake_minimum_required(VERSION 3.14)
project(sdbus-c++ VERSION 1.6.0 LANGUAGES C CXX) project(sdbus-c++ VERSION 1.6.0 LANGUAGES C CXX)

View File

@ -32,19 +32,13 @@ if (NOT TARGET GTest::gmock)
GIT_SHALLOW 1 GIT_SHALLOW 1
UPDATE_COMMAND "") UPDATE_COMMAND "")
#FetchContent_MakeAvailable(googletest) # Not available in CMake 3.13 :-( Let's do it manually: set(gtest_force_shared_crt ON CACHE INTERNAL "" FORCE)
FetchContent_GetProperties(googletest) set(INSTALL_GTEST OFF CACHE INTERNAL "" FORCE)
if(NOT googletest_POPULATED) set(BUILD_SHARED_LIBS_BAK ${BUILD_SHARED_LIBS})
FetchContent_Populate(googletest) set(BUILD_SHARED_LIBS OFF)
set(gtest_force_shared_crt ON CACHE INTERNAL "" FORCE) FetchContent_MakeAvailable(googletest)
set(BUILD_GMOCK ON CACHE INTERNAL "" FORCE) set(BUILD_SHARED_LIBS ${BUILD_SHARED_LIBS_BAK})
set(INSTALL_GTEST OFF CACHE INTERNAL "" FORCE) add_library(GTest::gmock ALIAS gmock)
set(BUILD_SHARED_LIBS_BAK ${BUILD_SHARED_LIBS})
set(BUILD_SHARED_LIBS OFF)
add_subdirectory(${googletest_SOURCE_DIR} ${googletest_BINARY_DIR})
set(BUILD_SHARED_LIBS ${BUILD_SHARED_LIBS_BAK})
add_library(GTest::gmock ALIAS gmock)
endif()
endif() endif()
endif() endif()