Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Ignore:
Timestamp:
Feb 28, 2009, 7:46:37 PM (15 years ago)
Author:
rgrieder
Message:

Merged buildsystem3 containing buildsystem2 containing Adi's buildsystem branch back to the trunk.
Please update the media directory if you were not using buildsystem3 before.

Location:
code/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • code/trunk

  • code/trunk/src/orxonox/CMakeLists.txt

    r2662 r2710  
    1 SET( ORXONOX_SRC_FILES
     1 #
     2 #             ORXONOX - the hottest 3D action shooter ever to exist
     3 #                             > www.orxonox.net <
     4 #
     5 #        This program is free software; you can redistribute it and/or
     6 #         modify it under the terms of the GNU General Public License
     7 #        as published by the Free Software Foundation; either version 2
     8 #            of the License, or (at your option) any later version.
     9 #
     10 #       This program is distributed in the hope that it will be useful,
     11 #        but WITHOUT ANY WARRANTY; without even the implied warranty of
     12 #        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     13 #                 GNU General Public License for more details.
     14 #
     15 #   You should have received a copy of the GNU General Public License along
     16 #      with this program; if not, write to the Free Software Foundation,
     17 #     Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
     18 #
     19
     20SET_SOURCE_FILES(ORXONOX_SRC_FILES
    221  CameraManager.cc
    322  GraphicsEngine.cc
     
    625  PawnManager.cc
    726  PlayerManager.cc
    8   Settings.cc
    9  
    10   tolua/tolua_bind.cc
    1127)
     28ADD_SUBDIRECTORY(gamestates)
     29ADD_SUBDIRECTORY(gui)
     30ADD_SUBDIRECTORY(objects)
     31ADD_SUBDIRECTORY(overlays)
     32ADD_SUBDIRECTORY(tools)
     33GET_ALL_HEADER_FILES(ORXONOX_HDR_FILES)
     34SET(ORXONOX_FILES ${ORXONOX_SRC_FILES} ${ORXONOX_HDR_FILES})
    1235
    13 ADD_SOURCE_DIRECTORY(ORXONOX_SRC_FILES gamestates)
    14 ADD_SOURCE_DIRECTORY(ORXONOX_SRC_FILES gui)
    15 ADD_SOURCE_DIRECTORY(ORXONOX_SRC_FILES objects)
    16 ADD_SOURCE_DIRECTORY(ORXONOX_SRC_FILES overlays)
    17 ADD_SOURCE_DIRECTORY(ORXONOX_SRC_FILES tools)
     36GENERATE_SOURCE_GROUPS(${ORXONOX_FILES})
     37GENERATE_TOLUA_BINDINGS(Orxonox ORXONOX_FILES INPUTFILES gui/GUIManager.h)
    1838
    19 GET_TARGET_PROPERTY(TOLUA_EXE tolua_orxonox LOCATION)
    20 ADD_CUSTOM_COMMAND(
    21   OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/tolua/tolua_bind.cc ${CMAKE_CURRENT_SOURCE_DIR}/tolua/tolua_bind.h
    22   COMMAND ${TOLUA_EXE} -n Orxonox -o ../../src/orxonox/tolua/tolua_bind.cc -H ../../src/orxonox/tolua/tolua_bind.h ../../src/orxonox/tolua/tolua.pkg
    23   DEPENDS
    24     tolua_orxonox
    25     tolua/tolua.pkg
    26     gui/GUIManager.h
    27   WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/bin/lib
    28 )
     39# Not using precompiled header files: Avoid dependencies
     40INCLUDE_DIRECTORIES(pch/nopch)
    2941
    30 
    31 ADD_EXECUTABLE( orxonox ${ORXONOX_SRC_FILES} )
     42ADD_EXECUTABLE(orxonox ${ORXONOX_FILES})
     43GET_TARGET_PROPERTY(_exec_loc orxonox LOCATION)
     44GET_FILENAME_COMPONENT(_exec_name ${_exec_loc} NAME)
     45SET(ORXONOX_EXECUTABLE_NAME ${_exec_name} CACHE INTERNAL "")
    3246
    3347IF(NETWORKTRAFFIC_TESTING_ENABLED)
    34 
    35   SET( ORXONOXS_SRC_FILES
     48  SET(ORXONOXS_SRC_FILES
    3649    GraphicsEngine.cc
    3750    objects/Camera.cc
    3851    CameraManager.cc
    3952  )
    40 
    41   ADD_LIBRARY(orxonoxs SHARED ${ORXONOX_SRC_FILES})
     53  ADD_LIBRARY(orxonoxs SHARED ${ORXONOXS_SRC_FILES})
    4254ENDIF(NETWORKTRAFFIC_TESTING_ENABLED)
    4355
    44 TARGET_LINK_LIBRARIES( orxonox
    45   ${OGRE_LIBRARIES}
    46   ${CEGUI_LIBRARIES}
    47   lua_orxonox
    48   ceguilua_orxonox
    49   tinyxml_orxonox
    50   tolualib_orxonox
    51   BulletDynamics
    52   BulletCollision
    53   LinearMath
     56TARGET_LINK_LIBRARIES(orxonox
     57  ${OGRE_LIBRARY}
     58  ${CEGUI_LIBRARY}
     59  ${LUA_LIBRARIES}
     60  ${CEGUILUA_LIBRARY}
     61  ${Boost_SYSTEM_LIBRARY}
     62  ogreceguirenderer_orxonox
     63  tinyxml++_orxonox
     64  tolua++_orxonox
     65  bullet_orxonox
    5466  util
    5567  core
    56   audio
    5768  network
     69  #audio
    5870)
    5971
     72ORXONOX_INSTALL(orxonox)
     73
     74
     75# When using Visual Studio we want to use the output directory as working
     76# directory and we also want to specify where the external dlls
     77# (lua, ogre, etc.) are. The problem hereby is that these information cannot
     78# be specified in CMake because they are not stored in the actual project file.
     79# This workaround will create a configured *.vcproj.user file that holds the
     80# right values. When starting the solution for the first time,
     81# these get written to the *vcproj.yourPCname.yourname.user
     82IF(MSVC)
     83  IF(CMAKE_CL_64)
     84    SET(MSVC_PLATFORM "x64")
     85  ELSE()
     86    SET(MSVC_PLATFORM "Win32")
     87  ENDIF()
     88  STRING(REGEX REPLACE "^Visual Studio ([0-9][0-9]?) .*$" "\\1"
     89         VISUAL_STUDIO_VERSION_SIMPLE "${CMAKE_GENERATOR}")
     90  CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/orxonox.vcproj.user" "${CMAKE_CURRENT_BINARY_DIR}/orxonox.vcproj.user")
     91ENDIF(MSVC)
Note: See TracChangeset for help on using the changeset viewer.