diff --git a/INSTALL.txt b/INSTALL.txt index 9e21d4e94..be6eb2e92 100644 --- a/INSTALL.txt +++ b/INSTALL.txt @@ -243,14 +243,14 @@ The Speed Dreams Team. Enable debug symbols even in Release builds (def: OFF) (see http://sourceforge.net/p/speed-dreams/tickets/356). - - OPTION_SDL2:BOOL : - Use SDL2 for Window/Input management (def: ON) - Set to OFF to use SDL1. - - OPTION_SDL_JOYSTICK:BOOL : - Use SDLx to read the joystick. (def: ON) + Use SDL to read the joystick. (def: ON) Set to OFF to use PLIB for joystick input. + - OPTION_SDL_FORCEFEEDBACK:BOOL : + Enable SDL Haptics for forcefeedback effects (def: ON) + Requires OPTION_SDL_JOYSTICK to be ON + - OPTION_WEBSERVER:BOOL : Enable the WIP Webserver/Laplogger (def: ON) (see http://sourceforge.net/p/speed-dreams/tickets/912). diff --git a/cmake/checks.cmake b/cmake/checks.cmake index 7aeac9aeb..720804445 100644 --- a/cmake/checks.cmake +++ b/cmake/checks.cmake @@ -240,40 +240,29 @@ MACRO(CHECK_LIBRARIES) # SDL2 - IF(OPTION_SDL2) - IF(NOT SDL2_FOUND) - Find_Package(SDL2) - ENDIF() + IF(NOT SDL2_FOUND) + Find_Package(SDL2) + ENDIF() - IF(SDL2_FOUND) - SET(HAVE_LIBSDL2 1) - MESSAGE(STATUS "Looking for library SDL2 - found") - ELSE(SDL2_FOUND) - MESSAGE(STATUS "Looking for library SDL2 - NOT found") - ENDIF(SDL2_FOUND) + IF(SDL2_FOUND) + SET(HAVE_LIBSDL2 1) + MESSAGE(STATUS "Looking for library SDL2 - found") + ELSE(SDL2_FOUND) + MESSAGE(STATUS "Looking for library SDL2 - NOT found") + ENDIF(SDL2_FOUND) - IF(NOT SDL2_MIXER_FOUND) - Find_Package(SDL2_mixer) - ENDIF() + # SDL2_Mixer + IF(NOT SDL2_MIXER_FOUND) + Find_Package(SDL2_mixer) + ENDIF() - IF(SDL2_MIXER_FOUND) - SET(HAVE_LIBSDL2 1) - MESSAGE(STATUS "Looking for library SDL2_mixer - found") - ELSE(SDL2_MIXER_FOUND) - MESSAGE(STATUS "Looking for library SDL2_mixer - NOT found") - ENDIF(SDL2_MIXER_FOUND) + IF(SDL2_MIXER_FOUND) + SET(HAVE_LIBSDL2 1) + MESSAGE(STATUS "Looking for library SDL2_mixer - found") + ELSE(SDL2_MIXER_FOUND) + MESSAGE(STATUS "Looking for library SDL2_mixer - NOT found") + ENDIF(SDL2_MIXER_FOUND) - ELSE(OPTION_SDL2) - # SDL 1.x - Find_Package(SDL) - - IF(SDL_FOUND) - SET(HAVE_LIBSDL 1) - MESSAGE(STATUS "Looking for library SDL - found") - ELSE(SDL_FOUND) - MESSAGE(STATUS "Looking for library SDL - NOT found") - ENDIF(SDL_FOUND) - ENDIF(OPTION_SDL2) IF(OPTION_WEBSERVER) # CURL diff --git a/cmake/customthirdparty.cmake b/cmake/customthirdparty.cmake index 572e2597a..6f34cc6cc 100644 --- a/cmake/customthirdparty.cmake +++ b/cmake/customthirdparty.cmake @@ -88,18 +88,10 @@ ENDMACRO(_FIND_3RDPARTY_DEPENDENCY DEP_NAME INCLUDE_FILE INCLUDE_SUBDIRS LIBRARY MACRO(_FIND_3RDPARTY_DEPENDENCIES ROOT_DIR) # SDL. - IF(OPTION_SDL2) - _FIND_3RDPARTY_DEPENDENCY(SDL2MAIN sdl_main.h "SDL2" "sdl2main" "${ROOT_DIR}" "") - _FIND_3RDPARTY_DEPENDENCY(SDL2 sdl.h "SDL2" "sdl2" "${ROOT_DIR}" "") - _FIND_3RDPARTY_DEPENDENCY(SDL2_MIXER SDL_mixer.h "" "SDL2_mixer" "${ROOT_DIR}" "") - - #IF(SDL_FOUND) # Dirty hack to make FindPackage(SDL) work later. - # SET(SDL_LIBRARY_TEMP ${SDL_LIBRARY} CACHE FILEPATH "") - #ENDIF(SDL_FOUND) - ELSE() - _FIND_3RDPARTY_DEPENDENCY(SDLMAIN sdl_main.h "SDL" "sdlmain" "${ROOT_DIR}" "") - _FIND_3RDPARTY_DEPENDENCY(SDL sdl.h "SDL" "sdl" "${ROOT_DIR}" "") - ENDIF() + _FIND_3RDPARTY_DEPENDENCY(SDL2MAIN sdl_main.h "SDL2" "sdl2main" "${ROOT_DIR}" "") + _FIND_3RDPARTY_DEPENDENCY(SDL2 sdl.h "SDL2" "sdl2" "${ROOT_DIR}" "") + _FIND_3RDPARTY_DEPENDENCY(SDL2_MIXER SDL_mixer.h "" "SDL2_mixer" "${ROOT_DIR}" "") + # PLib. _FIND_3RDPARTY_DEPENDENCY(PLIB plib/sg.h "" "sg;plibsg" ${ROOT_DIR} "") @@ -319,16 +311,11 @@ MACRO(SD_INSTALL_CUSTOM_3RDPARTY TARGET_NAME) _FIND_3RDPARTY_DLL("${VORBISFILE_LIBRARY}" "vorbisfile;libvorbisfile;libvorbisfile-3" "" _DLL_PATHNAME) LIST(APPEND _THIRDPARTY_DLL_PATHNAMES "${_DLL_PATHNAME}") + _FIND_3RDPARTY_DLL("${SDL2_LIBRARY}" "SDL2" ";lib" _DLL_PATHNAME) + LIST(APPEND _THIRDPARTY_DLL_PATHNAMES "${_DLL_PATHNAME}") - IF(OPTION_SDL2) - _FIND_3RDPARTY_DLL("${SDL2_LIBRARY}" "SDL2" ";lib" _DLL_PATHNAME) - LIST(APPEND _THIRDPARTY_DLL_PATHNAMES "${_DLL_PATHNAME}") - _FIND_3RDPARTY_DLL("${SDL2_MIXER_LIBRARY}" "SDL2_mixer" ";lib" _DLL_PATHNAME) - LIST(APPEND _THIRDPARTY_DLL_PATHNAMES "${_DLL_PATHNAME}") - ELSE() - _FIND_3RDPARTY_DLL("${SDL_LIBRARY}" "SDL" ";lib" _DLL_PATHNAME) - LIST(APPEND _THIRDPARTY_DLL_PATHNAMES "${_DLL_PATHNAME}") - ENDIF() + _FIND_3RDPARTY_DLL("${SDL2_MIXER_LIBRARY}" "SDL2_mixer" ";lib" _DLL_PATHNAME) + LIST(APPEND _THIRDPARTY_DLL_PATHNAMES "${_DLL_PATHNAME}") IF(OPTION_3RDPARTY_EXPAT) diff --git a/cmake/install.cmake b/cmake/install.cmake index 48cd28cc4..c942cb51c 100644 --- a/cmake/install.cmake +++ b/cmake/install.cmake @@ -95,13 +95,8 @@ MACRO(SD_UPDATE_SETTINGS_VERSION) LIST(APPEND _DLLS_TO_INSTALL ${_DLL_PATHNAME}) ENDIF() - IF(OPTION_SDL2) - FIND_PACKAGE(SDL2) - SET(_LIB_PATHNAME "${SDL2_LIBRARY}") - ELSE(OPTION_SDL2) - FIND_PACKAGE(SDL) - SET(_LIB_PATHNAME "${SDL_LIBRARY}") - ENDIF(OPTION_SDL2) + FIND_PACKAGE(SDL2) + SET(_LIB_PATHNAME "${SDL2_LIBRARY}") IF(MINGW) # Multiple lib specs fuss ... find the one diff --git a/cmake/options.cmake b/cmake/options.cmake index b7a0c5264..4b1ea9e47 100644 --- a/cmake/options.cmake +++ b/cmake/options.cmake @@ -82,9 +82,8 @@ MACRO(ADD_SD_COMPILE_OPTIONS) SET(OPTION_HUDDEBUG false CACHE BOOL "Build with HUD Debug in OsgGraph") - SET(OPTION_SDL2 true CACHE BOOL "Build with SDL2 instead of SDL 1.2") SET(OPTION_SDL_JOYSTICK true CACHE BOOL "Use SDL for Joystick instead of PLIB") - CMAKE_DEPENDENT_OPTION(OPTION_SDL_FORCEFEEDBACK "Use SDL2 Haptics" true "OPTION_SDL_JOYSTICK;OPTION_SDL2" false) + CMAKE_DEPENDENT_OPTION(OPTION_SDL_FORCEFEEDBACK "Use SDL2 Haptics" true "OPTION_SDL_JOYSTICK" false) SET(OPTION_WEBSERVER true CACHE BOOL "Build with WebServer functionality") diff --git a/cmake/thirdpartydeps.cmake b/cmake/thirdpartydeps.cmake index 02ea95567..6652d232e 100644 --- a/cmake/thirdpartydeps.cmake +++ b/cmake/thirdpartydeps.cmake @@ -127,33 +127,6 @@ MACRO(ADD_OSG_LIBRARY TARGET) ENDMACRO(ADD_OSG_LIBRARY TARGET) -MACRO(ADD_SDL_INCLUDEDIR) - - FIND_PACKAGE(SDL) - - IF(SDL_FOUND) - INCLUDE_DIRECTORIES(${SDL_INCLUDE_DIR}) - ELSE(SDL_FOUND) - MESSAGE(FATAL_ERROR "Cannot find SDL header files") - ENDIF(SDL_FOUND) - -ENDMACRO(ADD_SDL_INCLUDEDIR) - -MACRO(ADD_SDL_LIBRARY TARGET) - - FIND_PACKAGE(SDL) - - IF(SDL_FOUND) - IF(SDLMAIN_LIBRARY) - TARGET_LINK_LIBRARIES(${TARGET} ${SDLMAIN_LIBRARY}) - ENDIF(SDLMAIN_LIBRARY) - TARGET_LINK_LIBRARIES(${TARGET} ${SDL_LIBRARY}) - ELSE(SDL_FOUND) - MESSAGE(FATAL_ERROR "Cannot find SDL library") - ENDIF(SDL_FOUND) - -ENDMACRO(ADD_SDL_LIBRARY TARGET) - MACRO(ADD_SDL2_INCLUDEDIR) FIND_PACKAGE(SDL2) diff --git a/src/drivers/networkhuman/CMakeLists.txt b/src/drivers/networkhuman/CMakeLists.txt index 18c568821..368ee2b6e 100644 --- a/src/drivers/networkhuman/CMakeLists.txt +++ b/src/drivers/networkhuman/CMakeLists.txt @@ -14,11 +14,8 @@ ENDIF(OPTION_CLIENT_SERVER) ADD_SDLIB_INCLUDEDIR(portability tgfclient ${NETWORKING_INC}) -IF(OPTION_SDL2) - ADD_SDL2_INCLUDEDIR() -ELSE(OPTION_SDL2) - ADD_SDL_INCLUDEDIR() -ENDIF(OPTION_SDL2) + +ADD_SDL2_INCLUDEDIR() ROBOT_MODULE(NAME ${ROBOT_NAME} VERSION ${VERSION} SOVERSION 0.0.0 INTERFACE ${ROBOT_INTERFACE} diff --git a/src/libs/ephemeris/CMakeLists.txt b/src/libs/ephemeris/CMakeLists.txt index c938a6dd8..5079f023c 100644 --- a/src/libs/ephemeris/CMakeLists.txt +++ b/src/libs/ephemeris/CMakeLists.txt @@ -12,11 +12,8 @@ SET(EPHEMERIS_HEADERS celestialbody.h ephemeris.h jupiter.h mars.h mercury.h ADD_SDLIB_INCLUDEDIR(portability math) ADD_PLIB_INCLUDEDIR() -IF(OPTION_SDL2) - ADD_SDL2_INCLUDEDIR() -ELSE(OPTION_SDL2) - ADD_SDL_INCLUDEDIR() -ENDIF(OPTION_SDL2) + +ADD_SDL2_INCLUDEDIR() IF(WIN32) # DLL export stuff under Windows (to avoid .def file) diff --git a/src/libs/robottools/CMakeLists.txt b/src/libs/robottools/CMakeLists.txt index 6b164e0b6..8b1cd9930 100644 --- a/src/libs/robottools/CMakeLists.txt +++ b/src/libs/robottools/CMakeLists.txt @@ -5,11 +5,7 @@ INCLUDE(../../../cmake/macros.cmake) ADD_INTERFACE_INCLUDEDIR() ADD_SDLIB_INCLUDEDIR(portability tgf math tgfclient) -IF(OPTION_SDL2) - ADD_SDL2_INCLUDEDIR() -ELSE(OPTION_SDL2) - ADD_SDL_INCLUDEDIR() -ENDIF(OPTION_SDL2) +ADD_SDL2_INCLUDEDIR() ADD_PLIB_INCLUDEDIR() diff --git a/src/libs/tgf/CMakeLists.txt b/src/libs/tgf/CMakeLists.txt index 10000cba3..6f7e63f47 100644 --- a/src/libs/tgf/CMakeLists.txt +++ b/src/libs/tgf/CMakeLists.txt @@ -2,11 +2,8 @@ INCLUDE(../../../cmake/macros.cmake) #PROJECT(tgf) -IF(OPTION_SDL2) - ADD_SDL2_INCLUDEDIR() -ELSE(OPTION_SDL2) - ADD_SDL_INCLUDEDIR() -ENDIF(OPTION_SDL2) +ADD_SDL2_INCLUDEDIR() + ADD_EXPAT_INCLUDEDIR() ADD_SDLIB_INCLUDEDIR(txml portability) @@ -48,11 +45,9 @@ ENDIF(CMAKE_SKIP_RPATH OR CMAKE_SKIP_BUILD_RPATH) ADD_SDLIB_LIBRARY(tgf portability txml) # txml ignored if OPTION_3RDPARTY_EXPAT ADD_DL_LIBRARY(tgf) -IF(OPTION_SDL2) - ADD_SDL2_LIBRARY(tgf) -ELSE(OPTION_SDL2) - ADD_SDL_LIBRARY(tgf) -ENDIF(OPTION_SDL2) + +ADD_SDL2_LIBRARY(tgf) + ADD_EXPAT_LIBRARY(tgf) # Ignored if not OPTION_3RDPARTY_EXPAT IF(WIN32) diff --git a/src/libs/tgfclient/CMakeLists.txt b/src/libs/tgfclient/CMakeLists.txt index 43990ece9..4ff78e5dd 100644 --- a/src/libs/tgfclient/CMakeLists.txt +++ b/src/libs/tgfclient/CMakeLists.txt @@ -4,12 +4,10 @@ INCLUDE(../../../cmake/macros.cmake) ADD_INTERFACE_INCLUDEDIR() ADD_SDLIB_INCLUDEDIR(tgf math portability) -IF(OPTION_SDL2) - ADD_SDL2_INCLUDEDIR() - ADD_SDL2_MIXER_INCLUDEDIR() -ELSE(OPTION_SDL2) - ADD_SDL_INCLUDEDIR() -ENDIF(OPTION_SDL2) + +ADD_SDL2_INCLUDEDIR() +ADD_SDL2_MIXER_INCLUDEDIR() + ADD_JPEG_INCLUDEDIR() ADD_PLIB_INCLUDEDIR() IF(OPTION_WEBSERVER) @@ -81,12 +79,9 @@ ENDIF(OPENGL_FOUND) ADD_PLIB_LIBRARY(tgfclient ul sg js) -IF(OPTION_SDL2) - ADD_SDL2_LIBRARY(tgfclient) - ADD_SDL2_MIXER_LIBRARY(tgfclient) -ELSE(OPTION_SDL2) - ADD_SDL_LIBRARY(tgfclient) -ENDIF(OPTION_SDL2) +ADD_SDL2_LIBRARY(tgfclient) +ADD_SDL2_MIXER_LIBRARY(tgfclient) + IF(WIN32) #joystick library diff --git a/src/main/CMakeLists.txt b/src/main/CMakeLists.txt index 5b42681a4..78b5a7032 100644 --- a/src/main/CMakeLists.txt +++ b/src/main/CMakeLists.txt @@ -12,11 +12,7 @@ ENDIF(MSVC) ADD_INTERFACE_INCLUDEDIR() ADD_SDLIB_INCLUDEDIR(tgf tgfclient tgfdata math portability) -IF(OPTION_SDL2) - ADD_SDL2_INCLUDEDIR() -ELSE(OPTION_SDL2) - ADD_SDL_INCLUDEDIR() -ENDIF(OPTION_SDL2) +ADD_SDL2_INCLUDEDIR() ADD_PLIB_INCLUDEDIR() diff --git a/src/modules/csnetworking/CMakeLists.txt b/src/modules/csnetworking/CMakeLists.txt index 5ebf53ffd..7297d0425 100644 --- a/src/modules/csnetworking/CMakeLists.txt +++ b/src/modules/csnetworking/CMakeLists.txt @@ -19,11 +19,7 @@ SD_ADD_LIBRARY(csnetworking SHARED ${SD_CSNETWORK_SOURCES} ${SD_CSNETWORK_HEADER ADD_INTERFACE_INCLUDEDIR() -IF(OPTION_SDL2) - ADD_SDL2_INCLUDEDIR() -ELSE(OPTION_SDL2) - ADD_SDL_INCLUDEDIR() -ENDIF(OPTION_SDL2) +ADD_SDL2_INCLUDEDIR() ADD_SDLIB_INCLUDEDIR(csnetworking portability tgf math) @@ -31,12 +27,7 @@ ADD_PLIB_INCLUDEDIR() ADD_ENET_INCLUDEDIR() ADD_PLIB_LIBRARY(csnetworking ul sg) ADD_ENET_LIBRARY(csnetworking) - -IF(OPTION_SDL2) - ADD_SDL2_LIBRARY(csnetworking) -ELSE(OPTION_SDL2) - ADD_SDL_LIBRARY(csnetworking) -ENDIF(OPTION_SDL2) +ADD_SDL2_LIBRARY(csnetworking) IF(WIN32) TARGET_LINK_LIBRARIES(csnetworking Winmm ws2_32) diff --git a/src/modules/graphic/osggraph/CMakeLists.txt b/src/modules/graphic/osggraph/CMakeLists.txt index 0e75c3f7d..6ab08114f 100644 --- a/src/modules/graphic/osggraph/CMakeLists.txt +++ b/src/modules/graphic/osggraph/CMakeLists.txt @@ -1,156 +1,142 @@ -INCLUDE(../../../../cmake/macros.cmake) - -SET(OSGGRAPH_HEADERS Utils/OsgVectorArrayAdapter.h - Utils/OsgAtomic.h - Utils/OsgColor.h - Utils/OsgMath.h - Utils/OsgNodeMask.h - Utils/OsgLightTransform.h - #Utils/OsgPrecipitation.h - #Utils/OsgOptions.h - - Sky/OsgSphere.h - Sky/OsgSun.h - Sky/OsgMoon.h - Sky/OsgStars.h - Sky/OsgDome.h - Sky/OsgCloud.h - Sky/OsgSky.h - - Loader/AccGeode.h - Loader/AccException.h - Loader/ReaderWriterACC.h - Loader/OsgLoader.h - - Scenery/OsgScenery.h - - Render/OsgRender.h - Render/OsgReflectionMapping.h - Render/OsgShader.h - - Viewer/OsgView.h - Viewer/OsgScreens.h - Viewer/OsgCamera.h - Viewer/OsgHUD.h - - Car/OsgCar.h - Car/OsgCarLight.h - Car/OsgWheel.h - Car/OsgBrake.h - #Car/OsgCarShadow.h - - OsgGraph.h - OsgMain.h) - -IF(OPTION_SDL2) - SET(OSGGRAPH_HEADERS ${OSGGRAPH_HEADERS} Viewer/OsgGraphicsWindow.h) -ENDIF(OPTION_SDL2) - -IF(OPTION_HUDDEBUG) - SET(OSGGRAPH_HEADERS ${OSGGRAPH_HEADERS} Viewer/OsgDebugHUD.h) -ENDIF(OPTION_HUDDEBUG) - -SET(OSGGRAPH_SOURCES Utils/OsgMath.cpp - Utils/OsgLightTransform.cpp - #Utils/OsgPrecipitation.cpp - #Utils/OsgOptions.cpp - - Sky/OsgSphere.cpp - Sky/OsgSun.cpp - Sky/OsgMoon.cpp - Sky/OsgStars.cpp - Sky/OsgDome.cpp - Sky/OsgCloud.cpp - Sky/OsgSky.cpp - - Loader/AccGeode.cpp - Loader/AccException.cpp - Loader/ReaderWriterACC.cpp - Loader/OsgLoader.cpp - - Scenery/OsgBackground.cpp - Scenery/OsgPit.cpp - Scenery/OsgTrackLight.cpp - Scenery/OsgScenery.cpp - - Render/OsgRender.cpp - Render/OsgReflectionMapping.cpp - Render/OsgShader.cpp - - Viewer/OsgView.cpp - Viewer/OsgScreens.cpp - Viewer/OsgCamera.cpp - Viewer/OsgHUD.cpp - - Car/OsgCar.cpp - Car/OsgCarLight.cpp - Car/OsgWheel.cpp - Car/OsgBrake.cpp - #Car/OsgCarShadow.cpp - - OsgGraph.cpp - OsgMain.cpp) - -IF(OPTION_SDL2) - SET(OSGGRAPH_SOURCES ${OSGGRAPH_SOURCES} Viewer/OsgGraphicsWindow.cpp) -ENDIF(OPTION_SDL2) - -IF(OPTION_HUDDEBUG) - SET(OSGGRAPH_SOURCES ${OSGGRAPH_SOURCES} Viewer/OsgDebugHUD.cpp) -ENDIF(OPTION_HUDDEBUG) - -INCLUDE_DIRECTORIES(Utils Sky Loader Scenery Render Viewer Car .) - -ADD_INTERFACE_INCLUDEDIR() -ADD_SDLIB_INCLUDEDIR(portability math tgf tgfclient robottools) - -IF(OPTION_SDL2) - ADD_SDL2_INCLUDEDIR() -ELSE(OPTION_SDL2) - ADD_SDL_INCLUDEDIR() -ENDIF(OPTION_SDL2) - -ADD_OSG_INCLUDEDIR() - -# Temporary, but should not remain ! -ADD_PLIB_INCLUDEDIR() - -IF(COMMAND CMAKE_POLICY) - CMAKE_POLICY(SET CMP0003 NEW) -ENDIF(COMMAND CMAKE_POLICY) - -IF(WIN32) - # DLL export stuff under Windows (to avoid .def file) - ADD_DEFINITIONS(-DOSGGRAPH_DLL) -ENDIF(WIN32) - -IF(MSVC) - # Ignore some run-time libs to avoid link time warnings and sometimes even crashes. - SET(CMAKE_MODULE_LINKER_FLAGS_DEBUG - "${CMAKE_MODULE_LINKER_FLAGS_DEBUG} /NODEFAULTLIB:msvcrt.lib /NODEFAULTLIB:libcmtd.lib") - SET(CMAKE_MODULE_LINKER_FLAGS_RELEASE - "${CMAKE_MODULE_LINKER_FLAGS_RELEASE} /NODEFAULTLIB:libcmt.lib") -ENDIF(MSVC) - -# Note: Other sources and headers needed for having them available in IDEs. -SD_ADD_LIBRARY(osggraph MODULE ${OSGGRAPH_SOURCES} ${OSGGRAPH_HEADERS} ${OSGGRAPH_OTHER_SOURCES}) - -# Might not work with GCC 4.5 or + (non-robot modules crash at 1st reload = after 1 dlclose) -#SET_TARGET_PROPERTIES(osggraph PROPERTIES VERSION ${VERSION} SOVERSION 0.0.0) - -ADD_OSG_LIBRARY(osggraph) - -IF(OPTION_SDL2) - ADD_SDL2_LIBRARY(osggraph) -ELSE(OPTION_SDL2) - ADD_SDL_LIBRARY(osggraph) -ENDIF(OPTION_SDL2) - -ADD_OPENGL_LIBRARY(osggraph) - -# Temporary, but should not remain ! -ADD_PLIB_LIBRARY(osggraph ul sg) - -ADD_SDLIB_LIBRARY(osggraph tgf tgfclient robottools) - -SD_INSTALL_FILES(LIB modules/graphic TARGETS osggraph) +INCLUDE(../../../../cmake/macros.cmake) + +SET(OSGGRAPH_HEADERS Utils/OsgVectorArrayAdapter.h + Utils/OsgAtomic.h + Utils/OsgColor.h + Utils/OsgMath.h + Utils/OsgNodeMask.h + Utils/OsgLightTransform.h + #Utils/OsgPrecipitation.h + #Utils/OsgOptions.h + + Sky/OsgSphere.h + Sky/OsgSun.h + Sky/OsgMoon.h + Sky/OsgStars.h + Sky/OsgDome.h + Sky/OsgCloud.h + Sky/OsgSky.h + + Loader/AccGeode.h + Loader/AccException.h + Loader/ReaderWriterACC.h + Loader/OsgLoader.h + + Scenery/OsgScenery.h + + Render/OsgRender.h + Render/OsgReflectionMapping.h + Render/OsgShader.h + + Viewer/OsgView.h + Viewer/OsgScreens.h + Viewer/OsgCamera.h + Viewer/OsgHUD.h + Viewer/OsgGraphicsWindow.h + + Car/OsgCar.h + Car/OsgCarLight.h + Car/OsgWheel.h + Car/OsgBrake.h + #Car/OsgCarShadow.h + + OsgGraph.h + OsgMain.h) + +IF(OPTION_HUDDEBUG) + SET(OSGGRAPH_HEADERS ${OSGGRAPH_HEADERS} Viewer/OsgDebugHUD.h) +ENDIF(OPTION_HUDDEBUG) + +SET(OSGGRAPH_SOURCES Utils/OsgMath.cpp + Utils/OsgLightTransform.cpp + #Utils/OsgPrecipitation.cpp + #Utils/OsgOptions.cpp + + Sky/OsgSphere.cpp + Sky/OsgSun.cpp + Sky/OsgMoon.cpp + Sky/OsgStars.cpp + Sky/OsgDome.cpp + Sky/OsgCloud.cpp + Sky/OsgSky.cpp + + Loader/AccGeode.cpp + Loader/AccException.cpp + Loader/ReaderWriterACC.cpp + Loader/OsgLoader.cpp + + Scenery/OsgBackground.cpp + Scenery/OsgPit.cpp + Scenery/OsgTrackLight.cpp + Scenery/OsgScenery.cpp + + Render/OsgRender.cpp + Render/OsgReflectionMapping.cpp + Render/OsgShader.cpp + + Viewer/OsgView.cpp + Viewer/OsgScreens.cpp + Viewer/OsgCamera.cpp + Viewer/OsgHUD.cpp + Viewer/OsgGraphicsWindow.cpp + + Car/OsgCar.cpp + Car/OsgCarLight.cpp + Car/OsgWheel.cpp + Car/OsgBrake.cpp + #Car/OsgCarShadow.cpp + + OsgGraph.cpp + OsgMain.cpp) + +IF(OPTION_HUDDEBUG) + SET(OSGGRAPH_SOURCES ${OSGGRAPH_SOURCES} Viewer/OsgDebugHUD.cpp) +ENDIF(OPTION_HUDDEBUG) + +INCLUDE_DIRECTORIES(Utils Sky Loader Scenery Render Viewer Car .) + +ADD_INTERFACE_INCLUDEDIR() +ADD_SDLIB_INCLUDEDIR(portability math tgf tgfclient robottools) + +ADD_SDL2_INCLUDEDIR() + +ADD_OSG_INCLUDEDIR() + +# Temporary, but should not remain ! +ADD_PLIB_INCLUDEDIR() + +IF(COMMAND CMAKE_POLICY) + CMAKE_POLICY(SET CMP0003 NEW) +ENDIF(COMMAND CMAKE_POLICY) + +IF(WIN32) + # DLL export stuff under Windows (to avoid .def file) + ADD_DEFINITIONS(-DOSGGRAPH_DLL) +ENDIF(WIN32) + +IF(MSVC) + # Ignore some run-time libs to avoid link time warnings and sometimes even crashes. + SET(CMAKE_MODULE_LINKER_FLAGS_DEBUG + "${CMAKE_MODULE_LINKER_FLAGS_DEBUG} /NODEFAULTLIB:msvcrt.lib /NODEFAULTLIB:libcmtd.lib") + SET(CMAKE_MODULE_LINKER_FLAGS_RELEASE + "${CMAKE_MODULE_LINKER_FLAGS_RELEASE} /NODEFAULTLIB:libcmt.lib") +ENDIF(MSVC) + +# Note: Other sources and headers needed for having them available in IDEs. +SD_ADD_LIBRARY(osggraph MODULE ${OSGGRAPH_SOURCES} ${OSGGRAPH_HEADERS} ${OSGGRAPH_OTHER_SOURCES}) + +# Might not work with GCC 4.5 or + (non-robot modules crash at 1st reload = after 1 dlclose) +#SET_TARGET_PROPERTIES(osggraph PROPERTIES VERSION ${VERSION} SOVERSION 0.0.0) + +ADD_OSG_LIBRARY(osggraph) + +ADD_SDL2_LIBRARY(osggraph) + +ADD_OPENGL_LIBRARY(osggraph) + +# Temporary, but should not remain ! +ADD_PLIB_LIBRARY(osggraph ul sg) + +ADD_SDLIB_LIBRARY(osggraph tgf tgfclient robottools) + +SD_INSTALL_FILES(LIB modules/graphic TARGETS osggraph) diff --git a/src/modules/graphic/ssggraph/CMakeLists.txt b/src/modules/graphic/ssggraph/CMakeLists.txt index e41404080..9fbfe7dcc 100644 --- a/src/modules/graphic/ssggraph/CMakeLists.txt +++ b/src/modules/graphic/ssggraph/CMakeLists.txt @@ -42,11 +42,7 @@ ADD_SDLIB_INCLUDEDIR(portability math tgf tgfclient robottools) ADD_PLIB_INCLUDEDIR() -IF(OPTION_SDL2) - ADD_SDL2_INCLUDEDIR() -ELSE(OPTION_SDL2) - ADD_SDL_INCLUDEDIR() -ENDIF(OPTION_SDL2) +ADD_SDL2_INCLUDEDIR() IF(COMMAND CMAKE_POLICY) CMAKE_POLICY(SET CMP0003 NEW) @@ -78,11 +74,7 @@ ELSE(OPTION_USE_MACPORTS) ADD_PLIB_LIBRARY(ssggraph ul sg sl ssg ssgaux) ENDIF(OPTION_USE_MACPORTS) -IF(OPTION_SDL2) - ADD_SDL2_LIBRARY(ssggraph) -ELSE(OPTION_SDL2) - ADD_SDL_LIBRARY(ssggraph) -ENDIF(OPTION_SDL2) +ADD_SDL2_LIBRARY(ssggraph) ADD_OPENGL_LIBRARY(ssggraph) diff --git a/src/modules/networking/CMakeLists.txt b/src/modules/networking/CMakeLists.txt index 5f72fd4cb..52c5b7dc4 100644 --- a/src/modules/networking/CMakeLists.txt +++ b/src/modules/networking/CMakeLists.txt @@ -19,11 +19,7 @@ SD_ADD_LIBRARY(networking SHARED ${SD_NETWORK_SOURCES} ${SD_NETWORK_HEADERS}) ADD_INTERFACE_INCLUDEDIR() -IF(OPTION_SDL2) - ADD_SDL2_INCLUDEDIR() -ELSE(OPTION_SDL2) - ADD_SDL_INCLUDEDIR() -ENDIF(OPTION_SDL2) +ADD_SDL2_INCLUDEDIR() ADD_SDLIB_INCLUDEDIR(networking portability tgf math) @@ -31,12 +27,7 @@ ADD_PLIB_INCLUDEDIR() ADD_ENET_INCLUDEDIR() ADD_PLIB_LIBRARY(networking ul sg) ADD_ENET_LIBRARY(networking) - -IF(OPTION_SDL2) - ADD_SDL2_LIBRARY(networking) -ELSE(OPTION_SDL2) - ADD_SDL_LIBRARY(networking) -ENDIF(OPTION_SDL2) +ADD_SDL2_LIBRARY(networking) IF(WIN32) TARGET_LINK_LIBRARIES(networking Winmm ws2_32) diff --git a/src/modules/racing/genparoptv1/CMakeLists.txt b/src/modules/racing/genparoptv1/CMakeLists.txt index 7755e90bf..3a54d5cda 100644 --- a/src/modules/racing/genparoptv1/CMakeLists.txt +++ b/src/modules/racing/genparoptv1/CMakeLists.txt @@ -22,11 +22,7 @@ ADD_SDLIB_INCLUDEDIR(math portability robottools tgf tgfclient tgfdata) ADD_PLIB_INCLUDEDIR() -IF(OPTION_SDL2) - ADD_SDL2_INCLUDEDIR() -ELSE(OPTION_SDL2) - ADD_SDL_INCLUDEDIR() -ENDIF(OPTION_SDL2) +ADD_SDL2_INCLUDEDIR() # Disable developer warning IF (COMMAND CMAKE_POLICY) diff --git a/src/modules/racing/standardgame/CMakeLists.txt b/src/modules/racing/standardgame/CMakeLists.txt index 1af141549..840618e2b 100644 --- a/src/modules/racing/standardgame/CMakeLists.txt +++ b/src/modules/racing/standardgame/CMakeLists.txt @@ -39,11 +39,7 @@ ENDIF(OPTION_WEBSERVER) ADD_PLIB_INCLUDEDIR() -IF(OPTION_SDL2) - ADD_SDL2_INCLUDEDIR() -ELSE(OPTION_SDL2) - ADD_SDL_INCLUDEDIR() -ENDIF(OPTION_SDL2) +ADD_SDL2_INCLUDEDIR() IF(OPTION_3RDPARTY_SQLITE3) ADD_SQLITE3_INCLUDEDIR() diff --git a/src/modules/sound/snddefault/CMakeLists.txt b/src/modules/sound/snddefault/CMakeLists.txt index cfefd6a89..2d0f1d7f5 100644 --- a/src/modules/sound/snddefault/CMakeLists.txt +++ b/src/modules/sound/snddefault/CMakeLists.txt @@ -23,11 +23,7 @@ ADD_INTERFACE_INCLUDEDIR() ADD_SDLIB_INCLUDEDIR(portability math tgf tgfclient robottools) ADD_PLIB_INCLUDEDIR() -IF(OPTION_SDL2) - ADD_SDL2_INCLUDEDIR() -ELSE(OPTION_SDL2) - ADD_SDL_INCLUDEDIR() -ENDIF(OPTION_SDL2) +ADD_SDL2_INCLUDEDIR() ADD_OPENAL_INCLUDEDIR() @@ -60,11 +56,7 @@ ELSE(OPTION_USE_MACPORTS) ADD_PLIB_LIBRARY(snddefault ul sg sl ssg ssgaux) ENDIF(OPTION_USE_MACPORTS) -IF(OPTION_SDL2) - ADD_SDL2_LIBRARY(snddefault) -ELSE(OPTION_SDL2) - ADD_SDL_LIBRARY(snddefault) -ENDIF(OPTION_SDL2) +ADD_SDL2_LIBRARY(snddefault) ADD_SDLIB_LIBRARY(snddefault portability tgf tgfclient robottools) diff --git a/src/modules/userinterface/legacymenu/CMakeLists.txt b/src/modules/userinterface/legacymenu/CMakeLists.txt index 12eceeabb..ec01e79b6 100644 --- a/src/modules/userinterface/legacymenu/CMakeLists.txt +++ b/src/modules/userinterface/legacymenu/CMakeLists.txt @@ -79,11 +79,7 @@ ADD_SDLIB_INCLUDEDIR(math portability tgf tgfclient tgfdata ${NETWORKING_INC}) ADD_PLIB_INCLUDEDIR() -IF(OPTION_SDL2) - ADD_SDL2_INCLUDEDIR() -ELSE(OPTION_SDL2) - ADD_SDL_INCLUDEDIR() -ENDIF(OPTION_SDL2) +ADD_SDL2_INCLUDEDIR() ADD_ENET_INCLUDEDIR() diff --git a/src/modules/userinterface/textonly/CMakeLists.txt b/src/modules/userinterface/textonly/CMakeLists.txt index 6947570b9..a9b821d1b 100644 --- a/src/modules/userinterface/textonly/CMakeLists.txt +++ b/src/modules/userinterface/textonly/CMakeLists.txt @@ -16,11 +16,7 @@ ADD_INTERFACE_INCLUDEDIR() ADD_SDLIB_INCLUDEDIR(math portability tgf tgfclient tgfdata ${NETWORKING_INC}) ADD_PLIB_INCLUDEDIR() -IF(OPTION_SDL2) - ADD_SDL2_INCLUDEDIR() -ELSE(OPTION_SDL2) - ADD_SDL_INCLUDEDIR() -ENDIF(OPTION_SDL2) +ADD_SDL2_INCLUDEDIR() ADD_ENET_INCLUDEDIR() diff --git a/src/tools/menuview/CMakeLists.txt b/src/tools/menuview/CMakeLists.txt index 5d50d5592..6874ec2da 100644 --- a/src/tools/menuview/CMakeLists.txt +++ b/src/tools/menuview/CMakeLists.txt @@ -10,11 +10,8 @@ SET(_HEADERS previewmenu.h) ADD_INTERFACE_INCLUDEDIR() ADD_SDLIB_INCLUDEDIR(robottools tgf tgfclient math portability) -IF(OPTION_SDL2) - ADD_SDL2_INCLUDEDIR() -ELSE(OPTION_SDL2) - ADD_SDL_INCLUDEDIR() -ENDIF(OPTION_SDL2) +ADD_SDL2_INCLUDEDIR() + ADD_PLIB_INCLUDEDIR() #disable developer warning @@ -40,11 +37,7 @@ IF(OPENGL_FOUND) ENDIF(OPENGL_FOUND) ADD_PNG_LIBRARY(${_TARGET_NAME}) -IF(OPTION_SDL2) - ADD_SDL2_LIBRARY(${_TARGET_NAME}) -ELSE(OPTION_SDL2) - ADD_SDL_LIBRARY(${_TARGET_NAME}) -ENDIF(OPTION_SDL2) +ADD_SDL2_LIBRARY(${_TARGET_NAME}) ADD_PLIB_LIBRARY(${_TARGET_NAME} sg ssg ul) ADD_DL_LIBRARY(${_TARGET_NAME}) diff --git a/src/tools/trackgen/CMakeLists.txt b/src/tools/trackgen/CMakeLists.txt index 6a60f5e3e..31b5f3f72 100644 --- a/src/tools/trackgen/CMakeLists.txt +++ b/src/tools/trackgen/CMakeLists.txt @@ -12,11 +12,7 @@ SET(_OTHER_SOURCES trackgen.xml) ADD_INTERFACE_INCLUDEDIR() ADD_SDLIB_INCLUDEDIR(robottools tgf tgfclient math portability) -IF(OPTION_SDL2) - ADD_SDL2_INCLUDEDIR() -ELSE(OPTION_SDL2) - ADD_SDL_INCLUDEDIR() -ENDIF(OPTION_SDL2) +ADD_SDL2_INCLUDEDIR() ADD_PLIB_INCLUDEDIR() @@ -44,11 +40,7 @@ ENDIF(OPENGL_FOUND) ADD_PNG_LIBRARY(${_TARGET_NAME}) -IF(OPTION_SDL2) - ADD_SDL2_LIBRARY(${_TARGET_NAME}) -ELSE(OPTION_SDL2) - ADD_SDL_LIBRARY(${_TARGET_NAME}) -ENDIF(OPTION_SDL2) +ADD_SDL2_LIBRARY(${_TARGET_NAME}) ADD_PLIB_LIBRARY(${_TARGET_NAME} sg ssg ul) ADD_DL_LIBRARY(${_TARGET_NAME}) diff --git a/src/tools/xmlversion/CMakeLists.txt b/src/tools/xmlversion/CMakeLists.txt index d8412e499..29803f6ec 100644 --- a/src/tools/xmlversion/CMakeLists.txt +++ b/src/tools/xmlversion/CMakeLists.txt @@ -14,11 +14,7 @@ SD_ADD_EXECUTABLE(xmlversion ${XMLVERSION_SOURCES}) IF(CMAKE_SKIP_RPATH OR CMAKE_SKIP_BUILD_RPATH) #WARNING: the order of the library in the line below matters! First tgf, then txml!!! ADD_SDLIB_LIBRARY(xmlversion portability tgf txml STATIC) - IF(OPTION_SDL2) ADD_SDL2_LIBRARY(xmlversion) -ELSE(OPTION_SDL2) - ADD_SDL_LIBRARY(xmlversion) -ENDIF(OPTION_SDL2) ELSE(CMAKE_SKIP_RPATH OR CMAKE_SKIP_BUILD_RPATH) ADD_SDLIB_LIBRARY(xmlversion portability tgf txml) ENDIF(CMAKE_SKIP_RPATH OR CMAKE_SKIP_BUILD_RPATH)