Changeset 2509 for code/branches/buildsystem2/CMakeLists.txt
- Timestamp:
- Dec 17, 2008, 8:59:48 PM (17 years ago)
- Location:
- code/branches/buildsystem2
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
code/branches/buildsystem2
- Property svn:ignore deleted
- Property svn:mergeinfo changed
/code/branches/buildsystem (added) merged: 1875,1882-1886,1975-1982,1991,1999,2054,2061,2135,2137-2139,2197-2199,2204,2214-2220,2223-2224,2229,2233-2244,2248-2249,2252-2253,2260,2275
-
code/branches/buildsystem2/CMakeLists.txt
r1889 r2509 1 1 PROJECT(Orxonox) 2 2 3 cmake_minimum_required(VERSION 2.4) 4 5 IF (COMMAND cmake_policy) 6 cmake_policy(SET CMP0003 NEW) 7 ENDIF (COMMAND cmake_policy) 8 9 # Allow for simple IF constructs (makes code a lot more readable) 10 #SET(CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS true) 3 CMAKE_MINIMUM_REQUIRED(VERSION 2.6 FATAL_ERROR) 11 4 12 5 # This sets where to look for modules (e.g. "Find*.cmake" files) 13 6 SET(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake) 14 7 15 # Check whether we are on a tardis box8 # Check for special include paths 16 9 INCLUDE(CheckTardis) 10 INCLUDE(CheckOrxonoxWinDeps) 17 11 12 ################ Test options ################### 18 13 19 ############## Testing options ################## 14 OPTION(ENABLE_TESTS "Enable build tests.") 15 IF(ENABLE_TESTS) 16 ENABLE_TESTING() 17 ENDIF(ENABLE_TESTS) 20 18 21 OPTION(TESTING_ENABLED "Do you want to enable Testing") 22 IF (TESTING_ENABLED) 23 ENABLE_TESTING() 24 ENDIF(TESTING_ENABLED) 25 26 OPTION (NETWORK_TESTING_ENABLED "Do you want to build network testing tools: i.e. chatclient chatserver and alike") 27 OPTION (NETWORKTRAFFIC_TESTING_ENABLED "Do you want to build dummyserver4 and dummyclient4") 28 19 OPTION(NETWORK_TESTING_ENABLED "Build network testing tools: i.e. chatclient chatserver and alike.") 20 OPTION(NETWORKTRAFFIC_TESTING_ENABLED "Build dummyserver4 and dummyclient4.") 29 21 30 22 ########## Compiler/Linker options ############## 31 23 32 # if on tardis change compiler and reset boost include directory 33 IF(IS_TARDIS) 34 MESSAGE("System is a TARDIS: Setting Compiler to g++-4.1.1") 35 # Force-set the compiler on tardis machines, as default points to g++-3.3 36 SET(CMAKE_CXX_COMPILER "g++-4.1.1") 37 # Reset Boost serach path 38 SET(Boost_INCLUDE_DIR "/usr/pack/boost-1.34.1-sd/i686-debian-linux3.1/include") 39 ELSE (IS_TARDIS) 40 IF (NOT WIN32) 41 SET(Boost_INCLUDE_DIR "/usr/include/boost") 42 ENDIF (NOT WIN32) 43 ENDIF(IS_TARDIS) 24 # Set binary output directories 25 SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin) 26 SET(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin) 27 MARK_AS_ADVANCED(EXECUTABLE_OUTPUT_PATH LIBRARY_OUTPUT_PATH) 44 28 45 # Set binary output directories 46 SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin) 47 SET(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin/lib) 48 49 # Global compiler/linker flags. force -O2! 50 SET(CMAKE_C_FLAGS "$ENV{CFLAGS} -O0 -Wall -g -ggdb") 51 SET(CMAKE_CXX_FLAGS "$ENV{CXXFLAGS} -O0 -Wall -g -ggdb") 52 #SET(CMAKE_C_FLAGS "$ENV{CFLAGS} -O3 -s") 53 #SET(CMAKE_CXX_FLAGS "$ENV{CXXFLAGS} -O3 -s") 29 # Compiler/Linker flags. 30 IF(NOT CMAKE_BUILD_TYPE) 31 SET(CMAKE_BUILD_TYPE "Debug") 32 ENDIF(NOT CMAKE_BUILD_TYPE) 33 SET(CMAKE_C_FLAGS "$ENV{CFLAGS} -Wall -Wextra -Wno-unused-parameter") 34 SET(CMAKE_CXX_FLAGS "$ENV{CXXFLAGS} -Wall -Wextra -Wno-unused-parameter") 35 SET(CMAKE_C_FLAGS_DEBUG "-g -ggdb") 36 SET(CMAKE_CXX_FLAGS_DEBUG "-g -ggdb") 37 SET(CMAKE_C_FLAGS_RELEASE "-O3 -DNDEBUG") 38 SET(CMAKE_CXX_FLAGS_RELEASE "-O3 -DNDEBUG") 39 SET(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -DNDEBUG -g -ggdb") 40 SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -DNDEBUG -g -ggdb") 41 SET(CMAKE_C_FLAGS_MINSIZEREL "-Os -DNDEBUG") 42 SET(CMAKE_CXX_FLAGS_MINSIZEREL "-Os -DNDEBUG") 54 43 55 44 SET(CMAKE_LD_FLAGS "$ENV{LDFLAGS}") … … 58 47 SET(CMAKE_MODULE_LINKER_FLAGS " --no-undefined") 59 48 60 # Use 'cmake -D make_verb:1 path' to get verbose make output when compiling61 IF (MAKE_VERB)62 SET(CMAKE_VERBOSE_MAKEFILE TRUE)63 ENDIF (MAKE_VERB)64 65 66 49 ############### Library finding ################# 67 50 68 # Uncomment the following line if you want the include and library paths to be shown 69 # Alternatively use the "-D VERBOSE_FIND:BOOL=true" option when executing cmake 51 # Performs the search and sets the variables 52 FIND_PACKAGE(OGRE REQUIRED) 53 FIND_PACKAGE(CEGUI REQUIRED) 54 # CEGUI_OGRE included in source 55 #FIND_PACKAGE(CEGUI_OGRE REQUIRED) 56 FIND_PACKAGE(ENet REQUIRED) 57 FIND_PACKAGE(Boost 1.34 REQUIRED thread filesystem) 58 FIND_PACKAGE(OpenAL REQUIRED) 59 FIND_PACKAGE(ALUT REQUIRED) 60 FIND_PACKAGE(OggVorbis REQUIRED) 61 FIND_PACKAGE(ZLIB REQUIRED) 62 FIND_PACKAGE(DirectX REQUIRED) 63 FIND_PACKAGE(Lua50 REQUIRED) 64 #FIND_PACKAGE(Lua51 QUIET) 70 65 71 # SET (VERBOSE_FIND true) 72 73 # Set the library directory when using precompiled tarballs for the dependencies under windows 74 IF (WIN32) 75 IF (MSVC) 76 IF ($ENV{ORXONOX_DEV}) 77 SET (DEPENDENCY_DIR ${CMAKE_SOURCE_DIR}/../lib_dist/dependencies/) 78 ELSE ($ENV{ORXONOX_DEV}) 79 SET (DEPENDENCY_DIR ${CMAKE_SOURCE_DIR}/dependencies/) 80 ENDIF ($ENV{ORXONOX_DEV}) 81 SET(Boost_LIB_SUFFIX_DEBUG vc80-mt-gd-1_35) 82 ENDIF (MSVC) 83 ENDIF (WIN32) 84 MESSAGE(STATUS ${DEPENDENCY_DIR}) 85 86 # Performs the search and sets the variables 87 FIND_PACKAGE(OGRE) 88 FIND_PACKAGE(CEGUI) 89 # FIND_PACKAGE(CEGUI_OGRE) 90 FIND_PACKAGE(ENet) 91 FIND_PACKAGE(Boost REQUIRED thread filesystem) 92 FIND_PACKAGE(OpenAL) 93 FIND_PACKAGE(ALUT) 94 FIND_PACKAGE(OggVorbis) 95 FIND_PACKAGE(ZLIB) 96 #FIND_PACKAGE(Lua) 97 FIND_PACKAGE(TCL) 98 FIND_PACKAGE(DirectX) 99 100 # Set the search paths for the linking 101 LINK_DIRECTORIES( 102 ${OGRE_LIB_DIR} 103 ${CEGUI_LIB_DIR} 104 # ${CEGUI_SCRIPT_LIB_DIR} 105 # ${CEGUI_OGRE_LIB_DIR} 106 ${ENet_LIBRARY} 107 ${Boost_LIBRARY_DIRS} 108 ${Zlib_LIBRARY_DIR} 109 ${TCL_LIBRARY} 110 ) 111 112 # Set the search paths for include files 113 INCLUDE_DIRECTORIES( 114 ${OGRE_INCLUDE_DIR} 115 ${CEGUI_INCLUDE_DIR} 116 # ${CEGUI_OGRE_INCLUDE_DIR} 117 ${ENet_INCLUDE_DIR} 118 ${Boost_INCLUDE_DIRS} 119 ${OPENAL_INCLUDE_DIR} 120 ${ALUT_INCLUDE_DIR} 121 ${VORBIS_INCLUDE_DIR} 122 ${OGG_INCLUDE_DIR} 123 # ${Lua_INCLUDE_DIR} 124 ${TCL_INCLUDE_PATH} 125 ${DirectX_INCLUDE_DIR} 126 ${ZLIB_INCLUDE_DIR} 127 ) 66 #don't require the whole tcl rat tail 67 FIND_PACKAGE(TCL QUIET) 68 IF(NOT TCL_FOUND) 69 MESSAGE(FATAL_ERROR "Tcl not found.") 70 ENDIF(NOT TCL_FOUND) 128 71 129 72 # Add main source dir 130 73 ADD_SUBDIRECTORY(src) 131 74 ADD_SUBDIRECTORY(bin)
Note: See TracChangeset
for help on using the changeset viewer.