summaryrefslogtreecommitdiffstats
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorPiotr Dziwinski <piotrdz@gmail.com>2014-08-12 20:03:56 +0200
committerPiotr Dziwinski <piotrdz@gmail.com>2014-08-12 20:58:55 +0200
commit74312b0405d6fb5ed75c675ceed471e1e5086f00 (patch)
tree96a3b40401ce5a4322bd069fd25be163d5d43270 /CMakeLists.txt
parent4bdfa0aa4ee3ad00429e8d68823532bdb2d72a97 (diff)
downloadcolobot-74312b0405d6fb5ed75c675ceed471e1e5086f00.tar.gz
colobot-74312b0405d6fb5ed75c675ceed471e1e5086f00.tar.bz2
colobot-74312b0405d6fb5ed75c675ceed471e1e5086f00.zip
Better CMake organization and unit test cleanups
* created a static library containing most source modules to avoid compiling source modules twice in code and unit tests * moved profile_test to main unit tests executable * removed image_test and edit_test as not really useful
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt74
1 files changed, 37 insertions, 37 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index bf1e12e..6deed31 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -294,43 +294,6 @@ endif()
# Targets
##
-if(TESTS)
- # Google Test library
- find_path(GTEST_SRC_DIR NAMES src/gtest.cc src/gtest-all.cc PATHS /usr/src PATH_SUFFIXES gtest)
- find_path(GTEST_INCLUDE_DIR gtest/gtest.h PATHS /usr/include)
- if(NOT(FORCE_BUNDLED_GTEST) AND GTEST_SRC_DIR AND GTEST_INCLUDE_DIR)
- message(STATUS "Using system gtest library in ${GTEST_SRC_DIR}")
- else()
- message(STATUS "Using bundled gtest library")
- set(GTEST_SRC_DIR ${colobot_SOURCE_DIR}/lib/gtest)
- set(GTEST_INCLUDE_DIR ${colobot_SOURCE_DIR}/lib/gtest/include)
- endif()
-
- add_subdirectory(${GTEST_SRC_DIR} lib/gtest)
-
- # Google Mock library
- find_path(GMOCK_SRC_DIR NAMES src/gmock.cc src/gmock-all.cc PATHS /usr/src PATH_SUFFIXES gmock)
- find_path(GMOCK_INCLUDE_DIR gmock/gmock.h PATHS /usr/include)
- if(NOT(FORCE_BUNDLED_GMOCK) AND GMOCK_SRC_DIR AND GMOCK_INCLUDE_DIR)
- message(STATUS "Using system gmock library in ${GMOCK_SRC_DIR}")
-
- include_directories(${GMOCK_SRC_DIR})
- # gmock-all.cc includes all other sources
- add_library(gmock STATIC ${GMOCK_SRC_DIR}/src/gmock-all.cc)
- else()
- message(STATUS "Using bundled gmock library")
- set(GMOCK_SRC_DIR ${colobot_SOURCE_DIR}/lib/gmock)
- set(GMOCK_INCLUDE_DIR ${colobot_SOURCE_DIR}/lib/gmock/include)
- add_subdirectory(${GMOCK_SRC_DIR} lib/gmock)
- endif()
-
-
- # Tests targets
- enable_testing()
- add_subdirectory(test)
-
-endif()
-
# Installation paths defined before compiling sources
if(PLATFORM_WINDOWS)
if(MXE)
@@ -370,6 +333,43 @@ if(DESKTOP)
add_subdirectory(desktop)
endif()
+if(TESTS)
+ # Google Test library
+ find_path(GTEST_SRC_DIR NAMES src/gtest.cc src/gtest-all.cc PATHS /usr/src PATH_SUFFIXES gtest)
+ find_path(GTEST_INCLUDE_DIR gtest/gtest.h PATHS /usr/include)
+ if(NOT(FORCE_BUNDLED_GTEST) AND GTEST_SRC_DIR AND GTEST_INCLUDE_DIR)
+ message(STATUS "Using system gtest library in ${GTEST_SRC_DIR}")
+ else()
+ message(STATUS "Using bundled gtest library")
+ set(GTEST_SRC_DIR ${colobot_SOURCE_DIR}/lib/gtest)
+ set(GTEST_INCLUDE_DIR ${colobot_SOURCE_DIR}/lib/gtest/include)
+ endif()
+
+ add_subdirectory(${GTEST_SRC_DIR} lib/gtest)
+
+ # Google Mock library
+ find_path(GMOCK_SRC_DIR NAMES src/gmock.cc src/gmock-all.cc PATHS /usr/src PATH_SUFFIXES gmock)
+ find_path(GMOCK_INCLUDE_DIR gmock/gmock.h PATHS /usr/include)
+ if(NOT(FORCE_BUNDLED_GMOCK) AND GMOCK_SRC_DIR AND GMOCK_INCLUDE_DIR)
+ message(STATUS "Using system gmock library in ${GMOCK_SRC_DIR}")
+
+ include_directories(${GMOCK_SRC_DIR})
+ # gmock-all.cc includes all other sources
+ add_library(gmock STATIC ${GMOCK_SRC_DIR}/src/gmock-all.cc)
+ else()
+ message(STATUS "Using bundled gmock library")
+ set(GMOCK_SRC_DIR ${colobot_SOURCE_DIR}/lib/gmock)
+ set(GMOCK_INCLUDE_DIR ${colobot_SOURCE_DIR}/lib/gmock/include)
+ add_subdirectory(${GMOCK_SRC_DIR} lib/gmock)
+ endif()
+
+
+ # Tests targets
+ enable_testing()
+ add_subdirectory(test)
+
+endif()
+
##
# Installation