mirror of
https://github.com/TES3MP/openmw-tes3mp.git
synced 2025-01-30 03:15:32 +00:00
Reduced server dependings
This commit is contained in:
parent
1f0d6eba80
commit
ed3dc8ca7b
2 changed files with 75 additions and 62 deletions
127
CMakeLists.txt
127
CMakeLists.txt
|
@ -155,10 +155,11 @@ else()
|
|||
cmake_minimum_required(VERSION 2.6)
|
||||
endif()
|
||||
|
||||
# Sound setup
|
||||
find_package(FFmpeg REQUIRED COMPONENTS AVCODEC AVFORMAT AVUTIL SWSCALE SWRESAMPLE)
|
||||
# Required for building the FFmpeg headers
|
||||
add_definitions(-D__STDC_CONSTANT_MACROS)
|
||||
IF(BUILD_OPENMW OR BUILD_OPENCS)
|
||||
# Sound setup
|
||||
find_package(FFmpeg REQUIRED COMPONENTS AVCODEC AVFORMAT AVUTIL SWSCALE SWRESAMPLE)
|
||||
# Required for building the FFmpeg headers
|
||||
add_definitions(-D__STDC_CONSTANT_MACROS)
|
||||
|
||||
# TinyXML
|
||||
option(USE_SYSTEM_TINYXML "Use system TinyXML library instead of internal." OFF)
|
||||
|
@ -167,6 +168,7 @@ if (USE_SYSTEM_TINYXML)
|
|||
add_definitions (-DTIXML_USE_STL)
|
||||
include_directories(SYSTEM ${TinyXML_INCLUDE_DIRS})
|
||||
endif()
|
||||
ENDIF(BUILD_OPENMW OR BUILD_OPENCS)
|
||||
|
||||
# Platform specific
|
||||
if (WIN32)
|
||||
|
@ -216,77 +218,80 @@ IF(BOOST_STATIC)
|
|||
set(Boost_USE_STATIC_LIBS ON)
|
||||
endif()
|
||||
|
||||
find_package(OpenSceneGraph 3.3.4 REQUIRED osgDB osgViewer osgText osgGA osgAnimation osgParticle osgUtil osgFX)
|
||||
IF(BUILD_OPENMW OR BUILD_OPENCS)
|
||||
find_package(OpenSceneGraph 3.3.4 REQUIRED osgDB osgViewer osgText osgGA osgAnimation osgParticle osgUtil osgFX)
|
||||
|
||||
include_directories(${OPENSCENEGRAPH_INCLUDE_DIRS})
|
||||
include_directories(${OPENSCENEGRAPH_INCLUDE_DIRS})
|
||||
|
||||
if(OSG_STATIC)
|
||||
macro(use_static_osg_plugin_library PLUGIN_NAME)
|
||||
set(PLUGIN_NAME_DBG ${PLUGIN_NAME}d ${PLUGIN_NAME}D ${PLUGIN_NAME}_d ${PLUGIN_NAME}_D ${PLUGIN_NAME}_debug ${PLUGIN_NAME})
|
||||
if(OSG_STATIC)
|
||||
macro(use_static_osg_plugin_library PLUGIN_NAME)
|
||||
set(PLUGIN_NAME_DBG ${PLUGIN_NAME}d ${PLUGIN_NAME}D ${PLUGIN_NAME}_d ${PLUGIN_NAME}_D ${PLUGIN_NAME}_debug ${PLUGIN_NAME})
|
||||
|
||||
# For now, users wishing to do a static build will need to pass the path to where the plugins reside
|
||||
# More clever logic would need to deduce the path, probably installed under <OpenSceneGraph>/lib/osgPlugins-<X.X.X>
|
||||
include(FindPkgMacros)
|
||||
find_library(${PLUGIN_NAME}_LIBRARY_REL NAMES ${PLUGIN_NAME} HINTS ${OSG_PLUGIN_LIB_SEARCH_PATH})
|
||||
find_library(${PLUGIN_NAME}_LIBRARY_DBG NAMES ${PLUGIN_NAME_DBG} HINTS ${OSG_PLUGIN_LIB_SEARCH_PATH})
|
||||
make_library_set(${PLUGIN_NAME}_LIBRARY)
|
||||
# For now, users wishing to do a static build will need to pass the path to where the plugins reside
|
||||
# More clever logic would need to deduce the path, probably installed under <OpenSceneGraph>/lib/osgPlugins-<X.X.X>
|
||||
include(FindPkgMacros)
|
||||
find_library(${PLUGIN_NAME}_LIBRARY_REL NAMES ${PLUGIN_NAME} HINTS ${OSG_PLUGIN_LIB_SEARCH_PATH})
|
||||
find_library(${PLUGIN_NAME}_LIBRARY_DBG NAMES ${PLUGIN_NAME_DBG} HINTS ${OSG_PLUGIN_LIB_SEARCH_PATH})
|
||||
make_library_set(${PLUGIN_NAME}_LIBRARY)
|
||||
|
||||
if("${${PLUGIN_NAME}_LIBRARY}" STREQUAL "")
|
||||
message(FATAL_ERROR "Unable to find static OpenSceneGraph plugin: ${PLUGIN_NAME}")
|
||||
endif()
|
||||
if("${${PLUGIN_NAME}_LIBRARY}" STREQUAL "")
|
||||
message(FATAL_ERROR "Unable to find static OpenSceneGraph plugin: ${PLUGIN_NAME}")
|
||||
endif()
|
||||
|
||||
set(OPENSCENEGRAPH_LIBRARIES ${OPENSCENEGRAPH_LIBRARIES} ${${PLUGIN_NAME}_LIBRARY})
|
||||
endmacro()
|
||||
set(OPENSCENEGRAPH_LIBRARIES ${OPENSCENEGRAPH_LIBRARIES} ${${PLUGIN_NAME}_LIBRARY})
|
||||
endmacro()
|
||||
|
||||
add_definitions(-DOSG_LIBRARY_STATIC)
|
||||
add_definitions(-DOSG_LIBRARY_STATIC)
|
||||
|
||||
set(PLUGIN_LIST
|
||||
osgdb_png # depends on libpng, zlib
|
||||
osgdb_tga
|
||||
osgdb_dds
|
||||
osgdb_jpeg # depends on libjpeg
|
||||
)
|
||||
set(PLUGIN_LIST
|
||||
osgdb_png # depends on libpng, zlib
|
||||
osgdb_tga
|
||||
osgdb_dds
|
||||
osgdb_jpeg # depends on libjpeg
|
||||
)
|
||||
|
||||
foreach(PLUGIN ${PLUGIN_LIST})
|
||||
use_static_osg_plugin_library(${PLUGIN})
|
||||
endforeach()
|
||||
foreach(PLUGIN ${PLUGIN_LIST})
|
||||
use_static_osg_plugin_library(${PLUGIN})
|
||||
endforeach()
|
||||
|
||||
# OSG static plugins need to linked against their respective dependencies
|
||||
set(PLUGIN_DEPS_LIST
|
||||
PNG # needed by osgdb_png
|
||||
ZLIB # needed by osgdb_png
|
||||
JPEG # needed by osgdb_jpeg
|
||||
)
|
||||
# OSG static plugins need to linked against their respective dependencies
|
||||
set(PLUGIN_DEPS_LIST
|
||||
PNG # needed by osgdb_png
|
||||
ZLIB # needed by osgdb_png
|
||||
JPEG # needed by osgdb_jpeg
|
||||
)
|
||||
|
||||
macro(use_static_osg_plugin_dep DEPENDENCY)
|
||||
find_package(${DEPENDENCY} REQUIRED)
|
||||
macro(use_static_osg_plugin_dep DEPENDENCY)
|
||||
find_package(${DEPENDENCY} REQUIRED)
|
||||
|
||||
set(OPENSCENEGRAPH_LIBRARIES ${OPENSCENEGRAPH_LIBRARIES} ${${DEPENDENCY}_LIBRARIES})
|
||||
endmacro()
|
||||
foreach(DEPENDENCY ${PLUGIN_DEPS_LIST})
|
||||
use_static_osg_plugin_dep(${DEPENDENCY})
|
||||
endforeach()
|
||||
endif()
|
||||
set(OPENSCENEGRAPH_LIBRARIES ${OPENSCENEGRAPH_LIBRARIES} ${${DEPENDENCY}_LIBRARIES})
|
||||
endmacro()
|
||||
foreach(DEPENDENCY ${PLUGIN_DEPS_LIST})
|
||||
use_static_osg_plugin_dep(${DEPENDENCY})
|
||||
endforeach()
|
||||
endif()
|
||||
|
||||
if(QT_STATIC)
|
||||
if(WIN32)
|
||||
if(DESIRED_QT_VERSION MATCHES 4)
|
||||
# QtCore needs WSAAsyncSelect from Ws2_32.lib
|
||||
set(QT_QTCORE_LIBRARY ${QT_QTCORE_LIBRARY} Ws2_32.lib)
|
||||
message("QT_QTCORE_LIBRARY: ${QT_QTCORE_LIBRARY}")
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
if(QT_STATIC)
|
||||
if(WIN32)
|
||||
if(DESIRED_QT_VERSION MATCHES 4)
|
||||
# QtCore needs WSAAsyncSelect from Ws2_32.lib
|
||||
set(QT_QTCORE_LIBRARY ${QT_QTCORE_LIBRARY} Ws2_32.lib)
|
||||
message("QT_QTCORE_LIBRARY: ${QT_QTCORE_LIBRARY}")
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
find_package(MyGUI REQUIRED)
|
||||
if (${MYGUI_VERSION} VERSION_LESS "3.2.1")
|
||||
message(FATAL_ERROR "OpenMW requires MyGUI 3.2.1 or later, please install the latest version from http://mygui.info")
|
||||
endif()
|
||||
find_package(MyGUI REQUIRED)
|
||||
if (${MYGUI_VERSION} VERSION_LESS "3.2.1")
|
||||
message(FATAL_ERROR "OpenMW requires MyGUI 3.2.1 or later, please install the latest version from http://mygui.info")
|
||||
endif()
|
||||
|
||||
find_package(SDL2 REQUIRED)
|
||||
find_package(OpenAL REQUIRED)
|
||||
find_package(Bullet 283 REQUIRED COMPONENTS BulletCollision LinearMath)
|
||||
ENDIF(BUILD_OPENMW OR BUILD_OPENCS)
|
||||
|
||||
find_package(Boost REQUIRED COMPONENTS ${BOOST_COMPONENTS})
|
||||
find_package(SDL2 REQUIRED)
|
||||
find_package(OpenAL REQUIRED)
|
||||
find_package(Bullet 283 REQUIRED COMPONENTS BulletCollision LinearMath)
|
||||
|
||||
include_directories("."
|
||||
SYSTEM
|
||||
|
@ -556,11 +561,13 @@ if(WIN32)
|
|||
endif(WIN32)
|
||||
|
||||
# Extern
|
||||
IF(BUILD_OPENMW OR BUILD_OPENCS)
|
||||
add_subdirectory (extern/osg-ffmpeg-videoplayer)
|
||||
add_subdirectory (extern/oics)
|
||||
if (USE_QT)
|
||||
add_subdirectory (extern/osgQt)
|
||||
endif()
|
||||
ENDIF(BUILD_OPENMW OR BUILD_OPENCS)
|
||||
|
||||
# Components
|
||||
add_subdirectory (components)
|
||||
|
|
|
@ -39,7 +39,8 @@ add_component_dir (bsa
|
|||
add_component_dir (vfs
|
||||
manager archive bsaarchive filesystemarchive registerarchives
|
||||
)
|
||||
|
||||
|
||||
IF(BUILD_OPENMW OR BUILD_OPENCS)
|
||||
add_component_dir (resource
|
||||
scenemanager keyframemanager imagemanager bulletshapemanager bulletshape niffilemanager objectcache multiobjectcache resourcesystem resourcemanager
|
||||
)
|
||||
|
@ -64,6 +65,7 @@ add_component_dir (nifosg
|
|||
add_component_dir (nifbullet
|
||||
bulletnifloader
|
||||
)
|
||||
ENDIF(BUILD_OPENMW OR BUILD_OPENCS)
|
||||
|
||||
add_component_dir (to_utf8
|
||||
to_utf8
|
||||
|
@ -120,7 +122,8 @@ add_component_dir (terrain
|
|||
add_component_dir (loadinglistener
|
||||
loadinglistener
|
||||
)
|
||||
|
||||
|
||||
IF(BUILD_OPENMW OR BUILD_OPENCS)
|
||||
add_component_dir (myguiplatform
|
||||
myguirendermanager myguidatamanager myguiplatform myguitexture myguiloglistener additivelayer scalinglayer
|
||||
)
|
||||
|
@ -136,6 +139,7 @@ add_component_dir (fontloader
|
|||
add_component_dir (sdlutil
|
||||
sdlgraphicswindow imagetosurface sdlinputwrapper sdlvideowrapper OISCompat events sdlcursormanager
|
||||
)
|
||||
ENDIF(BUILD_OPENMW OR BUILD_OPENCS)
|
||||
|
||||
add_component_dir (version
|
||||
version
|
||||
|
@ -155,6 +159,7 @@ add_component_dir (fallback
|
|||
set (ESM_UI ${CMAKE_SOURCE_DIR}/files/ui/contentselector.ui
|
||||
)
|
||||
|
||||
IF(BUILD_OPENMW OR BUILD_OPENCS)
|
||||
if (USE_QT)
|
||||
add_component_qt_dir (contentselector
|
||||
model/modelitem model/esmfile
|
||||
|
@ -181,6 +186,7 @@ if (USE_QT)
|
|||
QT5_WRAP_CPP(MOC_SRCS ${COMPONENT_MOC_FILES})
|
||||
endif()
|
||||
endif()
|
||||
ENDIF(BUILD_OPENMW OR BUILD_OPENCS)
|
||||
|
||||
if (CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
|
||||
if("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "x86_64" AND NOT APPLE)
|
||||
|
|
Loading…
Reference in a new issue