Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/branches/buildsystem/CMakeLists.txt @ 2198

Last change on this file since 2198 was 2197, checked in by adrfried, 16 years ago

FindCEGUI.cmake and others cleaned up

  • Property svn:eol-style set to native
File size: 2.1 KB
RevLine 
[1505]1PROJECT(Orxonox)
2
[1981]3CMAKE_MINIMUM_REQUIRED(VERSION 2.6 FATAL_ERROR)
[1505]4
[2197]5# TODO: Test CMake Modules without policy
6#IF (COMMAND cmake_policy)
7#  cmake_policy(SET CMP0003 NEW)
8#ENDIF (COMMAND cmake_policy)
[1505]9
[1776]10# This sets where to look for modules (e.g. "Find*.cmake" files)
[1505]11SET(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
12
[2197]13# Check for special include paths
[1505]14INCLUDE(CheckTardis)
[2197]15INCLUDE(CheckOrxonoxWinDeps)
[1505]16
[2197]17################ Test options ###################
[1505]18
[2197]19OPTION(ENABLE_TESTS "Enable build tests.")
20IF(ENABLE_TESTS)
21  ENABLE_TESTING()
22ENDIF(ENABLE_TESTS)
[1505]23
[2197]24OPTION(NETWORK_TESTING_ENABLED "Build network testing tools: i.e. chatclient chatserver and alike.")
25OPTION(NETWORKTRAFFIC_TESTING_ENABLED "Build dummyserver4 and dummyclient4.")
26
[1505]27########## Compiler/Linker options ##############
28
[1776]29# Set binary output directories
[1882]30SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin)
[1977]31SET(LIBRARY_OUTPUT_PATH    ${PROJECT_BINARY_DIR}/bin)
[2197]32MARK_AS_ADVANCED(EXECUTABLE_OUTPUT_PATH LIBRARY_OUTPUT_PATH)
[1505]33
[2197]34# TODO: use CMake's options for build types
[1977]35# Global compiler/linker flags.
36SET(CMAKE_C_FLAGS "$ENV{CFLAGS} -Wall -Wextra -Wno-unused-parameter -g -ggdb")
37SET(CMAKE_CXX_FLAGS "$ENV{CXXFLAGS} -Wall -Wextra -Wno-unused-parameter -g -ggdb")
[1505]38#SET(CMAKE_C_FLAGS "$ENV{CFLAGS} -O3")
39#SET(CMAKE_CXX_FLAGS "$ENV{CXXFLAGS} -O3")
40
41SET(CMAKE_LD_FLAGS "$ENV{LDFLAGS}")
42SET(CMAKE_EXE_LINKER_FLAGS " --no-undefined")
43SET(CMAKE_SHARED_LINKER_FLAGS " --no-undefined")
44SET(CMAKE_MODULE_LINKER_FLAGS " --no-undefined")
45
46############### Library finding #################
47
[1776]48# Performs the search and sets the variables
[1977]49FIND_PACKAGE(OGRE REQUIRED)
50FIND_PACKAGE(CEGUI REQUIRED)
[1999]51# CEGUI_OGRE included in source
[1977]52#FIND_PACKAGE(CEGUI_OGRE REQUIRED)
53FIND_PACKAGE(ENet REQUIRED)
[1981]54FIND_PACKAGE(Boost 1.34 REQUIRED thread filesystem)
[1977]55FIND_PACKAGE(OpenAL REQUIRED)
56FIND_PACKAGE(ALUT REQUIRED)
57FIND_PACKAGE(OggVorbis REQUIRED)
58FIND_PACKAGE(ZLIB REQUIRED)
[2197]59#TODO: don't require the whole tcl stuff
[1977]60FIND_PACKAGE(TCL REQUIRED)
61FIND_PACKAGE(DirectX REQUIRED)
[1999]62FIND_PACKAGE(Lua50 REQUIRED)
63#FIND_PACKAGE(Lua51 QUIET)
[1505]64
[1776]65# Add main source dir
[1505]66ADD_SUBDIRECTORY(src)
Note: See TracBrowser for help on using the repository browser.