You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
83 lines
2.4 KiB
83 lines
2.4 KiB
4 years ago
|
From 727e9b8312c7ae011b667152606afc0e04ea197a Mon Sep 17 00:00:00 2001
|
||
|
From: Jan Henke <Jan.Henke@taujhe.de>
|
||
|
Date: Sun, 14 Jun 2020 14:12:02 +0200
|
||
|
Subject: [PATCH] Use system gtest instead of downloading and building it
|
||
|
|
||
|
---
|
||
|
CMakeLists.txt | 1 -
|
||
|
tests/CMakeLists.txt | 30 ++++--------------------------
|
||
|
2 files changed, 4 insertions(+), 27 deletions(-)
|
||
|
|
||
|
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||
|
index 740cd31..f1bf7a2 100644
|
||
|
--- a/CMakeLists.txt
|
||
|
+++ b/CMakeLists.txt
|
||
|
@@ -3,7 +3,6 @@ cmake_minimum_required(VERSION 3.1.3...3.16)
|
||
|
project(GSL VERSION 3.1.0 LANGUAGES CXX)
|
||
|
|
||
|
include(ExternalProject)
|
||
|
-find_package(Git)
|
||
|
|
||
|
# Use GNUInstallDirs to provide the right locations on all platforms
|
||
|
include(GNUInstallDirs)
|
||
|
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
|
||
|
index 2bd1bbe..c42afb7 100644
|
||
|
--- a/tests/CMakeLists.txt
|
||
|
+++ b/tests/CMakeLists.txt
|
||
|
@@ -5,32 +5,9 @@ project(GSLTests CXX)
|
||
|
# will make visual studio generated project group files
|
||
|
set_property(GLOBAL PROPERTY USE_FOLDERS ON)
|
||
|
|
||
|
-configure_file(CMakeLists.txt.in googletest-download/CMakeLists.txt)
|
||
|
-execute_process(
|
||
|
- COMMAND ${CMAKE_COMMAND} -G "${CMAKE_GENERATOR}" .
|
||
|
- RESULT_VARIABLE result
|
||
|
- WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/googletest-download
|
||
|
-)
|
||
|
-if(result)
|
||
|
- message(FATAL_ERROR "CMake step for googletest failed: ${result}")
|
||
|
-endif()
|
||
|
-
|
||
|
-execute_process(
|
||
|
- COMMAND ${CMAKE_COMMAND} --build .
|
||
|
- RESULT_VARIABLE result
|
||
|
- WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/googletest-download
|
||
|
-)
|
||
|
-if(result)
|
||
|
- message(FATAL_ERROR "CMake step for googletest failed: ${result}")
|
||
|
-endif()
|
||
|
-
|
||
|
set(gtest_force_shared_crt ON CACHE BOOL "" FORCE)
|
||
|
|
||
|
-add_subdirectory(
|
||
|
- ${CMAKE_CURRENT_BINARY_DIR}/googletest-src
|
||
|
- ${CMAKE_CURRENT_BINARY_DIR}/googletest-build
|
||
|
- EXCLUDE_FROM_ALL
|
||
|
-)
|
||
|
+find_package(GTest REQUIRED)
|
||
|
|
||
|
if (MSVC AND (GSL_CXX_STANDARD EQUAL 17))
|
||
|
set(GSL_CPLUSPLUS_OPT -Zc:__cplusplus -permissive-)
|
||
|
@@ -139,7 +116,7 @@ endif(MSVC)
|
||
|
|
||
|
# for tests to find the gtest header
|
||
|
target_include_directories(gsl_tests_config SYSTEM INTERFACE
|
||
|
- googletest/googletest/include
|
||
|
+ ${GTest_INCLUDE_DIRS}
|
||
|
)
|
||
|
|
||
|
set_property(TARGET PROPERTY FOLDER "GSL_tests")
|
||
|
@@ -149,7 +126,8 @@ function(add_gsl_test name)
|
||
|
target_link_libraries(${name}
|
||
|
GSL
|
||
|
gsl_tests_config
|
||
|
- gtest_main
|
||
|
+ GTest::GTest
|
||
|
+ GTest::Main
|
||
|
)
|
||
|
add_test(
|
||
|
${name}
|
||
|
--
|
||
|
2.26.2
|
||
|
|