Changeset 5695 for code/trunk/src/CMakeLists.txt
- Timestamp:
- Aug 30, 2009, 2:22:00 AM (15 years ago)
- Location:
- code/trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
code/trunk
- Property svn:mergeinfo changed
/code/branches/resource2 (added) merged: 3373-3374,5594,5597,5610-5611,5614,5624,5641,5644-5646,5650-5664,5667-5672,5682-5684,5688-5691,5694
- Property svn:mergeinfo changed
-
code/trunk/src/CMakeLists.txt
r3368 r5695 17 17 # Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 18 # 19 # 20 # Author: 21 # Reto Grieder 22 # Description: 23 # Configures the compilers and sets build options. 24 # 19 25 20 ################ Various Options ################ 21 22 # various macro includes 26 # Required macros and functions 23 27 INCLUDE(FlagUtilities) 24 28 INCLUDE(TargetUtilities) 25 29 30 # Configure the two headers and set some options 31 INCLUDE(OrxonoxConfig.cmake) 32 33 ################ Library Defines ################ 34 35 # Disable Boost auto linking completely 36 ADD_COMPILER_FLAGS("-DBOOST_ALL_NO_LIB") 37 38 # If no defines are specified, these libs get linked statically 39 ADD_COMPILER_FLAGS("-DBOOST_ALL_DYN_LINK" WIN32 LINK_BOOST_DYNAMIC) 40 ADD_COMPILER_FLAGS("-DENET_DLL" WIN32 LINK_ENET_DYNAMIC) 41 ADD_COMPILER_FLAGS("-DLUA_BUILD_AS_DLL" WIN32 LINK_LUA_DYNAMIC) 42 ADD_COMPILER_FLAGS("-DOIS_DYNAMIC_LIB") 43 ADD_COMPILER_FLAGS("-DZLIB_DLL" WIN32 LINK_ZLIB_DYNAMIC) 44 # If no defines are specified, these libs get linked dynamically 45 ADD_COMPILER_FLAGS("-DCEGUI_STATIC" WIN32 NOT LINK_CEGUI_DYNAMIC) 46 ADD_COMPILER_FLAGS("-DOGRE_STATIC_LIB" WIN32 NOT LINK_OGRE_DYNAMIC) 47 ADD_COMPILER_FLAGS("-DSTATIC_BUILD" WIN32 NOT LINK_TCL_DYNAMIC) 48 26 49 # Use TinyXML++ 27 50 ADD_COMPILER_FLAGS("-DTIXML_USE_TICPP") 28 # OIS dynamic linking requires macro definition, at least for Windows29 ADD_COMPILER_FLAGS("-DOIS_DYNAMIC_LIB")30 31 ################ OrxonoxConfig.h ################32 33 # Check endianness34 INCLUDE(TestBigEndian)35 TEST_BIG_ENDIAN(ORXONOX_BIG_ENDIAN)36 IF(NOT ORXONOX_BIG_ENDIAN)37 SET(ORXONOX_LITTLE_ENDIAN TRUE)38 ENDIF()39 40 # 32/64 bit system check41 IF(CMAKE_SIZEOF_VOID_P EQUAL 8)42 SET(ORXONOX_ARCH_64 TRUE)43 ELSE()44 SET(ORXONOX_ARCH_32 TRUE)45 ENDIF()46 47 # Platforms48 SET(ORXONOX_PLATFORM_WINDOWS ${WIN32})49 SET(ORXONOX_PLATFORM_APPLE ${APPLE})50 SET(ORXONOX_PLATFORM_UNIX ${UNIX})51 IF(UNIX AND NOT APPLE)52 SET(ORXONOX_PLATFORM_LINUX TRUE)53 ENDIF()54 55 # Check __forceinline56 IF(MSVC)57 INCLUDE(CheckCXXSourceCompiles)58 SET(_source "int main() { return 0; } __forceinline void test() { return; }")59 CHECK_CXX_SOURCE_COMPILES("${_source}" HAVE_FORCEINLINE)60 ENDIF(MSVC)61 62 # Check ciso646 include (literal operators)63 INCLUDE(CheckIncludeFileCXX)64 CHECK_INCLUDE_FILE_CXX(iso646.h HAVE_ISO646_H)65 66 # XCode and Visual Studio support multiple configurations. In order to tell the67 # which one we have to define the macros separately for each configuration68 ADD_COMPILER_FLAGS("-DCMAKE_BUILD_TYPE=Debug" Debug)69 ADD_COMPILER_FLAGS("-DCMAKE_BUILD_TYPE=Release" Release)70 ADD_COMPILER_FLAGS("-DCMAKE_BUILD_TYPE=RelWithDebInfo" RelWithDebInfo)71 ADD_COMPILER_FLAGS("-DCMAKE_BUILD_TYPE=MinSizeRel" MinSizeRel)72 73 SET(GENERATED_FILE_COMMENT74 "DO NOT EDIT THIS FILE! <br>75 It has been automatically generated by CMake from OrxonoxConfig.h.in")76 # Copy and configure OrxonoxConfig which gets included in every file77 CONFIGURE_FILE(OrxonoxConfig.h.in ${CMAKE_CURRENT_BINARY_DIR}/OrxonoxConfig.h)78 # This file only gets included by very few classes to avoid a large recompilation79 CONFIGURE_FILE(SpecialConfig.h.in ${CMAKE_CURRENT_BINARY_DIR}/SpecialConfig.h)80 81 SET(ORXONOX_CONFIG_FILES82 ${CMAKE_CURRENT_BINARY_DIR}/OrxonoxConfig.h83 ${CMAKE_CURRENT_SOURCE_DIR}/OrxonoxConfig.h.in84 ${CMAKE_CURRENT_BINARY_DIR}/SpecialConfig.h85 ${CMAKE_CURRENT_SOURCE_DIR}/SpecialConfig.h.in86 )87 51 88 52 ############## Include Directories ##############
Note: See TracChangeset
for help on using the changeset viewer.