CMake changes for Ticket 711 (SDL2 option)
git-svn-id: https://svn.code.sf.net/p/speed-dreams/code/trunk@5937 30fe4595-0a0c-4342-8851-515496e4dcbd
This commit is contained in:
parent
0d870cc38c
commit
1f5a228231
|
@ -1,4 +1,4 @@
|
||||||
INCLUDE(../cmake/macros.cmake)
|
INCLUDE(../cmake/macros.cmake)
|
||||||
|
|
||||||
SD_INSTALL_FILES(DATA cmake FILES splitargn.cmake robot.def.in.cmake FindENET.cmake FindPLIB.cmake FindSOLID.cmake
|
SD_INSTALL_FILES(DATA cmake FILES splitargn.cmake robot.def.in.cmake FindENET.cmake FindPLIB.cmake FindSOLID.cmake
|
||||||
FindOGG.cmake FindVORBISFILE.cmake FindVORBIS.cmake FindSQLITE3.cmake)
|
FindOGG.cmake FindVORBISFILE.cmake FindVORBIS.cmake FindSQLITE3.cmake FindSDL2.cmake)
|
||||||
|
|
|
@ -0,0 +1,321 @@
|
||||||
|
# Locate SDL2 library
|
||||||
|
# This module defines
|
||||||
|
# SDL2_LIBRARY, the name of the library to link against
|
||||||
|
# SDL2_FOUND, if false, do not try to link to SDL2
|
||||||
|
# SDL2_INCLUDE_DIR, where to find SDL.h#
|
||||||
|
#
|
||||||
|
# Note that the header path has changed from SDL2/SDL.h to just SDL.h
|
||||||
|
# This needed to change because "proper" SDL convention
|
||||||
|
# is #include "SDL.h", not <SDL2/SDL.h>. This is done for portability
|
||||||
|
# reasons because not all systems place things in SDL2/ (see FreeBSD).
|
||||||
|
|
||||||
|
SET(SDL2_SEARCH_PATHS
|
||||||
|
~/Library/Frameworks
|
||||||
|
/Library/Frameworks
|
||||||
|
/usr/local
|
||||||
|
/usr
|
||||||
|
/sw # Fink
|
||||||
|
/opt/local # DarwinPorts
|
||||||
|
/opt/csw # Blastwave
|
||||||
|
/opt
|
||||||
|
)
|
||||||
|
|
||||||
|
FIND_PATH(SDL2_INCLUDE_DIR SDL.h
|
||||||
|
HINTS
|
||||||
|
$ENV{SDL2DIR}
|
||||||
|
PATH_SUFFIXES include/SDL2 include
|
||||||
|
PATHS ${SDL2_SEARCH_PATHS}
|
||||||
|
)
|
||||||
|
|
||||||
|
FIND_LIBRARY(SDL2_LIBRARY_TEMP
|
||||||
|
NAMES SDL2
|
||||||
|
HINTS
|
||||||
|
$ENV{SDL2DIR}
|
||||||
|
PATH_SUFFIXES lib64 lib
|
||||||
|
PATHS ${SDL2_SEARCH_PATHS}
|
||||||
|
)
|
||||||
|
|
||||||
|
IF(NOT SDL2_BUILDING_LIBRARY)
|
||||||
|
IF(NOT ${SDL2_INCLUDE_DIR} MATCHES ".framework")
|
||||||
|
# Non-OS X framework versions expect you to also dynamically link to
|
||||||
|
# SDL2main. This is mainly for Windows and OS X. Other (Unix) platforms
|
||||||
|
# seem to provide SDL2main for compatibility even though they don't
|
||||||
|
# necessarily need it.
|
||||||
|
FIND_LIBRARY(SDL2MAIN_LIBRARY
|
||||||
|
NAMES SDL2main
|
||||||
|
HINTS
|
||||||
|
$ENV{SDL2DIR}
|
||||||
|
PATH_SUFFIXES lib64 lib
|
||||||
|
PATHS ${SDL2_SEARCH_PATHS}
|
||||||
|
)
|
||||||
|
ENDIF(NOT ${SDL2_INCLUDE_DIR} MATCHES ".framework")
|
||||||
|
ENDIF(NOT SDL2_BUILDING_LIBRARY)
|
||||||
|
|
||||||
|
# SDL2 may require threads on your system.
|
||||||
|
# The Apple build may not need an explicit flag because one of the
|
||||||
|
# frameworks may already provide it.
|
||||||
|
# But for non-OSX systems, I will use the CMake Threads package.
|
||||||
|
IF(NOT APPLE)
|
||||||
|
FIND_PACKAGE(Threads)
|
||||||
|
ENDIF(NOT APPLE)
|
||||||
|
|
||||||
|
# MinGW needs an additional library, mwindows
|
||||||
|
# It's total link flags should look like -lmingw32 -lSDL2main -lSDL2 -lmwindows
|
||||||
|
# (Actually on second look, I think it only needs one of the m* libraries.)
|
||||||
|
IF(MINGW)
|
||||||
|
SET(MINGW32_LIBRARY mingw32 CACHE STRING "mwindows for MinGW")
|
||||||
|
ENDIF(MINGW)
|
||||||
|
|
||||||
|
IF(SDL2_LIBRARY_TEMP)
|
||||||
|
# For SDL2main
|
||||||
|
IF(NOT SDL2_BUILDING_LIBRARY)
|
||||||
|
IF(SDL2MAIN_LIBRARY)
|
||||||
|
SET(SDL2_LIBRARY_TEMP ${SDL2MAIN_LIBRARY} ${SDL2_LIBRARY_TEMP})
|
||||||
|
ENDIF(SDL2MAIN_LIBRARY)
|
||||||
|
ENDIF(NOT SDL2_BUILDING_LIBRARY)
|
||||||
|
|
||||||
|
# For OS X, SDL2 uses Cocoa as a backend so it must link to Cocoa.
|
||||||
|
# CMake doesn't display the -framework Cocoa string in the UI even
|
||||||
|
# though it actually is there if I modify a pre-used variable.
|
||||||
|
# I think it has something to do with the CACHE STRING.
|
||||||
|
# So I use a temporary variable until the end so I can set the
|
||||||
|
# "real" variable in one-shot.
|
||||||
|
IF(APPLE)
|
||||||
|
SET(SDL2_LIBRARY_TEMP ${SDL2_LIBRARY_TEMP} "-framework Cocoa")
|
||||||
|
ENDIF(APPLE)
|
||||||
|
|
||||||
|
# For threads, as mentioned Apple doesn't need this.
|
||||||
|
# In fact, there seems to be a problem if I used the Threads package
|
||||||
|
# and try using this line, so I'm just skipping it entirely for OS X.
|
||||||
|
IF(NOT APPLE)
|
||||||
|
SET(SDL2_LIBRARY_TEMP ${SDL2_LIBRARY_TEMP} ${CMAKE_THREAD_LIBS_INIT})
|
||||||
|
ENDIF(NOT APPLE)
|
||||||
|
|
||||||
|
# For MinGW library
|
||||||
|
IF(MINGW)
|
||||||
|
SET(SDL2_LIBRARY_TEMP ${MINGW32_LIBRARY} ${SDL2_LIBRARY_TEMP})
|
||||||
|
ENDIF(MINGW)
|
||||||
|
|
||||||
|
# Set the final string here so the GUI reflects the final state.
|
||||||
|
SET(SDL2_LIBRARY ${SDL2_LIBRARY_TEMP} CACHE STRING "Where the SDL2 Library can be found")
|
||||||
|
# Set the temp variable to INTERNAL so it is not seen in the CMake GUI
|
||||||
|
SET(SDL2_LIBRARY_TEMP "${SDL2_LIBRARY_TEMP}" CACHE INTERNAL "")
|
||||||
|
ENDIF(SDL2_LIBRARY_TEMP)
|
||||||
|
|
||||||
|
INCLUDE(FindPackageHandleStandardArgs)
|
||||||
|
|
||||||
|
FIND_PACKAGE_HANDLE_STANDARD_ARGS(SDL2 REQUIRED_VARS SDL2_LIBRARY SDL2_INCLUDE_DIR)
|
||||||
|
# Locate SDL2 library
|
||||||
|
# This module defines
|
||||||
|
# SDL2_LIBRARY, the name of the library to link against
|
||||||
|
# SDL2_FOUND, if false, do not try to link to SDL2
|
||||||
|
# SDL2_INCLUDE_DIR, where to find SDL.h#
|
||||||
|
#
|
||||||
|
# Note that the header path has changed from SDL2/SDL.h to just SDL.h
|
||||||
|
# This needed to change because "proper" SDL convention
|
||||||
|
# is #include "SDL.h", not <SDL2/SDL.h>. This is done for portability
|
||||||
|
# reasons because not all systems place things in SDL2/ (see FreeBSD).
|
||||||
|
|
||||||
|
SET(SDL2_SEARCH_PATHS
|
||||||
|
~/Library/Frameworks
|
||||||
|
/Library/Frameworks
|
||||||
|
/usr/local
|
||||||
|
/usr
|
||||||
|
/sw # Fink
|
||||||
|
/opt/local # DarwinPorts
|
||||||
|
/opt/csw # Blastwave
|
||||||
|
/opt
|
||||||
|
)
|
||||||
|
|
||||||
|
FIND_PATH(SDL2_INCLUDE_DIR SDL.h
|
||||||
|
HINTS
|
||||||
|
$ENV{SDL2DIR}
|
||||||
|
PATH_SUFFIXES include/SDL2 include
|
||||||
|
PATHS ${SDL2_SEARCH_PATHS}
|
||||||
|
)
|
||||||
|
|
||||||
|
FIND_LIBRARY(SDL2_LIBRARY_TEMP
|
||||||
|
NAMES SDL2
|
||||||
|
HINTS
|
||||||
|
$ENV{SDL2DIR}
|
||||||
|
PATH_SUFFIXES lib64 lib
|
||||||
|
PATHS ${SDL2_SEARCH_PATHS}
|
||||||
|
)
|
||||||
|
|
||||||
|
IF(NOT SDL2_BUILDING_LIBRARY)
|
||||||
|
IF(NOT ${SDL2_INCLUDE_DIR} MATCHES ".framework")
|
||||||
|
# Non-OS X framework versions expect you to also dynamically link to
|
||||||
|
# SDL2main. This is mainly for Windows and OS X. Other (Unix) platforms
|
||||||
|
# seem to provide SDL2main for compatibility even though they don't
|
||||||
|
# necessarily need it.
|
||||||
|
FIND_LIBRARY(SDL2MAIN_LIBRARY
|
||||||
|
NAMES SDL2main
|
||||||
|
HINTS
|
||||||
|
$ENV{SDL2DIR}
|
||||||
|
PATH_SUFFIXES lib64 lib
|
||||||
|
PATHS ${SDL2_SEARCH_PATHS}
|
||||||
|
)
|
||||||
|
ENDIF(NOT ${SDL2_INCLUDE_DIR} MATCHES ".framework")
|
||||||
|
ENDIF(NOT SDL2_BUILDING_LIBRARY)
|
||||||
|
|
||||||
|
# SDL2 may require threads on your system.
|
||||||
|
# The Apple build may not need an explicit flag because one of the
|
||||||
|
# frameworks may already provide it.
|
||||||
|
# But for non-OSX systems, I will use the CMake Threads package.
|
||||||
|
IF(NOT APPLE)
|
||||||
|
FIND_PACKAGE(Threads)
|
||||||
|
ENDIF(NOT APPLE)
|
||||||
|
|
||||||
|
# MinGW needs an additional library, mwindows
|
||||||
|
# It's total link flags should look like -lmingw32 -lSDL2main -lSDL2 -lmwindows
|
||||||
|
# (Actually on second look, I think it only needs one of the m* libraries.)
|
||||||
|
IF(MINGW)
|
||||||
|
SET(MINGW32_LIBRARY mingw32 CACHE STRING "mwindows for MinGW")
|
||||||
|
ENDIF(MINGW)
|
||||||
|
|
||||||
|
IF(SDL2_LIBRARY_TEMP)
|
||||||
|
# For SDL2main
|
||||||
|
IF(NOT SDL2_BUILDING_LIBRARY)
|
||||||
|
IF(SDL2MAIN_LIBRARY)
|
||||||
|
SET(SDL2_LIBRARY_TEMP ${SDL2MAIN_LIBRARY} ${SDL2_LIBRARY_TEMP})
|
||||||
|
ENDIF(SDL2MAIN_LIBRARY)
|
||||||
|
ENDIF(NOT SDL2_BUILDING_LIBRARY)
|
||||||
|
|
||||||
|
# For OS X, SDL2 uses Cocoa as a backend so it must link to Cocoa.
|
||||||
|
# CMake doesn't display the -framework Cocoa string in the UI even
|
||||||
|
# though it actually is there if I modify a pre-used variable.
|
||||||
|
# I think it has something to do with the CACHE STRING.
|
||||||
|
# So I use a temporary variable until the end so I can set the
|
||||||
|
# "real" variable in one-shot.
|
||||||
|
IF(APPLE)
|
||||||
|
SET(SDL2_LIBRARY_TEMP ${SDL2_LIBRARY_TEMP} "-framework Cocoa")
|
||||||
|
ENDIF(APPLE)
|
||||||
|
|
||||||
|
# For threads, as mentioned Apple doesn't need this.
|
||||||
|
# In fact, there seems to be a problem if I used the Threads package
|
||||||
|
# and try using this line, so I'm just skipping it entirely for OS X.
|
||||||
|
IF(NOT APPLE)
|
||||||
|
SET(SDL2_LIBRARY_TEMP ${SDL2_LIBRARY_TEMP} ${CMAKE_THREAD_LIBS_INIT})
|
||||||
|
ENDIF(NOT APPLE)
|
||||||
|
|
||||||
|
# For MinGW library
|
||||||
|
IF(MINGW)
|
||||||
|
SET(SDL2_LIBRARY_TEMP ${MINGW32_LIBRARY} ${SDL2_LIBRARY_TEMP})
|
||||||
|
ENDIF(MINGW)
|
||||||
|
|
||||||
|
# Set the final string here so the GUI reflects the final state.
|
||||||
|
SET(SDL2_LIBRARY ${SDL2_LIBRARY_TEMP} CACHE STRING "Where the SDL2 Library can be found")
|
||||||
|
# Set the temp variable to INTERNAL so it is not seen in the CMake GUI
|
||||||
|
SET(SDL2_LIBRARY_TEMP "${SDL2_LIBRARY_TEMP}" CACHE INTERNAL "")
|
||||||
|
ENDIF(SDL2_LIBRARY_TEMP)
|
||||||
|
|
||||||
|
INCLUDE(FindPackageHandleStandardArgs)
|
||||||
|
|
||||||
|
FIND_PACKAGE_HANDLE_STANDARD_ARGS(SDL2 REQUIRED_VARS SDL2_LIBRARY SDL2_INCLUDE_DIR)
|
||||||
|
# Locate SDL2 library
|
||||||
|
# This module defines
|
||||||
|
# SDL2_LIBRARY, the name of the library to link against
|
||||||
|
# SDL2_FOUND, if false, do not try to link to SDL2
|
||||||
|
# SDL2_INCLUDE_DIR, where to find SDL.h#
|
||||||
|
#
|
||||||
|
# Note that the header path has changed from SDL2/SDL.h to just SDL.h
|
||||||
|
# This needed to change because "proper" SDL convention
|
||||||
|
# is #include "SDL.h", not <SDL2/SDL.h>. This is done for portability
|
||||||
|
# reasons because not all systems place things in SDL2/ (see FreeBSD).
|
||||||
|
|
||||||
|
SET(SDL2_SEARCH_PATHS
|
||||||
|
~/Library/Frameworks
|
||||||
|
/Library/Frameworks
|
||||||
|
/usr/local
|
||||||
|
/usr
|
||||||
|
/sw # Fink
|
||||||
|
/opt/local # DarwinPorts
|
||||||
|
/opt/csw # Blastwave
|
||||||
|
/opt
|
||||||
|
)
|
||||||
|
|
||||||
|
FIND_PATH(SDL2_INCLUDE_DIR SDL.h
|
||||||
|
HINTS
|
||||||
|
$ENV{SDL2DIR}
|
||||||
|
PATH_SUFFIXES include/SDL2 include
|
||||||
|
PATHS ${SDL2_SEARCH_PATHS}
|
||||||
|
)
|
||||||
|
|
||||||
|
FIND_LIBRARY(SDL2_LIBRARY_TEMP
|
||||||
|
NAMES SDL2
|
||||||
|
HINTS
|
||||||
|
$ENV{SDL2DIR}
|
||||||
|
PATH_SUFFIXES lib64 lib
|
||||||
|
PATHS ${SDL2_SEARCH_PATHS}
|
||||||
|
)
|
||||||
|
|
||||||
|
IF(NOT SDL2_BUILDING_LIBRARY)
|
||||||
|
IF(NOT ${SDL2_INCLUDE_DIR} MATCHES ".framework")
|
||||||
|
# Non-OS X framework versions expect you to also dynamically link to
|
||||||
|
# SDL2main. This is mainly for Windows and OS X. Other (Unix) platforms
|
||||||
|
# seem to provide SDL2main for compatibility even though they don't
|
||||||
|
# necessarily need it.
|
||||||
|
FIND_LIBRARY(SDL2MAIN_LIBRARY
|
||||||
|
NAMES SDL2main
|
||||||
|
HINTS
|
||||||
|
$ENV{SDL2DIR}
|
||||||
|
PATH_SUFFIXES lib64 lib
|
||||||
|
PATHS ${SDL2_SEARCH_PATHS}
|
||||||
|
)
|
||||||
|
ENDIF(NOT ${SDL2_INCLUDE_DIR} MATCHES ".framework")
|
||||||
|
ENDIF(NOT SDL2_BUILDING_LIBRARY)
|
||||||
|
|
||||||
|
# SDL2 may require threads on your system.
|
||||||
|
# The Apple build may not need an explicit flag because one of the
|
||||||
|
# frameworks may already provide it.
|
||||||
|
# But for non-OSX systems, I will use the CMake Threads package.
|
||||||
|
IF(NOT APPLE)
|
||||||
|
FIND_PACKAGE(Threads)
|
||||||
|
ENDIF(NOT APPLE)
|
||||||
|
|
||||||
|
# MinGW needs an additional library, mwindows
|
||||||
|
# It's total link flags should look like -lmingw32 -lSDL2main -lSDL2 -lmwindows
|
||||||
|
# (Actually on second look, I think it only needs one of the m* libraries.)
|
||||||
|
IF(MINGW)
|
||||||
|
SET(MINGW32_LIBRARY mingw32 CACHE STRING "mwindows for MinGW")
|
||||||
|
ENDIF(MINGW)
|
||||||
|
|
||||||
|
IF(SDL2_LIBRARY_TEMP)
|
||||||
|
# For SDL2main
|
||||||
|
IF(NOT SDL2_BUILDING_LIBRARY)
|
||||||
|
IF(SDL2MAIN_LIBRARY)
|
||||||
|
SET(SDL2_LIBRARY_TEMP ${SDL2MAIN_LIBRARY} ${SDL2_LIBRARY_TEMP})
|
||||||
|
ENDIF(SDL2MAIN_LIBRARY)
|
||||||
|
ENDIF(NOT SDL2_BUILDING_LIBRARY)
|
||||||
|
|
||||||
|
# For OS X, SDL2 uses Cocoa as a backend so it must link to Cocoa.
|
||||||
|
# CMake doesn't display the -framework Cocoa string in the UI even
|
||||||
|
# though it actually is there if I modify a pre-used variable.
|
||||||
|
# I think it has something to do with the CACHE STRING.
|
||||||
|
# So I use a temporary variable until the end so I can set the
|
||||||
|
# "real" variable in one-shot.
|
||||||
|
IF(APPLE)
|
||||||
|
SET(SDL2_LIBRARY_TEMP ${SDL2_LIBRARY_TEMP} "-framework Cocoa")
|
||||||
|
ENDIF(APPLE)
|
||||||
|
|
||||||
|
# For threads, as mentioned Apple doesn't need this.
|
||||||
|
# In fact, there seems to be a problem if I used the Threads package
|
||||||
|
# and try using this line, so I'm just skipping it entirely for OS X.
|
||||||
|
IF(NOT APPLE)
|
||||||
|
SET(SDL2_LIBRARY_TEMP ${SDL2_LIBRARY_TEMP} ${CMAKE_THREAD_LIBS_INIT})
|
||||||
|
ENDIF(NOT APPLE)
|
||||||
|
|
||||||
|
# For MinGW library
|
||||||
|
IF(MINGW)
|
||||||
|
SET(SDL2_LIBRARY_TEMP ${MINGW32_LIBRARY} ${SDL2_LIBRARY_TEMP})
|
||||||
|
ENDIF(MINGW)
|
||||||
|
|
||||||
|
# Set the final string here so the GUI reflects the final state.
|
||||||
|
SET(SDL2_LIBRARY ${SDL2_LIBRARY_TEMP} CACHE STRING "Where the SDL2 Library can be found")
|
||||||
|
# Set the temp variable to INTERNAL so it is not seen in the CMake GUI
|
||||||
|
SET(SDL2_LIBRARY_TEMP "${SDL2_LIBRARY_TEMP}" CACHE INTERNAL "")
|
||||||
|
ENDIF(SDL2_LIBRARY_TEMP)
|
||||||
|
|
||||||
|
INCLUDE(FindPackageHandleStandardArgs)
|
||||||
|
|
||||||
|
FIND_PACKAGE_HANDLE_STANDARD_ARGS(SDL2 REQUIRED_VARS SDL2_LIBRARY SDL2_INCLUDE_DIR)
|
|
@ -245,6 +245,20 @@ MACRO(CHECK_LIBRARIES)
|
||||||
MESSAGE(STATUS "Looking for library SDL - NOT found")
|
MESSAGE(STATUS "Looking for library SDL - NOT found")
|
||||||
ENDIF(SDL_FOUND)
|
ENDIF(SDL_FOUND)
|
||||||
|
|
||||||
|
# SDL2
|
||||||
|
IF(OPTION_SDL2)
|
||||||
|
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)
|
||||||
|
ENDIF(OPTION_SDL2)
|
||||||
|
|
||||||
# OSG
|
# OSG
|
||||||
IF(OPTION_OSGGRAPH)
|
IF(OPTION_OSGGRAPH)
|
||||||
|
|
||||||
|
|
|
@ -88,11 +88,17 @@ ENDMACRO(_FIND_3RDPARTY_DEPENDENCY DEP_NAME INCLUDE_FILE INCLUDE_SUBDIRS LIBRARY
|
||||||
MACRO(_FIND_3RDPARTY_DEPENDENCIES ROOT_DIR)
|
MACRO(_FIND_3RDPARTY_DEPENDENCIES ROOT_DIR)
|
||||||
|
|
||||||
# SDL.
|
# SDL.
|
||||||
_FIND_3RDPARTY_DEPENDENCY(SDLMAIN sdl_main.h "SDL;SDL2" sdlmain "${ROOT_DIR}" "")
|
IF(OPTION_SDL2)
|
||||||
_FIND_3RDPARTY_DEPENDENCY(SDL sdl.h "SDL;SDL2" sdl "${ROOT_DIR}" "")
|
_FIND_3RDPARTY_DEPENDENCY(SDL2MAIN sdl_main.h "SDL2" "sdl2main" "${ROOT_DIR}" "")
|
||||||
IF(SDL_FOUND) # Dirty hack to make FindPackage(SDL) work later.
|
_FIND_3RDPARTY_DEPENDENCY(SDL2 sdl.h "SDL2" "sdl2" "${ROOT_DIR}" "")
|
||||||
SET(SDL_LIBRARY_TEMP ${SDL_LIBRARY} CACHE FILEPATH "")
|
|
||||||
ENDIF(SDL_FOUND)
|
#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()
|
||||||
|
|
||||||
# PLib.
|
# PLib.
|
||||||
_FIND_3RDPARTY_DEPENDENCY(PLIB plib/sg.h "" "sg;plibsg" ${ROOT_DIR} "")
|
_FIND_3RDPARTY_DEPENDENCY(PLIB plib/sg.h "" "sg;plibsg" ${ROOT_DIR} "")
|
||||||
|
@ -307,8 +313,13 @@ MACRO(SD_INSTALL_CUSTOM_3RDPARTY TARGET_NAME)
|
||||||
LIST(APPEND _THIRDPARTY_DLL_PATHNAMES "${_DLL_PATHNAME}")
|
LIST(APPEND _THIRDPARTY_DLL_PATHNAMES "${_DLL_PATHNAME}")
|
||||||
|
|
||||||
|
|
||||||
_FIND_3RDPARTY_DLL("${SDL_LIBRARY}" "SDL" ";lib" _DLL_PATHNAME)
|
IF(OPTION_SDL2)
|
||||||
LIST(APPEND _THIRDPARTY_DLL_PATHNAMES "${_DLL_PATHNAME}")
|
_FIND_3RDPARTY_DLL("${SDL2_LIBRARY}" "SDL2" ";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()
|
||||||
|
|
||||||
IF(OPTION_3RDPARTY_EXPAT)
|
IF(OPTION_3RDPARTY_EXPAT)
|
||||||
|
|
||||||
|
|
|
@ -95,7 +95,9 @@ MACRO(ADD_SD_COMPILE_OPTIONS)
|
||||||
SET(OPTION_UNLOAD_SSGGRAPH true CACHE BOOL "If false, never unload ssggraph module (useful on some Linuxes to avoid XOrg crashes)")
|
SET(OPTION_UNLOAD_SSGGRAPH true CACHE BOOL "If false, never unload ssggraph module (useful on some Linuxes to avoid XOrg crashes)")
|
||||||
ENDIF(UNIX)
|
ENDIF(UNIX)
|
||||||
|
|
||||||
SET(OPTION_OSGGRAPH false CACHE BOOL "Build OpenScenGraph-based WIP osggraph graphics module")
|
SET(OPTION_OSGGRAPH false CACHE BOOL "Build OpenScenGraph-based WIP osggraph graphics module")
|
||||||
|
|
||||||
|
SET(OPTION_SDL2 false CACHE BOOL "Build with SDL2 instead lib SDL 1.2")
|
||||||
|
|
||||||
SET(OPTION_AUTOVERSION true CACHE BOOL "Enable automatic computation of the version from SVN source tree")
|
SET(OPTION_AUTOVERSION true CACHE BOOL "Enable automatic computation of the version from SVN source tree")
|
||||||
|
|
||||||
|
|
|
@ -154,6 +154,33 @@ MACRO(ADD_SDL_LIBRARY TARGET)
|
||||||
|
|
||||||
ENDMACRO(ADD_SDL_LIBRARY TARGET)
|
ENDMACRO(ADD_SDL_LIBRARY TARGET)
|
||||||
|
|
||||||
|
MACRO(ADD_SDL2_INCLUDEDIR)
|
||||||
|
|
||||||
|
FIND_PACKAGE(SDL2)
|
||||||
|
|
||||||
|
IF(SDL2_FOUND)
|
||||||
|
INCLUDE_DIRECTORIES(${SDL2_INCLUDE_DIR})
|
||||||
|
ELSE(SDL2_FOUND)
|
||||||
|
MESSAGE(FATAL_ERROR "Cannot find SDL2 header files")
|
||||||
|
ENDIF(SDL2_FOUND)
|
||||||
|
|
||||||
|
ENDMACRO(ADD_SDL2_INCLUDEDIR)
|
||||||
|
|
||||||
|
MACRO(ADD_SDL2_LIBRARY TARGET)
|
||||||
|
|
||||||
|
FIND_PACKAGE(SDL2)
|
||||||
|
|
||||||
|
IF(SDL2_FOUND)
|
||||||
|
IF(SDL2MAIN_LIBRARY)
|
||||||
|
TARGET_LINK_LIBRARIES(${TARGET} ${SDL2MAIN_LIBRARY})
|
||||||
|
ENDIF(SDL2MAIN_LIBRARY)
|
||||||
|
TARGET_LINK_LIBRARIES(${TARGET} ${SDL2_LIBRARY})
|
||||||
|
ELSE(SDL2_FOUND)
|
||||||
|
MESSAGE(FATAL_ERROR "Cannot find SDL2 library")
|
||||||
|
ENDIF(SDL2_FOUND)
|
||||||
|
|
||||||
|
ENDMACRO(ADD_SDL2_LIBRARY TARGET)
|
||||||
|
|
||||||
MACRO(ADD_OPENGL_INCLUDEDIR)
|
MACRO(ADD_OPENGL_INCLUDEDIR)
|
||||||
|
|
||||||
FIND_PACKAGE(OpenGL)
|
FIND_PACKAGE(OpenGL)
|
||||||
|
|
|
@ -5,7 +5,11 @@ SET(ROBOT_INTERFACE WELCOME)
|
||||||
SET(ROBOT_SOURCES ${ROBOT_NAME}.cpp)
|
SET(ROBOT_SOURCES ${ROBOT_NAME}.cpp)
|
||||||
|
|
||||||
ADD_SDLIB_INCLUDEDIR(portability tgfclient networking)
|
ADD_SDLIB_INCLUDEDIR(portability tgfclient networking)
|
||||||
ADD_SDL_INCLUDEDIR()
|
IF(OPTION_SDL2)
|
||||||
|
ADD_SDL2_INCLUDEDIR()
|
||||||
|
ELSE(OPTION_SDL2)
|
||||||
|
ADD_SDL_INCLUDEDIR()
|
||||||
|
ENDIF(OPTION_SDL2)
|
||||||
|
|
||||||
ROBOT_MODULE(NAME ${ROBOT_NAME} VERSION ${VERSION} SOVERSION 0.0.0
|
ROBOT_MODULE(NAME ${ROBOT_NAME} VERSION ${VERSION} SOVERSION 0.0.0
|
||||||
INTERFACE ${ROBOT_INTERFACE}
|
INTERFACE ${ROBOT_INTERFACE}
|
||||||
|
|
|
@ -4,7 +4,13 @@ INCLUDE(../../../cmake/macros.cmake)
|
||||||
|
|
||||||
ADD_INTERFACE_INCLUDEDIR()
|
ADD_INTERFACE_INCLUDEDIR()
|
||||||
ADD_SDLIB_INCLUDEDIR(portability tgf math tgfclient)
|
ADD_SDLIB_INCLUDEDIR(portability tgf math tgfclient)
|
||||||
ADD_SDL_INCLUDEDIR()
|
|
||||||
|
IF(OPTION_SDL2)
|
||||||
|
ADD_SDL2_INCLUDEDIR()
|
||||||
|
ELSE(OPTION_SDL2)
|
||||||
|
ADD_SDL_INCLUDEDIR()
|
||||||
|
ENDIF(OPTION_SDL2)
|
||||||
|
|
||||||
ADD_PLIB_INCLUDEDIR()
|
ADD_PLIB_INCLUDEDIR()
|
||||||
|
|
||||||
SET(ROBOTTOOLS_SOURCES rtteammanager.cpp rttelem.cpp rttimeanalysis.cpp rttrack.cpp rtutil.cpp rthumandriver.cpp)
|
SET(ROBOTTOOLS_SOURCES rtteammanager.cpp rttelem.cpp rttimeanalysis.cpp rttrack.cpp rtutil.cpp rthumandriver.cpp)
|
||||||
|
|
|
@ -2,8 +2,11 @@ INCLUDE(../../../cmake/macros.cmake)
|
||||||
|
|
||||||
#PROJECT(tgf)
|
#PROJECT(tgf)
|
||||||
|
|
||||||
ADD_SDL_INCLUDEDIR()
|
IF(OPTION_SDL2)
|
||||||
|
ADD_SDL2_INCLUDEDIR()
|
||||||
|
ELSE(OPTION_SDL2)
|
||||||
|
ADD_SDL_INCLUDEDIR()
|
||||||
|
ENDIF(OPTION_SDL2)
|
||||||
ADD_EXPAT_INCLUDEDIR()
|
ADD_EXPAT_INCLUDEDIR()
|
||||||
|
|
||||||
ADD_SDLIB_INCLUDEDIR(txml portability)
|
ADD_SDLIB_INCLUDEDIR(txml portability)
|
||||||
|
@ -45,7 +48,11 @@ ENDIF(CMAKE_SKIP_RPATH OR CMAKE_SKIP_BUILD_RPATH)
|
||||||
ADD_SDLIB_LIBRARY(tgf portability txml) # txml ignored if OPTION_3RDPARTY_EXPAT
|
ADD_SDLIB_LIBRARY(tgf portability txml) # txml ignored if OPTION_3RDPARTY_EXPAT
|
||||||
|
|
||||||
ADD_DL_LIBRARY(tgf)
|
ADD_DL_LIBRARY(tgf)
|
||||||
ADD_SDL_LIBRARY(tgf)
|
IF(OPTION_SDL2)
|
||||||
|
ADD_SDL2_LIBRARY(tgf)
|
||||||
|
ELSE(OPTION_SDL2)
|
||||||
|
ADD_SDL_LIBRARY(tgf)
|
||||||
|
ENDIF(OPTION_SDL2)
|
||||||
ADD_EXPAT_LIBRARY(tgf) # Ignored if not OPTION_3RDPARTY_EXPAT
|
ADD_EXPAT_LIBRARY(tgf) # Ignored if not OPTION_3RDPARTY_EXPAT
|
||||||
|
|
||||||
IF(WIN32)
|
IF(WIN32)
|
||||||
|
|
|
@ -4,7 +4,11 @@ INCLUDE(../../../cmake/macros.cmake)
|
||||||
|
|
||||||
ADD_INTERFACE_INCLUDEDIR()
|
ADD_INTERFACE_INCLUDEDIR()
|
||||||
ADD_SDLIB_INCLUDEDIR(tgf math portability)
|
ADD_SDLIB_INCLUDEDIR(tgf math portability)
|
||||||
ADD_SDL_INCLUDEDIR()
|
IF(OPTION_SDL2)
|
||||||
|
ADD_SDL2_INCLUDEDIR()
|
||||||
|
ELSE(OPTION_SDL2)
|
||||||
|
ADD_SDL_INCLUDEDIR()
|
||||||
|
ENDIF(OPTION_SDL2)
|
||||||
ADD_JPEG_INCLUDEDIR()
|
ADD_JPEG_INCLUDEDIR()
|
||||||
ADD_PLIB_INCLUDEDIR()
|
ADD_PLIB_INCLUDEDIR()
|
||||||
ADD_OPENAL_INCLUDEDIR()
|
ADD_OPENAL_INCLUDEDIR()
|
||||||
|
@ -75,7 +79,12 @@ IF(OGG_FOUND)
|
||||||
ENDIF(OGG_FOUND)
|
ENDIF(OGG_FOUND)
|
||||||
|
|
||||||
ADD_PLIB_LIBRARY(tgfclient ul sg js)
|
ADD_PLIB_LIBRARY(tgfclient ul sg js)
|
||||||
ADD_SDL_LIBRARY(tgfclient)
|
|
||||||
|
IF(OPTION_SDL2)
|
||||||
|
ADD_SDL2_LIBRARY(tgfclient)
|
||||||
|
ELSE(OPTION_SDL2)
|
||||||
|
ADD_SDL_LIBRARY(tgfclient)
|
||||||
|
ENDIF(OPTION_SDL2)
|
||||||
|
|
||||||
IF(WIN32)
|
IF(WIN32)
|
||||||
#joystick library
|
#joystick library
|
||||||
|
|
|
@ -12,7 +12,12 @@ ENDIF(MSVC)
|
||||||
ADD_INTERFACE_INCLUDEDIR()
|
ADD_INTERFACE_INCLUDEDIR()
|
||||||
ADD_SDLIB_INCLUDEDIR(tgf tgfclient tgfdata math portability)
|
ADD_SDLIB_INCLUDEDIR(tgf tgfclient tgfdata math portability)
|
||||||
|
|
||||||
ADD_SDL_INCLUDEDIR()
|
IF(OPTION_SDL2)
|
||||||
|
ADD_SDL2_INCLUDEDIR()
|
||||||
|
ELSE(OPTION_SDL2)
|
||||||
|
ADD_SDL_INCLUDEDIR()
|
||||||
|
ENDIF(OPTION_SDL2)
|
||||||
|
|
||||||
ADD_PLIB_INCLUDEDIR()
|
ADD_PLIB_INCLUDEDIR()
|
||||||
|
|
||||||
# Disable developer warning
|
# Disable developer warning
|
||||||
|
|
|
@ -38,7 +38,12 @@ ADD_INTERFACE_INCLUDEDIR()
|
||||||
ADD_SDLIB_INCLUDEDIR(portability math tgf tgfclient robottools)
|
ADD_SDLIB_INCLUDEDIR(portability math tgf tgfclient robottools)
|
||||||
|
|
||||||
ADD_PLIB_INCLUDEDIR()
|
ADD_PLIB_INCLUDEDIR()
|
||||||
ADD_SDL_INCLUDEDIR()
|
|
||||||
|
IF(OPTION_SDL2)
|
||||||
|
ADD_SDL2_INCLUDEDIR()
|
||||||
|
ELSE(OPTION_SDL2)
|
||||||
|
ADD_SDL_INCLUDEDIR()
|
||||||
|
ENDIF(OPTION_SDL2)
|
||||||
|
|
||||||
IF(COMMAND CMAKE_POLICY)
|
IF(COMMAND CMAKE_POLICY)
|
||||||
CMAKE_POLICY(SET CMP0003 NEW)
|
CMAKE_POLICY(SET CMP0003 NEW)
|
||||||
|
@ -65,7 +70,13 @@ SD_ADD_LIBRARY(ssggraph MODULE ${SSGGRAPH_SOURCES} ${SSGGRAPH_HEADERS} ${SSGGRAP
|
||||||
#SET_TARGET_PROPERTIES(ssggraph PROPERTIES VERSION ${VERSION} SOVERSION 0.0.0)
|
#SET_TARGET_PROPERTIES(ssggraph PROPERTIES VERSION ${VERSION} SOVERSION 0.0.0)
|
||||||
|
|
||||||
ADD_PLIB_LIBRARY(ssggraph ul sg sl ssg ssgaux)
|
ADD_PLIB_LIBRARY(ssggraph ul sg sl ssg ssgaux)
|
||||||
ADD_SDL_LIBRARY(ssggraph)
|
|
||||||
|
IF(OPTION_SDL2)
|
||||||
|
ADD_SDL2_LIBRARY(ssggraph)
|
||||||
|
ELSE(OPTION_SDL2)
|
||||||
|
ADD_SDL_LIBRARY(ssggraph)
|
||||||
|
ENDIF(OPTION_SDL2)
|
||||||
|
|
||||||
ADD_OPENGL_LIBRARY(ssggraph)
|
ADD_OPENGL_LIBRARY(ssggraph)
|
||||||
|
|
||||||
ADD_SDLIB_LIBRARY(ssggraph portability tgf tgfclient robottools)
|
ADD_SDLIB_LIBRARY(ssggraph portability tgf tgfclient robottools)
|
||||||
|
|
|
@ -18,14 +18,25 @@ SD_ADD_LIBRARY(networking SHARED ${SD_NETWORK_SOURCES} ${SD_NETWORK_HEADERS})
|
||||||
#SET_TARGET_PROPERTIES(networking PROPERTIES VERSION ${VERSION} SOVERSION 0.0.0)
|
#SET_TARGET_PROPERTIES(networking PROPERTIES VERSION ${VERSION} SOVERSION 0.0.0)
|
||||||
|
|
||||||
ADD_INTERFACE_INCLUDEDIR()
|
ADD_INTERFACE_INCLUDEDIR()
|
||||||
ADD_SDL_INCLUDEDIR()
|
|
||||||
|
IF(OPTION_SDL2)
|
||||||
|
ADD_SDL2_INCLUDEDIR()
|
||||||
|
ELSE(OPTION_SDL2)
|
||||||
|
ADD_SDL_INCLUDEDIR()
|
||||||
|
ENDIF(OPTION_SDL2)
|
||||||
|
|
||||||
ADD_SDLIB_INCLUDEDIR(networking portability tgf math)
|
ADD_SDLIB_INCLUDEDIR(networking portability tgf math)
|
||||||
|
|
||||||
ADD_PLIB_INCLUDEDIR()
|
ADD_PLIB_INCLUDEDIR()
|
||||||
ADD_ENET_INCLUDEDIR()
|
ADD_ENET_INCLUDEDIR()
|
||||||
ADD_PLIB_LIBRARY(networking ul sg)
|
ADD_PLIB_LIBRARY(networking ul sg)
|
||||||
ADD_ENET_LIBRARY(networking)
|
ADD_ENET_LIBRARY(networking)
|
||||||
ADD_SDL_LIBRARY(networking)
|
|
||||||
|
IF(OPTION_SDL2)
|
||||||
|
ADD_SDL2_LIBRARY(networking)
|
||||||
|
ELSE(OPTION_SDL2)
|
||||||
|
ADD_SDL_LIBRARY(networking)
|
||||||
|
ENDIF(OPTION_SDL2)
|
||||||
|
|
||||||
IF(WIN32)
|
IF(WIN32)
|
||||||
TARGET_LINK_LIBRARIES(networking Winmm ws2_32)
|
TARGET_LINK_LIBRARIES(networking Winmm ws2_32)
|
||||||
|
|
|
@ -21,7 +21,12 @@ ADD_INTERFACE_INCLUDEDIR()
|
||||||
ADD_SDLIB_INCLUDEDIR(math portability robottools tgf tgfclient tgfdata)
|
ADD_SDLIB_INCLUDEDIR(math portability robottools tgf tgfclient tgfdata)
|
||||||
|
|
||||||
ADD_PLIB_INCLUDEDIR()
|
ADD_PLIB_INCLUDEDIR()
|
||||||
ADD_SDL_INCLUDEDIR()
|
|
||||||
|
IF(OPTION_SDL2)
|
||||||
|
ADD_SDL2_INCLUDEDIR()
|
||||||
|
ELSE(OPTION_SDL2)
|
||||||
|
ADD_SDL_INCLUDEDIR()
|
||||||
|
ENDIF(OPTION_SDL2)
|
||||||
|
|
||||||
# Disable developer warning
|
# Disable developer warning
|
||||||
IF (COMMAND CMAKE_POLICY)
|
IF (COMMAND CMAKE_POLICY)
|
||||||
|
|
|
@ -21,7 +21,12 @@ ADD_INTERFACE_INCLUDEDIR()
|
||||||
ADD_SDLIB_INCLUDEDIR(math portability robottools tgf tgfdata networking)
|
ADD_SDLIB_INCLUDEDIR(math portability robottools tgf tgfdata networking)
|
||||||
|
|
||||||
ADD_PLIB_INCLUDEDIR()
|
ADD_PLIB_INCLUDEDIR()
|
||||||
ADD_SDL_INCLUDEDIR()
|
|
||||||
|
IF(OPTION_SDL2)
|
||||||
|
ADD_SDL2_INCLUDEDIR()
|
||||||
|
ELSE(OPTION_SDL2)
|
||||||
|
ADD_SDL_INCLUDEDIR()
|
||||||
|
ENDIF(OPTION_SDL2)
|
||||||
|
|
||||||
IF(OPTION_3RDPARTY_SQLITE3)
|
IF(OPTION_3RDPARTY_SQLITE3)
|
||||||
ADD_SQLITE3_INCLUDEDIR()
|
ADD_SQLITE3_INCLUDEDIR()
|
||||||
|
|
|
@ -19,7 +19,13 @@ SET(_OTHER_SOURCES )
|
||||||
ADD_INTERFACE_INCLUDEDIR()
|
ADD_INTERFACE_INCLUDEDIR()
|
||||||
ADD_SDLIB_INCLUDEDIR(portability math tgf tgfclient robottools)
|
ADD_SDLIB_INCLUDEDIR(portability math tgf tgfclient robottools)
|
||||||
ADD_PLIB_INCLUDEDIR()
|
ADD_PLIB_INCLUDEDIR()
|
||||||
ADD_SDL_INCLUDEDIR()
|
|
||||||
|
IF(OPTION_SDL2)
|
||||||
|
ADD_SDL2_INCLUDEDIR()
|
||||||
|
ELSE(OPTION_SDL2)
|
||||||
|
ADD_SDL_INCLUDEDIR()
|
||||||
|
ENDIF(OPTION_SDL2)
|
||||||
|
|
||||||
ADD_OPENAL_INCLUDEDIR()
|
ADD_OPENAL_INCLUDEDIR()
|
||||||
|
|
||||||
IF(COMMAND CMAKE_POLICY)
|
IF(COMMAND CMAKE_POLICY)
|
||||||
|
@ -46,7 +52,12 @@ SD_ADD_LIBRARY(snddefault MODULE ${_SOURCES} ${_HEADERS} ${_OTHER_SOURCES})
|
||||||
#SET_TARGET_PROPERTIES(snddefault PROPERTIES VERSION ${VERSION} SOVERSION 0.0.0)
|
#SET_TARGET_PROPERTIES(snddefault PROPERTIES VERSION ${VERSION} SOVERSION 0.0.0)
|
||||||
|
|
||||||
ADD_PLIB_LIBRARY(snddefault ul sg sl ssg ssgaux)
|
ADD_PLIB_LIBRARY(snddefault ul sg sl ssg ssgaux)
|
||||||
ADD_SDL_LIBRARY(snddefault)
|
|
||||||
|
IF(OPTION_SDL2)
|
||||||
|
ADD_SDL2_LIBRARY(snddefault)
|
||||||
|
ELSE(OPTION_SDL2)
|
||||||
|
ADD_SDL_LIBRARY(snddefault)
|
||||||
|
ENDIF(OPTION_SDL2)
|
||||||
|
|
||||||
ADD_SDLIB_LIBRARY(snddefault portability tgf tgfclient robottools)
|
ADD_SDLIB_LIBRARY(snddefault portability tgf tgfclient robottools)
|
||||||
|
|
||||||
|
|
|
@ -54,7 +54,13 @@ INCLUDE_DIRECTORIES(. ${MS} ${CS} ${RS})
|
||||||
ADD_INTERFACE_INCLUDEDIR()
|
ADD_INTERFACE_INCLUDEDIR()
|
||||||
ADD_SDLIB_INCLUDEDIR(math portability tgf tgfclient tgfdata networking)
|
ADD_SDLIB_INCLUDEDIR(math portability tgf tgfclient tgfdata networking)
|
||||||
ADD_PLIB_INCLUDEDIR()
|
ADD_PLIB_INCLUDEDIR()
|
||||||
ADD_SDL_INCLUDEDIR()
|
|
||||||
|
IF(OPTION_SDL2)
|
||||||
|
ADD_SDL2_INCLUDEDIR()
|
||||||
|
ELSE(OPTION_SDL2)
|
||||||
|
ADD_SDL_INCLUDEDIR()
|
||||||
|
ENDIF(OPTION_SDL2)
|
||||||
|
|
||||||
ADD_ENET_INCLUDEDIR()
|
ADD_ENET_INCLUDEDIR()
|
||||||
|
|
||||||
IF(WIN32)
|
IF(WIN32)
|
||||||
|
|
|
@ -7,7 +7,13 @@ SET(_HEADERS textonly.h)
|
||||||
ADD_INTERFACE_INCLUDEDIR()
|
ADD_INTERFACE_INCLUDEDIR()
|
||||||
ADD_SDLIB_INCLUDEDIR(math portability tgf tgfclient tgfdata networking)
|
ADD_SDLIB_INCLUDEDIR(math portability tgf tgfclient tgfdata networking)
|
||||||
ADD_PLIB_INCLUDEDIR()
|
ADD_PLIB_INCLUDEDIR()
|
||||||
ADD_SDL_INCLUDEDIR()
|
|
||||||
|
IF(OPTION_SDL2)
|
||||||
|
ADD_SDL2_INCLUDEDIR()
|
||||||
|
ELSE(OPTION_SDL2)
|
||||||
|
ADD_SDL_INCLUDEDIR()
|
||||||
|
ENDIF(OPTION_SDL2)
|
||||||
|
|
||||||
ADD_ENET_INCLUDEDIR()
|
ADD_ENET_INCLUDEDIR()
|
||||||
|
|
||||||
IF(WIN32)
|
IF(WIN32)
|
||||||
|
|
|
@ -1,52 +1,57 @@
|
||||||
INCLUDE(../../../cmake/macros.cmake)
|
INCLUDE(../../../cmake/macros.cmake)
|
||||||
|
|
||||||
PROJECT(menuview)
|
PROJECT(menuview)
|
||||||
|
|
||||||
SET(_TARGET_NAME ${SD_TOOLS_EXECPREFIX}menuview)
|
SET(_TARGET_NAME ${SD_TOOLS_EXECPREFIX}menuview)
|
||||||
|
|
||||||
SET(_SOURCES main.cpp previewmenu.cpp)
|
SET(_SOURCES main.cpp previewmenu.cpp)
|
||||||
SET(_HEADERS previewmenu.h)
|
SET(_HEADERS previewmenu.h)
|
||||||
|
|
||||||
ADD_INTERFACE_INCLUDEDIR()
|
ADD_INTERFACE_INCLUDEDIR()
|
||||||
ADD_SDLIB_INCLUDEDIR(robottools tgf tgfclient math portability)
|
ADD_SDLIB_INCLUDEDIR(robottools tgf tgfclient math portability)
|
||||||
ADD_SDL_INCLUDEDIR()
|
|
||||||
ADD_PLIB_INCLUDEDIR()
|
IF(OPTION_SDL2)
|
||||||
|
ADD_SDL2_INCLUDEDIR()
|
||||||
#disable developer warning
|
ELSE(OPTION_SDL2)
|
||||||
IF(COMMAND CMAKE_POLICY)
|
ADD_SDL_INCLUDEDIR()
|
||||||
CMAKE_POLICY(SET CMP0003 NEW)
|
ENDIF(OPTION_SDL2)
|
||||||
ENDIF(COMMAND CMAKE_POLICY)
|
ADD_PLIB_INCLUDEDIR()
|
||||||
|
|
||||||
IF(MSVC)
|
#disable developer warning
|
||||||
# Ignore some run-time libs to avoid link time warnings and sometimes even crashes.
|
IF(COMMAND CMAKE_POLICY)
|
||||||
SET(CMAKE_EXE_LINKER_FLAGS_DEBUG
|
CMAKE_POLICY(SET CMP0003 NEW)
|
||||||
"${CMAKE_EXE_LINKER_FLAGS_DEBUG} /NODEFAULTLIB:msvcrt.lib /NODEFAULTLIB:libcmt.lib")
|
ENDIF(COMMAND CMAKE_POLICY)
|
||||||
SET(CMAKE_EXE_LINKER_FLAGS_RELEASE
|
|
||||||
"${CMAKE_EXE_LINKER_FLAGS_RELEASE} /NODEFAULTLIB:libcmt.lib")
|
IF(MSVC)
|
||||||
ENDIF(MSVC)
|
# Ignore some run-time libs to avoid link time warnings and sometimes even crashes.
|
||||||
|
SET(CMAKE_EXE_LINKER_FLAGS_DEBUG
|
||||||
# Note: Headers needed for having them available in IDEs.
|
"${CMAKE_EXE_LINKER_FLAGS_DEBUG} /NODEFAULTLIB:msvcrt.lib /NODEFAULTLIB:libcmt.lib")
|
||||||
SD_ADD_EXECUTABLE(${_TARGET_NAME} ${_SOURCES} ${_HEADERS})
|
SET(CMAKE_EXE_LINKER_FLAGS_RELEASE
|
||||||
|
"${CMAKE_EXE_LINKER_FLAGS_RELEASE} /NODEFAULTLIB:libcmt.lib")
|
||||||
ADD_SDLIB_LIBRARY(${_TARGET_NAME} portability robottools tgf tgfclient)
|
ENDIF(MSVC)
|
||||||
|
|
||||||
IF(OPENGL_FOUND)
|
# Note: Headers needed for having them available in IDEs.
|
||||||
TARGET_LINK_LIBRARIES(${_TARGET_NAME} ${OPENGL_LIBRARY})
|
SD_ADD_EXECUTABLE(${_TARGET_NAME} ${_SOURCES} ${_HEADERS})
|
||||||
ENDIF(OPENGL_FOUND)
|
|
||||||
|
ADD_SDLIB_LIBRARY(${_TARGET_NAME} portability robottools tgf tgfclient)
|
||||||
ADD_PNG_LIBRARY(${_TARGET_NAME})
|
|
||||||
ADD_SDL_LIBRARY(${_TARGET_NAME})
|
IF(OPENGL_FOUND)
|
||||||
ADD_PLIB_LIBRARY(${_TARGET_NAME} sg ssg ul)
|
TARGET_LINK_LIBRARIES(${_TARGET_NAME} ${OPENGL_LIBRARY})
|
||||||
ADD_DL_LIBRARY(${_TARGET_NAME})
|
ENDIF(OPENGL_FOUND)
|
||||||
|
|
||||||
# Needed when using the "MinGW Makefiles" CMake generator (but not with the "MSYS Makefiles" one !?)
|
ADD_PNG_LIBRARY(${_TARGET_NAME})
|
||||||
IF(MINGW)
|
ADD_SDL_LIBRARY(${_TARGET_NAME})
|
||||||
TARGET_LINK_LIBRARIES(${_TARGET_NAME} ${MINGW32_LIBRARY})
|
ADD_PLIB_LIBRARY(${_TARGET_NAME} sg ssg ul)
|
||||||
ENDIF(MINGW)
|
ADD_DL_LIBRARY(${_TARGET_NAME})
|
||||||
|
|
||||||
IF(UNIX)
|
# Needed when using the "MinGW Makefiles" CMake generator (but not with the "MSYS Makefiles" one !?)
|
||||||
SD_INSTALL_FILES(MAN man6 PREFIX ${SOURCE_DIR}/doc/man FILES ${_TARGET_NAME}.6)
|
IF(MINGW)
|
||||||
ENDIF(UNIX)
|
TARGET_LINK_LIBRARIES(${_TARGET_NAME} ${MINGW32_LIBRARY})
|
||||||
|
ENDIF(MINGW)
|
||||||
SD_INSTALL_FILES(BIN TARGETS ${_TARGET_NAME})
|
|
||||||
|
IF(UNIX)
|
||||||
|
SD_INSTALL_FILES(MAN man6 PREFIX ${SOURCE_DIR}/doc/man FILES ${_TARGET_NAME}.6)
|
||||||
|
ENDIF(UNIX)
|
||||||
|
|
||||||
|
SD_INSTALL_FILES(BIN TARGETS ${_TARGET_NAME})
|
||||||
|
|
||||||
|
|
|
@ -11,7 +11,13 @@ SET(_OTHER_SOURCES trackgen.xml)
|
||||||
|
|
||||||
ADD_INTERFACE_INCLUDEDIR()
|
ADD_INTERFACE_INCLUDEDIR()
|
||||||
ADD_SDLIB_INCLUDEDIR(robottools tgf tgfclient math portability)
|
ADD_SDLIB_INCLUDEDIR(robottools tgf tgfclient math portability)
|
||||||
ADD_SDL_INCLUDEDIR()
|
|
||||||
|
IF(OPTION_SDL2)
|
||||||
|
ADD_SDL2_INCLUDEDIR()
|
||||||
|
ELSE(OPTION_SDL2)
|
||||||
|
ADD_SDL_INCLUDEDIR()
|
||||||
|
ENDIF(OPTION_SDL2)
|
||||||
|
|
||||||
ADD_PLIB_INCLUDEDIR()
|
ADD_PLIB_INCLUDEDIR()
|
||||||
|
|
||||||
#disable developer warning
|
#disable developer warning
|
||||||
|
@ -37,7 +43,13 @@ IF(OPENGL_FOUND)
|
||||||
ENDIF(OPENGL_FOUND)
|
ENDIF(OPENGL_FOUND)
|
||||||
|
|
||||||
ADD_PNG_LIBRARY(${_TARGET_NAME})
|
ADD_PNG_LIBRARY(${_TARGET_NAME})
|
||||||
ADD_SDL_LIBRARY(${_TARGET_NAME})
|
|
||||||
|
IF(OPTION_SDL2)
|
||||||
|
ADD_SDL2_LIBRARY(${_TARGET_NAME})
|
||||||
|
ELSE(OPTION_SDL2)
|
||||||
|
ADD_SDL_LIBRARY(${_TARGET_NAME})
|
||||||
|
ENDIF(OPTION_SDL2)
|
||||||
|
|
||||||
ADD_PLIB_LIBRARY(${_TARGET_NAME} sg ssg ul)
|
ADD_PLIB_LIBRARY(${_TARGET_NAME} sg ssg ul)
|
||||||
ADD_DL_LIBRARY(${_TARGET_NAME})
|
ADD_DL_LIBRARY(${_TARGET_NAME})
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue