Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Ignore:
Timestamp:
Mar 12, 2013, 11:13:03 PM (11 years ago)
Author:
landauf
Message:

merged testing branch back to trunk. unbelievable it took me 13 months to finish this chore…

Location:
code/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • code/trunk

  • code/trunk/src/CMakeLists.txt

    r8729 r9550  
    2828INCLUDE(TargetUtilities)
    2929
     30INCLUDE(SourceConfig.cmake)
     31
    3032# Configure the two headers and set some options
    3133INCLUDE(OrxonoxConfig.cmake)
    32 
    33 ####### Library Behaviour (dependencies) ########
    34 
    35 # Disable auto linking completely for Boost and POCO
    36 ADD_COMPILER_FLAGS("-DBOOST_ALL_NO_LIB")
    37 ADD_COMPILER_FLAGS("-DPOCO_NO_AUTOMATIC_LIBS")
    38 
    39 IF(WIN32)
    40   # If no defines are specified, these libs get linked statically
    41   ADD_COMPILER_FLAGS("-DBOOST_ALL_DYN_LINK" LINK_BOOST_DYNAMIC)
    42   #ADD_COMPILER_FLAGS("-DENET_DLL"           LINK_ENET_DYNAMIC)
    43   ADD_COMPILER_FLAGS("-DLUA_BUILD_AS_DLL"   LINK_LUA5.1_DYNAMIC)
    44   # If no defines are specified, these libs get linked dynamically
    45   ADD_COMPILER_FLAGS("-DCEGUI_STATIC -DTOLUA_STATIC" NOT LINK_CEGUI_DYNAMIC)
    46   ADD_COMPILER_FLAGS("-DOGRE_STATIC_LIB"    NOT LINK_OGRE_DYNAMIC)
    47   ADD_COMPILER_FLAGS("-DSTATIC_BUILD"       NOT LINK_TCL_DYNAMIC)
    48 
    49   # Target Windows XP as minimum Windows version
    50   # And try to catch all the different macro defines for that...
    51   ADD_COMPILER_FLAGS("-D_WIN32_WINNT=0x0501")
    52   ADD_COMPILER_FLAGS("-D_WIN32_WINDOWS=0x0501")
    53   ADD_COMPILER_FLAGS("-DWINVER=0x0501")
    54   ADD_COMPILER_FLAGS("-DNTDDI_VERSION=0x05010000")
    55 ENDIF(WIN32)
    56 
    57 # Visual Leak Dectector configuration
    58 IF(MSVC AND VLD_FOUND)
    59   OPTION(VISUAL_LEAK_DETECTOR_ENABLE "Memory leak detector" OFF)
    60   IF(VISUAL_LEAK_DETECTOR_ENABLE)
    61     # Force library linking by forcing the inclusion of a symbol
    62     ADD_LINKER_FLAGS("-INCLUDE:__imp_?vld@@3VVisualLeakDetector@@A" Debug)
    63     IF(MSVC90)
    64       # VS 2008 incremental linker crashes with /INCLUDE most of the time
    65       REMOVE_LINKER_FLAGS("-INCREMENTAL:YES" Debug)
    66       ADD_LINKER_FLAGS   ("-INCREMENTAL:NO"  Debug)
    67     ENDIF()
    68   ENDIF()
    69 ENDIF()
    70 
    71 ######### Library Behaviour (external) ##########
    72 
    73 # Use TinyXML++
    74 ADD_COMPILER_FLAGS("-DTIXML_USE_TICPP")
    75 
    76 # Default linking for externals
    77 IF(CMAKE_BUILD_TYPE MATCHES "(Debug|RelForDevs)")
    78   SET(_default_link_mode "SHARED")
    79 ELSE()
    80   SET(_default_link_mode "STATIC")
    81 ENDIF()
    82 SET(_message "Link mode for external libraries that we build ourselves.
    83 MSVC Note: certain libraries will not be linked shared.")
    84 SET(ORXONOX_EXTERNAL_LINK_MODE "${_default_link_mode}" CACHE STRING "${_message}")
    85 
    86 IF(ORXONOX_EXTERNAL_LINK_MODE STREQUAL "SHARED")
    87   SET(_external_shared_link TRUE)
    88 ELSE()
    89   SET(_external_shared_link FALSE)
    90 ENDIF()
    91 # If no defines are specified, these libs get linked dynamically
    92 ADD_COMPILER_FLAGS("-DENET_DLL"                    WIN32     _external_shared_link)
    93 ADD_COMPILER_FLAGS("-DOGRE_GUIRENDERER_STATIC_LIB" WIN32 NOT _external_shared_link)
    94 ADD_COMPILER_FLAGS("-DOIS_STATIC_LIB"              WIN32 NOT _external_shared_link)
    95 
    96 ############## Include Directories ##############
    97 
    98 # Set the search paths for include files
    99 INCLUDE_DIRECTORIES(
    100   # OrxonoxConfig.h
    101   ${CMAKE_CURRENT_BINARY_DIR}
    102 
    103   # All includes in "externals" should be prefixed with the path
    104   # relative to "external" to avoid conflicts
    105   ${CMAKE_CURRENT_SOURCE_DIR}/external
    106   # Include directories needed even if only included by Orxonox
    107   ${CMAKE_CURRENT_SOURCE_DIR}/external/bullet
    108   ${CMAKE_CURRENT_SOURCE_DIR}/external/ois
    109 
    110   # External
    111   ${OGRE_INCLUDE_DIR}
    112   ${CEGUI_INCLUDE_DIR}
    113   ${CEGUI_TOLUA_INCLUDE_DIR}
    114   #${ENET_INCLUDE_DIR}
    115   ${Boost_INCLUDE_DIRS}
    116   ${POCO_INCLUDE_DIR}
    117   ${OPENAL_INCLUDE_DIRS}
    118   ${ALUT_INCLUDE_DIR}
    119   ${VORBIS_INCLUDE_DIR}
    120   ${OGG_INCLUDE_DIR}
    121   ${LUA5.1_INCLUDE_DIR}
    122   ${TCL_INCLUDE_PATH}
    123   ${DIRECTX_INCLUDE_DIR}
    124   ${ZLIB_INCLUDE_DIR}
    125 )
    126 
    127 IF(CEGUI_OLD_VERSION)
    128   INCLUDE_DIRECTORIES(${CEGUILUA_INCLUDE_DIR})
    129 ENDIF()
    130 
    131 IF (DBGHELP_FOUND)
    132   INCLUDE_DIRECTORIES(${DBGHELP_INCLUDE_DIR})
    133 ENDIF()
    134 
    135 IF(VISUAL_LEAK_DETECTOR_ENABLE)
    136   INCLUDE_DIRECTORIES(${VLD_INCLUDE_DIR})
    137 ENDIF()
    138 
    139 ############## CEGUI OGRE Renderer ##############
    140 
    141 IF(CEGUI_OGRE_RENDERER_BUILD_REQUIRED)
    142   SET(CEGUI_OGRE_RENDERER_LIBRARY ogreceguirenderer_orxonox)
    143 ENDIF()
    144 
    145 ################### Tolua Bind ##################
    146 
    147 # Add hook script to the lua code that generates the bindings
    148 SET(TOLUA_PARSER_HOOK_SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/libraries/core/ToluaInterfaceHook.lua)
    149 SET(TOLUA_PARSER_DEPENDENCIES ${TOLUA_PARSER_DEPENDENCIES} ${TOLUA_PARSER_HOOK_SCRIPT})
    15034
    15135################ Sub Directories ################
     
    19478
    19579
    196 # When using Visual Studio we want to use the output directory as working
    197 # directory and we also want to specify where the external dlls
    198 # (lua, ogre, etc.) are. The problem hereby is that these information cannot
    199 # be specified in CMake because they are not stored in the actual project file.
    200 # This workaround will create a configured *.vcproj.user file that holds the
    201 # right values. When starting the solution for the first time,
    202 # these get written to the *vcproj.yourPCname.yourname.user
    20380IF(MSVC)
    20481  IF(CMAKE_CL_64)
     
    20683  ELSE()
    20784    SET(MSVC_PLATFORM "Win32")
    208   ENDIF()
    209   IF(MSVC10)
    210     CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/orxonox-main.vcxproj.user.in" "${CMAKE_CURRENT_BINARY_DIR}/orxonox-main.vcxproj.user")
    211   ELSE()
    212     STRING(REGEX REPLACE "^Visual Studio ([0-9][0-9]?).*$" "\\1"
    213            VISUAL_STUDIO_VERSION_SIMPLE "${CMAKE_GENERATOR}")
    214     CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/orxonox-main.vcproj.user.in" "${CMAKE_CURRENT_BINARY_DIR}/orxonox-main.vcproj.user")
    21585  ENDIF()
    21686ENDIF(MSVC)
Note: See TracChangeset for help on using the changeset viewer.