mirror of
https://github.com/TorqueGameEngines/Torque3D.git
synced 2026-07-16 00:54:54 +00:00
CMake changes for dedicated builds.
This commit is contained in:
parent
8a50895062
commit
17bd69e659
5 changed files with 138 additions and 21 deletions
|
|
@ -39,7 +39,8 @@ macro(addPath dir)
|
||||||
${dir}/*.cpp
|
${dir}/*.cpp
|
||||||
${dir}/*.c
|
${dir}/*.c
|
||||||
${dir}/*.cc
|
${dir}/*.cc
|
||||||
${dir}/*.h)
|
${dir}/*.h
|
||||||
|
${dir}/*.asm)
|
||||||
LIST(APPEND ${PROJECT_NAME}_files "${tmp_files}")
|
LIST(APPEND ${PROJECT_NAME}_files "${tmp_files}")
|
||||||
LIST(APPEND ${PROJECT_NAME}_paths "${dir}")
|
LIST(APPEND ${PROJECT_NAME}_paths "${dir}")
|
||||||
#message(STATUS "addPath ${PROJECT_NAME} : ${tmp_files}")
|
#message(STATUS "addPath ${PROJECT_NAME} : ${tmp_files}")
|
||||||
|
|
@ -351,6 +352,12 @@ else()
|
||||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${CMAKE_CXX_FLAGS}")
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${CMAKE_CXX_FLAGS}")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if(UNIX)
|
||||||
|
SET(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${projectOutDir}")
|
||||||
|
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${projectOutDir}")
|
||||||
|
SET(CMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG "${projectOutDir}")
|
||||||
|
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY_DEBUG "${projectOutDir}")
|
||||||
|
endif()
|
||||||
|
|
||||||
# fix the debug/release subfolders on windows
|
# fix the debug/release subfolders on windows
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,7 @@
|
||||||
project(convexDecomp)
|
project(convexDecomp)
|
||||||
|
|
||||||
|
if(UNIX)
|
||||||
|
addDef(LINUX)
|
||||||
|
endif()
|
||||||
|
|
||||||
finishLibrary("${libDir}/convexDecomp")
|
finishLibrary("${libDir}/convexDecomp")
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,18 @@
|
||||||
project(libtheora)
|
project(libtheora)
|
||||||
|
|
||||||
addPathRec("${libDir}/libtheora")
|
addPath( "${libDir}/libtheora" )
|
||||||
|
addPathRec( "${libDir}/libtheora/include" )
|
||||||
|
addPath( "${libDir}/libtheora/lib" )
|
||||||
|
addPath( "${libDir}/libtheora/lib/dec" )
|
||||||
|
addPath( "${libDir}/libtheora/lib/enc" )
|
||||||
|
|
||||||
|
if(WIN32)
|
||||||
|
addPath( "${libDir}/libtheora/lib/dec/x86_vc" )
|
||||||
|
addPath( "${libDir}/libtheora/lib/enc/x86_32_vs" )
|
||||||
|
else()
|
||||||
|
addPath( "${libDir}/libtheora/lib/dec/x86" )
|
||||||
|
addPath( "${libDir}/libtheora/lib/enc/x86_32" )
|
||||||
|
endif()
|
||||||
|
|
||||||
addDef(TORQUE_OGGTHEORA)
|
addDef(TORQUE_OGGTHEORA)
|
||||||
addDef(TORQUE_OGGVORIBS)
|
addDef(TORQUE_OGGVORIBS)
|
||||||
|
|
|
||||||
|
|
@ -6,4 +6,8 @@ addDef(TORQUE_OGGVORBIS)
|
||||||
addInclude(${libDir}/libvorbis/include)
|
addInclude(${libDir}/libvorbis/include)
|
||||||
addInclude(${libDir}/libogg/include)
|
addInclude(${libDir}/libogg/include)
|
||||||
|
|
||||||
|
if(UNIX)
|
||||||
|
addInclude(${libDir}/libvorbis/lib)
|
||||||
|
endif()
|
||||||
|
|
||||||
finishLibrary()
|
finishLibrary()
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,16 @@
|
||||||
project(${TORQUE_APP_NAME})
|
project(${TORQUE_APP_NAME})
|
||||||
|
|
||||||
|
if(UNIX)
|
||||||
|
# default compiler flags
|
||||||
|
# force compile 32 bit
|
||||||
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -m32 -Wall -Wundef -msse -pipe -Wfatal-errors ${TORQUE_ADDITIONAL_LINKER_FLAGS}")
|
||||||
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -m32 -Wall -Wundef -msse -pipe -Wfatal-errors ${TORQUE_ADDITIONAL_LINKER_FLAGS}")
|
||||||
|
|
||||||
|
# for asm files
|
||||||
|
SET (CMAKE_ASM_NASM_OBJECT_FORMAT "elf")
|
||||||
|
ENABLE_LANGUAGE (ASM_NASM)
|
||||||
|
endif()
|
||||||
|
|
||||||
# TODO: fmod support
|
# TODO: fmod support
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
@ -13,8 +24,12 @@ option(TORQUE_ADVANCED_LIGHTING "Advanced Lighting" ON)
|
||||||
mark_as_advanced(TORQUE_ADVANCED_LIGHTING)
|
mark_as_advanced(TORQUE_ADVANCED_LIGHTING)
|
||||||
option(TORQUE_BASIC_LIGHTING "Basic Lighting" ON)
|
option(TORQUE_BASIC_LIGHTING "Basic Lighting" ON)
|
||||||
mark_as_advanced(TORQUE_BASIC_LIGHTING)
|
mark_as_advanced(TORQUE_BASIC_LIGHTING)
|
||||||
option(TORQUE_SFX_DirectX "DirectX Sound" ON)
|
if(WIN32)
|
||||||
mark_as_advanced(TORQUE_SFX_DirectX)
|
option(TORQUE_SFX_DirectX "DirectX Sound" ON)
|
||||||
|
mark_as_advanced(TORQUE_SFX_DirectX)
|
||||||
|
else()
|
||||||
|
set(TORQUE_SFX_DirectX OFF)
|
||||||
|
endif()
|
||||||
option(TORQUE_SFX_OPENAL "OpenAL Sound" ON)
|
option(TORQUE_SFX_OPENAL "OpenAL Sound" ON)
|
||||||
mark_as_advanced(TORQUE_SFX_OPENAL)
|
mark_as_advanced(TORQUE_SFX_OPENAL)
|
||||||
option(TORQUE_HIFI "HIFI? support" OFF)
|
option(TORQUE_HIFI "HIFI? support" OFF)
|
||||||
|
|
@ -23,6 +38,13 @@ option(TORQUE_EXTENDED_MOVE "Extended move support" OFF)
|
||||||
mark_as_advanced(TORQUE_EXTENDED_MOVE)
|
mark_as_advanced(TORQUE_EXTENDED_MOVE)
|
||||||
option(TORQUE_NAVIGATION "Enable Navigation module" OFF)
|
option(TORQUE_NAVIGATION "Enable Navigation module" OFF)
|
||||||
#mark_as_advanced(TORQUE_NAVIGATION)
|
#mark_as_advanced(TORQUE_NAVIGATION)
|
||||||
|
if(WIN32)
|
||||||
|
option(TORQUE_OPENGL "Allow OpenGL render" OFF)
|
||||||
|
#mark_as_advanced(TORQUE_OPENGL)
|
||||||
|
else()
|
||||||
|
set(TORQUE_OPENGL ON) # we need OpenGL to render on Linux/Mac
|
||||||
|
option(TORQUE_DEDICATED "Torque dedicated" OFF)
|
||||||
|
endif()
|
||||||
|
|
||||||
#Oculus VR
|
#Oculus VR
|
||||||
option(TORQUE_OCULUSVR "Enable OCULUSVR module" OFF)
|
option(TORQUE_OCULUSVR "Enable OCULUSVR module" OFF)
|
||||||
|
|
@ -45,10 +67,18 @@ endif()
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# options
|
# options
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
if(NOT MSVC) # handle single-configuration generator
|
||||||
|
set(TORQUE_BUILD_TYPE "Debug" CACHE STRING "Select one of Debug, Release and RelWithDebInfo")
|
||||||
|
set_property(CACHE TORQUE_BUILD_TYPE PROPERTY STRINGS "Debug" "Release" "RelWithDebInfo")
|
||||||
|
|
||||||
|
set(TORQUE_ADDITIONAL_LINKER_FLAGS "" CACHE STRING "Additional linker flags")
|
||||||
|
mark_as_advanced(TORQUE_ADDITIONAL_LINKER_FLAGS)
|
||||||
|
endif()
|
||||||
|
|
||||||
option(TORQUE_MULTITHREAD "Multi Threading" ON)
|
option(TORQUE_MULTITHREAD "Multi Threading" ON)
|
||||||
mark_as_advanced(TORQUE_MULTITHREAD)
|
mark_as_advanced(TORQUE_MULTITHREAD)
|
||||||
|
|
||||||
option(TORQUE_DISABLE_MEMORY_MANAGER "Disable memory manager" OFF)
|
option(TORQUE_DISABLE_MEMORY_MANAGER "Disable memory manager" ON)
|
||||||
mark_as_advanced(TORQUE_DISABLE_MEMORY_MANAGER)
|
mark_as_advanced(TORQUE_DISABLE_MEMORY_MANAGER)
|
||||||
|
|
||||||
option(TORQUE_DISABLE_VIRTUAL_MOUNT_SYSTEM "Disable virtual mount system" OFF)
|
option(TORQUE_DISABLE_VIRTUAL_MOUNT_SYSTEM "Disable virtual mount system" OFF)
|
||||||
|
|
@ -130,7 +160,9 @@ addPath("${srcDir}/math/test")
|
||||||
addPath("${srcDir}/platform")
|
addPath("${srcDir}/platform")
|
||||||
addPath("${srcDir}/cinterface")
|
addPath("${srcDir}/cinterface")
|
||||||
addPath("${srcDir}/platform/nativeDialogs")
|
addPath("${srcDir}/platform/nativeDialogs")
|
||||||
addPath("${srcDir}/platform/menus")
|
if( NOT TORQUE_DEDICATED )
|
||||||
|
addPath("${srcDir}/platform/menus")
|
||||||
|
endif()
|
||||||
addPath("${srcDir}/platform/test")
|
addPath("${srcDir}/platform/test")
|
||||||
addPath("${srcDir}/platform/threads")
|
addPath("${srcDir}/platform/threads")
|
||||||
addPath("${srcDir}/platform/async")
|
addPath("${srcDir}/platform/async")
|
||||||
|
|
@ -197,8 +229,12 @@ addPathRec("${projectSrcDir}")
|
||||||
if(TORQUE_ADVANCED_LIGHTING)
|
if(TORQUE_ADVANCED_LIGHTING)
|
||||||
addPath("${srcDir}/lighting/advanced")
|
addPath("${srcDir}/lighting/advanced")
|
||||||
addPathRec("${srcDir}/lighting/shadowMap")
|
addPathRec("${srcDir}/lighting/shadowMap")
|
||||||
addPathRec("${srcDir}/lighting/advanced/hlsl")
|
if(WIN32)
|
||||||
#addPathRec("${srcDir}/lighting/advanced/glsl")
|
addPathRec("${srcDir}/lighting/advanced/hlsl")
|
||||||
|
endif()
|
||||||
|
if(TORQUE_OPENGL)
|
||||||
|
addPathRec("${srcDir}/lighting/advanced/glsl")
|
||||||
|
endif()
|
||||||
addDef(TORQUE_ADVANCED_LIGHTING)
|
addDef(TORQUE_ADVANCED_LIGHTING)
|
||||||
endif()
|
endif()
|
||||||
if(TORQUE_BASIC_LIGHTING)
|
if(TORQUE_BASIC_LIGHTING)
|
||||||
|
|
@ -215,11 +251,17 @@ if(TORQUE_SFX_DirectX)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# OpenAL
|
# OpenAL
|
||||||
if(TORQUE_SFX_OPENAL)
|
if(TORQUE_SFX_OPENAL AND NOT TORQUE_DEDICATED)
|
||||||
addPath("${srcDir}/sfx/openal")
|
addPath("${srcDir}/sfx/openal")
|
||||||
#addPath("${srcDir}/sfx/openal/mac")
|
#addPath("${srcDir}/sfx/openal/mac")
|
||||||
addPath("${srcDir}/sfx/openal/win32")
|
if(WIN32)
|
||||||
addInclude("${libDir}/openal/win32")
|
addPath("${srcDir}/sfx/openal/win32")
|
||||||
|
addInclude("${libDir}/openal/win32")
|
||||||
|
endif()
|
||||||
|
if(UNIX)
|
||||||
|
addPath("${srcDir}/sfx/openal/linux")
|
||||||
|
endif()
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Vorbis
|
# Vorbis
|
||||||
|
|
@ -275,6 +317,15 @@ if(TORQUE_HYDRA)
|
||||||
include( "modules/module_hydra.cmake" )
|
include( "modules/module_hydra.cmake" )
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if(TORQUE_DISABLE_MEMORY_MANAGER)
|
||||||
|
addDef(TORQUE_DISABLE_MEMORY_MANAGER)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(TORQUE_DEDICATED)
|
||||||
|
addDef(TORQUE_DEDICATED)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# platform specific things
|
# platform specific things
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
@ -339,19 +390,40 @@ if(PS3)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(UNIX)
|
if(UNIX)
|
||||||
# linux_dedicated
|
if(TORQUE_DEDICATED)
|
||||||
addPath("${srcDir}/windowManager/dedicated")
|
addPath("${srcDir}/windowManager/dedicated")
|
||||||
# linux
|
# ${srcDir}/platformX86UNIX/*.client.* files are not needed
|
||||||
addPath("${srcDir}/platformX86UNIX")
|
# @todo: move to separate file
|
||||||
|
file( GLOB tmp_files
|
||||||
|
${srcDir}/platformX86UNIX/*.cpp
|
||||||
|
${srcDir}/platformX86UNIX/*.c
|
||||||
|
${srcDir}/platformX86UNIX/*.cc
|
||||||
|
${srcDir}/platformX86UNIX/*.h )
|
||||||
|
file( GLOB tmp_remove_files ${srcDir}/platformX86UNIX/*client.* )
|
||||||
|
LIST( REMOVE_ITEM tmp_files ${tmp_remove_files} )
|
||||||
|
foreach( f ${tmp_files} )
|
||||||
|
addFile( ${f} )
|
||||||
|
endforeach()
|
||||||
|
else()
|
||||||
|
addPath("${srcDir}/platformX86UNIX")
|
||||||
|
endif()
|
||||||
|
|
||||||
addPath("${srcDir}/platformX86UNIX/threads")
|
addPath("${srcDir}/platformX86UNIX/threads")
|
||||||
addPath("${srcDir}/platformPOSIX")
|
addPath("${srcDir}/platformPOSIX")
|
||||||
addPath("${srcDir}/gfx/gl")
|
endif()
|
||||||
addPath("${srcDir}/gfx/gl/ggl")
|
|
||||||
addPath("${srcDir}/gfx/gl/ggl/x11") # This one is not yet implemented!
|
if( TORQUE_OPENGL )
|
||||||
addPath("${srcDir}/gfx/gl/ggl/generated")
|
|
||||||
addPath("${srcDir}/shaderGen/GLSL")
|
addPath("${srcDir}/shaderGen/GLSL")
|
||||||
addPath("${srcDir}/terrain/glsl")
|
if( TORQUE_OPENGL AND NOT TORQUE_DEDICATED )
|
||||||
addPath("${srcDir}/forest/glsl")
|
addPath("${srcDir}/gfx/gl")
|
||||||
|
addPath("${srcDir}/gfx/gl/tGL")
|
||||||
|
addPath("${srcDir}/terrain/glsl")
|
||||||
|
addPath("${srcDir}/forest/glsl")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(WIN32 AND NOT TORQUE_SDL)
|
||||||
|
addPath("${srcDir}/gfx/gl/win32")
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
@ -408,6 +480,15 @@ if(WIN32)
|
||||||
addLib("${TORQUE_EXTERNAL_LIBS}")
|
addLib("${TORQUE_EXTERNAL_LIBS}")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if(UNIX)
|
||||||
|
# copy pasted from T3D build system, some might not be needed
|
||||||
|
set(TORQUE_EXTERNAL_LIBS "dl Xxf86vm Xext X11 Xft stdc++ pthread GL" CACHE STRING "external libs to link against")
|
||||||
|
mark_as_advanced(TORQUE_EXTERNAL_LIBS)
|
||||||
|
|
||||||
|
string(REPLACE " " ";" TORQUE_EXTERNAL_LIBS_LIST ${TORQUE_EXTERNAL_LIBS})
|
||||||
|
addLib( "${TORQUE_EXTERNAL_LIBS_LIST}" )
|
||||||
|
endif()
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# Always enabled Definitions
|
# Always enabled Definitions
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
@ -431,6 +512,10 @@ addDef(PCRE_STATIC)
|
||||||
addDef(_CRT_SECURE_NO_WARNINGS)
|
addDef(_CRT_SECURE_NO_WARNINGS)
|
||||||
addDef(_CRT_SECURE_NO_DEPRECATE)
|
addDef(_CRT_SECURE_NO_DEPRECATE)
|
||||||
|
|
||||||
|
if(UNIX)
|
||||||
|
addDef(LINUX)
|
||||||
|
endif()
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# Include Paths
|
# Include Paths
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
@ -455,6 +540,11 @@ if(WIN32)
|
||||||
set_property(TARGET ${PROJECT_NAME} APPEND PROPERTY INCLUDE_DIRECTORIES $ENV{DXSDK_DIR}/Include)
|
set_property(TARGET ${PROJECT_NAME} APPEND PROPERTY INCLUDE_DIRECTORIES $ENV{DXSDK_DIR}/Include)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if(UNIX)
|
||||||
|
addInclude("/usr/include/freetype2/freetype")
|
||||||
|
addInclude("/usr/include/freetype2")
|
||||||
|
endif()
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# Installation
|
# Installation
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue