diff options
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r-- | CMakeLists.txt | 80 |
1 files changed, 42 insertions, 38 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index d40a1b9..16aa2e2 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -13,7 +13,7 @@ project(colobot C CXX) set(COLOBOT_VERSION_CODENAME "Gold") set(COLOBOT_VERSION_MAJOR 0) set(COLOBOT_VERSION_MINOR 1) -set(COLOBOT_VERSION_REVISION 3) +set(COLOBOT_VERSION_REVISION 4) # Used on official releases set(COLOBOT_VERSION_RELEASE_CODENAME "-alpha") @@ -156,6 +156,9 @@ option(ASSERTS "Enable assert()s" ON) # Development build can be enabled/disabled regardless of build type option(DEV_BUILD "Enable development build (enables some debugging tools, local setting paths, etc.)" OFF) +# Portable build - load all data from current directory +option(PORTABLE "Portable build" OFF) + # Building tests can be enabled/disabled option(TESTS "Build tests" OFF) @@ -206,6 +209,7 @@ find_package(SDL_image 1.2 REQUIRED) find_package(SDL_ttf 2.0 REQUIRED) find_package(PNG 1.2 REQUIRED) find_package(Gettext REQUIRED) +find_package(PhysFS REQUIRED) set(Boost_USE_STATIC_LIBS ${BOOST_STATIC}) set(Boost_USE_MULTITHREADED ON) @@ -294,43 +298,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 +337,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 |