File lammps-allow-system-gtest.patch of Package lammps
---
unittest/CMakeLists.txt | 41 +++++++++++++++++++++++++----------------
1 file changed, 25 insertions(+), 16 deletions(-)
Index: lammps-stable_29Aug2024_update2/unittest/CMakeLists.txt
===================================================================
--- lammps-stable_29Aug2024_update2.orig/unittest/CMakeLists.txt
+++ lammps-stable_29Aug2024_update2/unittest/CMakeLists.txt
@@ -9,24 +9,33 @@ if((CMAKE_CXX_COMPILER_ID STREQUAL "GNU"
message(FATAL_ERROR "Need GNU C++ compiler version 6.x or later for unit testing")
endif()
-message(STATUS "Downloading and building googletest framework")
-set(GTEST_URL "https://github.com/google/googletest/archive/release-1.12.1.tar.gz" CACHE STRING "URL of googletest source")
-set(GTEST_MD5 "e82199374acdfda3f425331028eb4e2a" CACHE STRING "MD5 sum for googletest source")
-mark_as_advanced(GTEST_URL)
-mark_as_advanced(GTEST_MD5)
-set(gtest_force_shared_crt ON CACHE BOOL "" FORCE)
+set(EXTERNAL_GTEST OFF CACHE BOOL "Use system gtest")
+if (EXTERNAL_GTEST)
+ find_package(GTest REQUIRED)
+ add_library(GTest::GTest ALIAS GTest::gtest)
+ add_library(GTest::GMock ALIAS GTest::gmock)
+ add_library(GTest::GTestMain ALIAS GTest::gtest_main)
+ add_library(GTest::GMockMain ALIAS GTest::gmock_main)
+else()
+ message(STATUS "Downloading and building googletest framework")
+ set(GTEST_URL "https://github.com/google/googletest/archive/release-1.12.1.tar.gz" CACHE STRING "URL of googletest source")
+ set(GTEST_MD5 "e82199374acdfda3f425331028eb4e2a" CACHE STRING "MD5 sum for googletest source")
+ mark_as_advanced(GTEST_URL)
+ mark_as_advanced(GTEST_MD5)
+ set(gtest_force_shared_crt ON CACHE BOOL "" FORCE)
-include(ExternalCMakeProject)
-if(CMAKE_CXX_COMPILER_ID STREQUAL "IntelLLVM")
- set(cxx_strict_flags "-Wno-error -Wno-unused-command-line-argument")
+ include(ExternalCMakeProject)
+ if(CMAKE_CXX_COMPILER_ID STREQUAL "IntelLLVM")
+ set(cxx_strict_flags "-Wno-error -Wno-unused-command-line-argument")
+ endif()
+ set(INSTALL_GTEST OFF CACHE BOOL "" FORCE)
+ set(INSTALL_GMOCK OFF CACHE BOOL "" FORCE)
+ ExternalCMakeProject(googletest ${GTEST_URL} ${GTEST_MD5} googletest . "")
+ add_library(GTest::GTest ALIAS gtest)
+ add_library(GTest::GMock ALIAS gmock)
+ add_library(GTest::GTestMain ALIAS gtest_main)
+ add_library(GTest::GMockMain ALIAS gmock_main)
endif()
-set(INSTALL_GTEST OFF CACHE BOOL "" FORCE)
-set(INSTALL_GMOCK OFF CACHE BOOL "" FORCE)
-ExternalCMakeProject(googletest ${GTEST_URL} ${GTEST_MD5} googletest . "")
-add_library(GTest::GTest ALIAS gtest)
-add_library(GTest::GMock ALIAS gmock)
-add_library(GTest::GTestMain ALIAS gtest_main)
-add_library(GTest::GMockMain ALIAS gmock_main)
option(SKIP_DEATH_TESTS "Do not run 'death tests' to reduce false positives in valgrind" OFF)
mark_as_advanced(SKIP_DEATH_TESTS)