mirror of
https://gitlab.com/OpenMW/openmw.git
synced 2025-02-13 12:40:04 +00:00
Move oengine to a static library, fixes duplicate compilation of oengine/bullet files by openmw and opencs
This commit is contained in:
parent
c7cd576002
commit
0fda1cdd53
@ -97,43 +97,6 @@ endif()
|
|||||||
# We probably support older versions than this.
|
# We probably support older versions than this.
|
||||||
cmake_minimum_required(VERSION 2.6)
|
cmake_minimum_required(VERSION 2.6)
|
||||||
|
|
||||||
# source directory: libs
|
|
||||||
|
|
||||||
set(LIBS_DIR ${CMAKE_SOURCE_DIR}/libs)
|
|
||||||
|
|
||||||
set(OENGINE_OGRE
|
|
||||||
${LIBS_DIR}/openengine/ogre/renderer.cpp
|
|
||||||
${LIBS_DIR}/openengine/ogre/lights.cpp
|
|
||||||
${LIBS_DIR}/openengine/ogre/selectionbuffer.cpp
|
|
||||||
${LIBS_DIR}/openengine/ogre/imagerotate.cpp
|
|
||||||
)
|
|
||||||
|
|
||||||
set(OENGINE_GUI
|
|
||||||
${LIBS_DIR}/openengine/gui/loglistener.cpp
|
|
||||||
${LIBS_DIR}/openengine/gui/manager.cpp
|
|
||||||
${LIBS_DIR}/openengine/gui/layout.cpp
|
|
||||||
)
|
|
||||||
|
|
||||||
set(OENGINE_BULLET
|
|
||||||
${LIBS_DIR}/openengine/bullet/BtOgre.cpp
|
|
||||||
${LIBS_DIR}/openengine/bullet/BtOgreExtras.h
|
|
||||||
${LIBS_DIR}/openengine/bullet/BtOgreGP.h
|
|
||||||
${LIBS_DIR}/openengine/bullet/BtOgrePG.h
|
|
||||||
${LIBS_DIR}/openengine/bullet/physic.cpp
|
|
||||||
${LIBS_DIR}/openengine/bullet/physic.hpp
|
|
||||||
${LIBS_DIR}/openengine/bullet/BulletShapeLoader.cpp
|
|
||||||
${LIBS_DIR}/openengine/bullet/BulletShapeLoader.h
|
|
||||||
${LIBS_DIR}/openengine/bullet/trace.cpp
|
|
||||||
${LIBS_DIR}/openengine/bullet/trace.h
|
|
||||||
|
|
||||||
)
|
|
||||||
|
|
||||||
set(OENGINE_ALL ${OENGINE_OGRE} ${OENGINE_GUI} ${OENGINE_BULLET})
|
|
||||||
source_group(libs\\openengine FILES ${OENGINE_ALL})
|
|
||||||
|
|
||||||
set(OPENMW_LIBS ${OENGINE_ALL})
|
|
||||||
set(OPENMW_LIBS_HEADER)
|
|
||||||
|
|
||||||
# Sound setup
|
# Sound setup
|
||||||
set(FFmpeg_FIND_COMPONENTS AVCODEC AVFORMAT AVUTIL SWSCALE SWRESAMPLE AVRESAMPLE)
|
set(FFmpeg_FIND_COMPONENTS AVCODEC AVFORMAT AVUTIL SWSCALE SWRESAMPLE AVRESAMPLE)
|
||||||
unset(FFMPEG_LIBRARIES CACHE)
|
unset(FFMPEG_LIBRARIES CACHE)
|
||||||
@ -275,6 +238,7 @@ include_directories("."
|
|||||||
${MYGUI_INCLUDE_DIRS}
|
${MYGUI_INCLUDE_DIRS}
|
||||||
${MYGUI_PLATFORM_INCLUDE_DIRS}
|
${MYGUI_PLATFORM_INCLUDE_DIRS}
|
||||||
${OPENAL_INCLUDE_DIR}
|
${OPENAL_INCLUDE_DIR}
|
||||||
|
${BULLET_INCLUDE_DIRS}
|
||||||
${LIBS_DIR}
|
${LIBS_DIR}
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -572,6 +536,10 @@ if(WIN32)
|
|||||||
include(CPack)
|
include(CPack)
|
||||||
endif(WIN32)
|
endif(WIN32)
|
||||||
|
|
||||||
|
# Libs
|
||||||
|
include_directories(libs)
|
||||||
|
add_subdirectory(libs/openengine)
|
||||||
|
|
||||||
# Extern
|
# Extern
|
||||||
add_subdirectory (extern/shiny)
|
add_subdirectory (extern/shiny)
|
||||||
add_subdirectory (extern/ogre-ffmpeg-videoplayer)
|
add_subdirectory (extern/ogre-ffmpeg-videoplayer)
|
||||||
|
@ -164,7 +164,8 @@ qt4_wrap_ui(OPENCS_UI_HDR ${OPENCS_UI})
|
|||||||
qt4_wrap_cpp(OPENCS_MOC_SRC ${OPENCS_HDR_QT})
|
qt4_wrap_cpp(OPENCS_MOC_SRC ${OPENCS_HDR_QT})
|
||||||
qt4_add_resources(OPENCS_RES_SRC ${OPENCS_RES})
|
qt4_add_resources(OPENCS_RES_SRC ${OPENCS_RES})
|
||||||
|
|
||||||
include_directories(${CMAKE_CURRENT_BINARY_DIR} ${BULLET_INCLUDE_DIRS})
|
# for compiled .ui files
|
||||||
|
include_directories(${CMAKE_CURRENT_BINARY_DIR})
|
||||||
|
|
||||||
if(APPLE)
|
if(APPLE)
|
||||||
set (OPENCS_MAC_ICON ${CMAKE_SOURCE_DIR}/files/mac/openmw-cs.icns)
|
set (OPENCS_MAC_ICON ${CMAKE_SOURCE_DIR}/files/mac/openmw-cs.icns)
|
||||||
@ -174,7 +175,6 @@ endif(APPLE)
|
|||||||
|
|
||||||
add_executable(openmw-cs
|
add_executable(openmw-cs
|
||||||
MACOSX_BUNDLE
|
MACOSX_BUNDLE
|
||||||
${OENGINE_BULLET}
|
|
||||||
${OPENCS_SRC}
|
${OPENCS_SRC}
|
||||||
${OPENCS_UI_HDR}
|
${OPENCS_UI_HDR}
|
||||||
${OPENCS_MOC_SRC}
|
${OPENCS_MOC_SRC}
|
||||||
@ -198,6 +198,7 @@ if(APPLE)
|
|||||||
endif(APPLE)
|
endif(APPLE)
|
||||||
|
|
||||||
target_link_libraries(openmw-cs
|
target_link_libraries(openmw-cs
|
||||||
|
${OENGINE_LIBRARY}
|
||||||
${OGRE_LIBRARIES}
|
${OGRE_LIBRARIES}
|
||||||
${OGRE_Overlay_LIBRARIES}
|
${OGRE_Overlay_LIBRARIES}
|
||||||
${OGRE_STATIC_PLUGINS}
|
${OGRE_STATIC_PLUGINS}
|
||||||
|
@ -104,7 +104,6 @@ find_package(Boost REQUIRED COMPONENTS ${BOOST_COMPONENTS})
|
|||||||
|
|
||||||
if (NOT ANDROID)
|
if (NOT ANDROID)
|
||||||
add_executable(openmw
|
add_executable(openmw
|
||||||
${OPENMW_LIBS} ${OPENMW_LIBS_HEADER}
|
|
||||||
${OPENMW_FILES}
|
${OPENMW_FILES}
|
||||||
${GAME} ${GAME_HEADER}
|
${GAME} ${GAME_HEADER}
|
||||||
${APPLE_BUNDLE_RESOURCES}
|
${APPLE_BUNDLE_RESOURCES}
|
||||||
@ -112,7 +111,6 @@ if (NOT ANDROID)
|
|||||||
else ()
|
else ()
|
||||||
add_library(openmw
|
add_library(openmw
|
||||||
SHARED
|
SHARED
|
||||||
${OPENMW_LIBS} ${OPENMW_LIBS_HEADER}
|
|
||||||
${OPENMW_FILES}
|
${OPENMW_FILES}
|
||||||
${GAME} ${GAME_HEADER}
|
${GAME} ${GAME_HEADER}
|
||||||
)
|
)
|
||||||
@ -120,9 +118,10 @@ endif ()
|
|||||||
|
|
||||||
# Sound stuff - here so CMake doesn't stupidly recompile EVERYTHING
|
# Sound stuff - here so CMake doesn't stupidly recompile EVERYTHING
|
||||||
# when we change the backend.
|
# when we change the backend.
|
||||||
include_directories(${SOUND_INPUT_INCLUDES} ${BULLET_INCLUDE_DIRS})
|
include_directories(${SOUND_INPUT_INCLUDES})
|
||||||
|
|
||||||
target_link_libraries(openmw
|
target_link_libraries(openmw
|
||||||
|
${OENGINE_LIBRARY}
|
||||||
${OGRE_LIBRARIES}
|
${OGRE_LIBRARIES}
|
||||||
${OGRE_STATIC_PLUGINS}
|
${OGRE_STATIC_PLUGINS}
|
||||||
${SHINY_LIBRARIES}
|
${SHINY_LIBRARIES}
|
||||||
|
1
extern/sdl4ogre/CMakeLists.txt
vendored
1
extern/sdl4ogre/CMakeLists.txt
vendored
@ -6,6 +6,7 @@ set(SDL4OGRE_SOURCE_FILES
|
|||||||
sdlinputwrapper.cpp
|
sdlinputwrapper.cpp
|
||||||
sdlcursormanager.cpp
|
sdlcursormanager.cpp
|
||||||
sdlwindowhelper.cpp
|
sdlwindowhelper.cpp
|
||||||
|
imagerotate.cpp
|
||||||
)
|
)
|
||||||
|
|
||||||
if (APPLE)
|
if (APPLE)
|
||||||
|
@ -17,7 +17,9 @@
|
|||||||
#include <OgreViewport.h>
|
#include <OgreViewport.h>
|
||||||
|
|
||||||
using namespace Ogre;
|
using namespace Ogre;
|
||||||
using namespace OEngine::Render;
|
|
||||||
|
namespace SFO
|
||||||
|
{
|
||||||
|
|
||||||
void ImageRotate::rotate(const std::string& sourceImage, const std::string& destImage, const float angle)
|
void ImageRotate::rotate(const std::string& sourceImage, const std::string& destImage, const float angle)
|
||||||
{
|
{
|
||||||
@ -93,3 +95,5 @@ void ImageRotate::rotate(const std::string& sourceImage, const std::string& dest
|
|||||||
root->destroySceneManager(sceneMgr);
|
root->destroySceneManager(sceneMgr);
|
||||||
delete rect;
|
delete rect;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}
|
@ -3,9 +3,8 @@
|
|||||||
|
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
namespace OEngine
|
|
||||||
{
|
namespace SFO
|
||||||
namespace Render
|
|
||||||
{
|
{
|
||||||
|
|
||||||
/// Rotate an image by certain degrees and save as file, uses the GPU
|
/// Rotate an image by certain degrees and save as file, uses the GPU
|
||||||
@ -22,6 +21,5 @@ namespace Render
|
|||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
#endif
|
#endif
|
4
extern/sdl4ogre/sdlcursormanager.cpp
vendored
4
extern/sdl4ogre/sdlcursormanager.cpp
vendored
@ -7,7 +7,7 @@
|
|||||||
#include <SDL_mouse.h>
|
#include <SDL_mouse.h>
|
||||||
#include <SDL_endian.h>
|
#include <SDL_endian.h>
|
||||||
|
|
||||||
#include <openengine/ogre/imagerotate.hpp>
|
#include "imagerotate.hpp"
|
||||||
|
|
||||||
namespace SFO
|
namespace SFO
|
||||||
{
|
{
|
||||||
@ -91,7 +91,7 @@ namespace SFO
|
|||||||
|
|
||||||
// we use a render target to uncompress the DDS texture
|
// we use a render target to uncompress the DDS texture
|
||||||
// just blitting doesn't seem to work on D3D9
|
// just blitting doesn't seem to work on D3D9
|
||||||
OEngine::Render::ImageRotate::rotate(tex->getName(), tempName, -rotDegrees);
|
ImageRotate::rotate(tex->getName(), tempName, -rotDegrees);
|
||||||
|
|
||||||
Ogre::TexturePtr resultTexture = Ogre::TextureManager::getSingleton().getByName(tempName);
|
Ogre::TexturePtr resultTexture = Ogre::TextureManager::getSingleton().getByName(tempName);
|
||||||
|
|
||||||
|
33
libs/openengine/CMakeLists.txt
Normal file
33
libs/openengine/CMakeLists.txt
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
set(OENGINE_OGRE
|
||||||
|
ogre/renderer.cpp
|
||||||
|
ogre/lights.cpp
|
||||||
|
ogre/selectionbuffer.cpp
|
||||||
|
)
|
||||||
|
|
||||||
|
set(OENGINE_GUI
|
||||||
|
gui/loglistener.cpp
|
||||||
|
gui/manager.cpp
|
||||||
|
gui/layout.cpp
|
||||||
|
)
|
||||||
|
|
||||||
|
set(OENGINE_BULLET
|
||||||
|
bullet/BtOgre.cpp
|
||||||
|
bullet/BtOgreExtras.h
|
||||||
|
bullet/BtOgreGP.h
|
||||||
|
bullet/BtOgrePG.h
|
||||||
|
bullet/physic.cpp
|
||||||
|
bullet/physic.hpp
|
||||||
|
bullet/BulletShapeLoader.cpp
|
||||||
|
bullet/BulletShapeLoader.h
|
||||||
|
bullet/trace.cpp
|
||||||
|
bullet/trace.h
|
||||||
|
)
|
||||||
|
|
||||||
|
set(OENGINE_ALL ${OENGINE_OGRE} ${OENGINE_GUI} ${OENGINE_BULLET})
|
||||||
|
|
||||||
|
set(OENGINE_LIBRARY "oengine")
|
||||||
|
set(OENGINE_LIBRARY ${OENGINE_LIBRARY} PARENT_SCOPE)
|
||||||
|
|
||||||
|
source_group(oengine FILES ${OENGINE_ALL})
|
||||||
|
|
||||||
|
add_library(${OENGINE_LIBRARY} STATIC ${OENGINE_ALL})
|
Loading…
x
Reference in New Issue
Block a user