summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDidier Raboud <odyx@debian.org>2012-12-16 11:38:36 +0100
committerDidier Raboud <odyx@debian.org>2012-12-16 12:06:36 +0100
commite127f5b631c5579adab47510b962f5ea0027eebc (patch)
tree53f336925393ad86357234517f840029c0adb4e4
parent1703319159f08e98adc029b9592dc7a84659f63d (diff)
downloadcolobot-e127f5b631c5579adab47510b962f5ea0027eebc.tar.gz
colobot-e127f5b631c5579adab47510b962f5ea0027eebc.tar.bz2
colobot-e127f5b631c5579adab47510b962f5ea0027eebc.zip
Use system GMock and GTest if they are available
- Drop library addition to upstream GTest. - Fallback to convenience copy if the system libraries are not installed.
-rw-r--r--CMakeLists.txt18
-rw-r--r--lib/gtest/CMakeLists.txt1
2 files changed, 15 insertions, 4 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 33fb882..b625cd2 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -127,13 +127,25 @@ endif()
##
if(${TESTS})
+ # Google Mock
+ find_path(GMOCK_INCLUDE_DIR NAMES gmock.h PATH_SUFFIXES gmock)
+ find_path(GMOCK_SRC_DIR NAMES src/gmock-all.cc PATHS /usr/src/ PATH_SUFFIXES gmock)
# Google Test library
find_path(GTEST_SRC_DIR NAMES src/gtest.cc src/gtest-all.cc PATHS /usr/src/ PATH_SUFFIXES gtest)
- if(NOT GTEST_SRC_DIR)
+ if(GTEST_SRC_DIR AND GMOCK_INCLUDE_DIR AND GMOCK_SRC_DIR)
+ include_directories(${GMOCK_SRC_DIR})
+ else(GTEST_SRC_DIR AND GMOCK_INCLUDE_DIR AND GMOCK_SRC_DIR)
set(GTEST_SRC_DIR lib/gtest)
- endif(NOT GTEST_SRC_DIR)
- message(STATUS "Use Google Test from ${GTEST_SRC_DIR}")
+ set(GMOCK_SRC_DIR ${GTEST_SRC_DIR})
+ set(GMOCK_INCLUDE_DIR ${GTEST_SRC_DIR}/include/gmock)
+ include_directories(${GTEST_SRC_DIR} ${GTEST_SRC_DIR}/include/)
+ endif(GTEST_SRC_DIR AND GMOCK_INCLUDE_DIR AND GMOCK_SRC_DIR)
+
+ add_library(gmock STATIC ${GMOCK_SRC_DIR}/src/gmock-all.cc)
add_subdirectory(${GTEST_SRC_DIR} bin/test)
+
+ message(STATUS "Use Google Mock from ${GMOCK_SRC_DIR}")
+ message(STATUS "Use Google Test from ${GTEST_SRC_DIR}")
endif()
# Subdirectory with sources
diff --git a/lib/gtest/CMakeLists.txt b/lib/gtest/CMakeLists.txt
index 61813ae..1279f7d 100644
--- a/lib/gtest/CMakeLists.txt
+++ b/lib/gtest/CMakeLists.txt
@@ -7,4 +7,3 @@ add_definitions(-DGTEST_HAS_PTHREAD=0)
# gtest-all.cc includes all other sources
add_library(gtest STATIC src/gtest-all.cc)
-add_library(gmock STATIC src/gmock-all.cc)