diff --git a/CMakeLists.txt b/CMakeLists.txt index 27ccc4e21..853166c3e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -12,8 +12,8 @@ SET(CMAKE_MODULE_PATH "${OpenSceneGraph_SOURCE_DIR}/CMakeModules;${CMAKE_MODULE_ #SET(CMAKE_INCLUDE_PATH "${OpenSceneGraph_SOURCE_DIR}/../3rdParty/include;${CMAKE_INCLUDE_PATH}") #SET(CMAKE_LIBRARY_PATH "${OpenSceneGraph_SOURCE_DIR}/../3rdParty/lib;${CMAKE_LIBRARY_PATH}") IF(USING_OSG_OP_OT_TRIPLE_SET) - SET(CMAKE_INCLUDE_PATH "${OpenSceneGraph_SOURCE_DIR}/../../3rdParty/include;${CMAKE_INCLUDE_PATH}") - SET(CMAKE_LIBRARY_PATH "${OpenSceneGraph_SOURCE_DIR}/../../3rdParty/lib;${CMAKE_LIBRARY_PATH}") + SET(CMAKE_INCLUDE_PATH "${OpenSceneGraph_SOURCE_DIR}/../../3rdParty/include;${CMAKE_INCLUDE_PATH}") + SET(CMAKE_LIBRARY_PATH "${OpenSceneGraph_SOURCE_DIR}/../../3rdParty/lib;${CMAKE_LIBRARY_PATH}") ENDIF(USING_OSG_OP_OT_TRIPLE_SET) @@ -31,20 +31,20 @@ ENDIF(USING_OSG_OP_OT_TRIPLE_SET) # And in the triple set case, we skip this check. IF(USING_OSG_OP_OT_TRIPLE_SET) - # MESSAGE("OSG: Using TripleSet, ${OpenThreads_SOURCE_DIR}.") - # So I think the fall-out is that all the OpenThreads variables - # that have been set are still in play. So the include paths are still - # visible, and the library is still set. - # To keep the same code paths - SET(OPENTHREADS_LIBRARY OpenThreads) - SET(OPENTHREADS_INCLUDE_DIR ${OpenThreads_SOURCE_DIR}/include) + # MESSAGE("OSG: Using TripleSet, ${OpenThreads_SOURCE_DIR}.") + # So I think the fall-out is that all the OpenThreads variables + # that have been set are still in play. So the include paths are still + # visible, and the library is still set. + # To keep the same code paths + SET(OPENTHREADS_LIBRARY OpenThreads) + SET(OPENTHREADS_INCLUDE_DIR ${OpenThreads_SOURCE_DIR}/include) - # MESSAGE("Lib: ${OPENTHREADS_LIBRARY}") - + # MESSAGE("Lib: ${OPENTHREADS_LIBRARY}") + ELSE(USING_OSG_OP_OT_TRIPLE_SET) -# MESSAGE("OSG: Not using Triple Set") - FIND_PACKAGE(OpenThreads REQUIRED) +# MESSAGE("OSG: Not using Triple Set") + FIND_PACKAGE(OpenThreads REQUIRED) ENDIF(USING_OSG_OP_OT_TRIPLE_SET) @@ -61,8 +61,8 @@ ENDIF(USING_OSG_OP_OT_TRIPLE_SET) # which might be an issue on things like Cygwin. This may need to be fixed. FIND_PACKAGE(Threads) IF(CMAKE_SYSTEM MATCHES IRIX) - # Erase CMAKE_THREAD_LIBS_INIT and hope it works - SET(CMAKE_THREAD_LIBS_INIT "" CACHE INTERNAL "") + # Erase CMAKE_THREAD_LIBS_INIT and hope it works + SET(CMAKE_THREAD_LIBS_INIT "" CACHE INTERNAL "") ENDIF(CMAKE_SYSTEM MATCHES IRIX) @@ -70,36 +70,36 @@ ENDIF(CMAKE_SYSTEM MATCHES IRIX) FIND_PACKAGE(OpenGL) IF(APPLE) - FIND_LIBRARY(CARBON_LIBRARY Carbon) - FIND_LIBRARY(COCOA_LIBRARY Cocoa) + FIND_LIBRARY(CARBON_LIBRARY Carbon) + FIND_LIBRARY(COCOA_LIBRARY Cocoa) ENDIF(APPLE) IF(UNIX) - # Not sure what this will do on Cygwin and Msys - # Also, remember OS X X11 is a user installed option so it may not exist. - FIND_PACKAGE(X11) - # Some Unicies need explicit linkage to the Math library or the build fails. - FIND_LIBRARY(MATH_LIBRARY m) + # Not sure what this will do on Cygwin and Msys + # Also, remember OS X X11 is a user installed option so it may not exist. + FIND_PACKAGE(X11) + # Some Unicies need explicit linkage to the Math library or the build fails. + FIND_LIBRARY(MATH_LIBRARY m) ENDIF(UNIX) - + # Make the headers visible to everything INCLUDE_DIRECTORIES( - ${OpenSceneGraph_SOURCE_DIR}/include - ${OPENTHREADS_INCLUDE_DIR} - ${OPENGL_INCLUDE_DIR} + ${OpenSceneGraph_SOURCE_DIR}/include + ${OPENTHREADS_INCLUDE_DIR} + ${OPENGL_INCLUDE_DIR} ) - + # Common global definitions #ADD_DEFINITIONS(-D) # Platform specific definitions IF(WIN32) - #needed for net plugin - SET (OSG_SOCKET_LIBS wsock32.lib) - # Both Cygwin and Msys need -DNOMINMAX ??? - IF(UNIX) - ADD_DEFINITIONS(-DNOMINMAX) - ENDIF(UNIX) + #needed for net plugin + SET (OSG_SOCKET_LIBS wsock32.lib) + # Both Cygwin and Msys need -DNOMINMAX ??? + IF(UNIX) + ADD_DEFINITIONS(-DNOMINMAX) + ENDIF(UNIX) ENDIF(WIN32) ######################################################################################################## @@ -109,15 +109,15 @@ ENDIF(WIN32) #luigi#SET(CMAKE_SKIP_RPATH TRUE) #luigi#SET(CMAKE_SKIP_RULE_DEPENDENCY TRUE) #luigi#IF(UNIX) -#luigi# LIST_CONTAINS(contains "g++" ${CMAKE_CXX_COMPILER_LIST}) -#luigi# IF (contains) -#luigi# MESSAGE(${MY_MESSAGE_DEFAULT} "${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} setting CMAKE_CXX_COMPILER to g++") -#luigi# SET(CMAKE_CXX_COMPILER "g++") -#luigi# SET(CMAKE_CXX_COMPILER_LOADED 2) -#luigi# SET(CMAKE_CXX_COMPILER_WORKS 2) -#luigi# ENDIF (contains) -#luigi# SET(CMAKE_CXX_FLAGS_RELEASE "-O2") -#luigi# SET(CMAKE_CXX_FLAGS_DEBUG "-ggdb -gstabs") +#luigi# LIST_CONTAINS(contains "g++" ${CMAKE_CXX_COMPILER_LIST}) +#luigi# IF (contains) +#luigi# MESSAGE(${MY_MESSAGE_DEFAULT} "${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} setting CMAKE_CXX_COMPILER to g++") +#luigi# SET(CMAKE_CXX_COMPILER "g++") +#luigi# SET(CMAKE_CXX_COMPILER_LOADED 2) +#luigi# SET(CMAKE_CXX_COMPILER_WORKS 2) +#luigi# ENDIF (contains) +#luigi# SET(CMAKE_CXX_FLAGS_RELEASE "-O2") +#luigi# SET(CMAKE_CXX_FLAGS_DEBUG "-ggdb -gstabs") #luigi#ENDIF(UNIX) ######################################################################################################## @@ -126,7 +126,7 @@ ENDIF(WIN32) ################################################################################ # 3rd Party Dependency Stuff IF(WIN32) - INCLUDE(Find3rdPartyDependencies) + INCLUDE(Find3rdPartyDependencies) ENDIF(WIN32) # Common to all platforms: @@ -153,18 +153,18 @@ FIND_PACKAGE(Qt4) # Image readers/writers depend on 3rd party libraries except for OS X which # can use Quicktime. IF(NOT APPLE) - FIND_PACKAGE(GIFLIB) - FIND_PACKAGE(JPEG) - FIND_PACKAGE(PNG) - FIND_PACKAGE(TIFF) + FIND_PACKAGE(GIFLIB) + FIND_PACKAGE(JPEG) + FIND_PACKAGE(PNG) + FIND_PACKAGE(TIFF) - # QuickTime is required for OS X, but optional for Windows. - IF(WIN32) - FIND_PACKAGE(QuickTime) - ENDIF(WIN32) - + # QuickTime is required for OS X, but optional for Windows. + IF(WIN32) + FIND_PACKAGE(QuickTime) + ENDIF(WIN32) + ELSE(NOT APPLE) - FIND_PACKAGE(QuickTime) + FIND_PACKAGE(QuickTime) ENDIF(NOT APPLE) @@ -184,7 +184,7 @@ SET(CMAKE_DEBUG_POSTFIX "d") SET(LIB_POSTFIX "") IF(UNIX AND NOT WIN32 AND NOT APPLE) IF(CMAKE_SIZEOF_VOID_P MATCHES "8") - SET(LIB_POSTFIX "64") + SET(LIB_POSTFIX "64") ENDIF(CMAKE_SIZEOF_VOID_P MATCHES "8") ENDIF(UNIX AND NOT WIN32 AND NOT APPLE) @@ -212,9 +212,9 @@ SET(LIBRARY_OUTPUT_PATH ${OUTPUT_LIBDIR}) # Dynamic vs Static Linking OPTION(DYNAMIC_OPENSCENEGRAPH "Set to ON to build OpenSceneGraph for dynamic linking. Use OFF for static." ON) IF (DYNAMIC_OPENSCENEGRAPH) - SET(OPENSCENEGRAPH_USER_DEFINED_DYNAMIC_OR_STATIC "SHARED") + SET(OPENSCENEGRAPH_USER_DEFINED_DYNAMIC_OR_STATIC "SHARED") ELSE (DYNAMIC_OPENSCENEGRAPH) - SET(OPENSCENEGRAPH_USER_DEFINED_DYNAMIC_OR_STATIC "STATIC") + SET(OPENSCENEGRAPH_USER_DEFINED_DYNAMIC_OR_STATIC "STATIC") ENDIF(DYNAMIC_OPENSCENEGRAPH) INCLUDE(OsgMacroUtils) @@ -224,13 +224,13 @@ ADD_SUBDIRECTORY(src) # OSG Applications OPTION(BUILD_OSG_APPLICATIONS "Enable to build OSG Applications (e.g. osgviewer)" ON) IF (BUILD_OSG_APPLICATIONS) - ADD_SUBDIRECTORY(applications) + ADD_SUBDIRECTORY(applications) ENDIF(BUILD_OSG_APPLICATIONS) # OSG Examples OPTION(BUILD_OSG_EXAMPLES "Enable to build OSG Examples" OFF) IF (BUILD_OSG_EXAMPLES) - ADD_SUBDIRECTORY(examples) + ADD_SUBDIRECTORY(examples) ENDIF(BUILD_OSG_EXAMPLES) @@ -243,24 +243,24 @@ INCLUDE(${CMAKE_ROOT}/Modules/Documentation.cmake OPTIONAL) # To build the documention, you will have to enable it # and then do the equivalent of "make DoxygenDoc". IF(BUILD_DOCUMENTATION) - IF(DOT) - SET(HAVE_DOT YES) - ELSE(DOT) - SET(HAVE_DOT NO) - ENDIF(DOT) - # This processes our Doxyfile.in and substitutes paths to generate - # a final Doxyfile - CONFIGURE_FILE(${PROJECT_SOURCE_DIR}/doc/Doxyfiles/doxyfile.cmake - ${PROJECT_BINARY_DIR}/doc/doxyfile - ) - # This creates a new target to build documentation. - # It runs ${DOXYGEN} which is the full path and executable to - # Doxygen on your system, set by the FindDoxygen.cmake module - # (called by FindDocumentation.cmake). - # It runs the final generated Doxyfile against it. - # The DOT_PATH is substituted into the Doxyfile. - ADD_CUSTOM_TARGET(DoxygenDoc ${DOXYGEN} - ${PROJECT_BINARY_DIR}/docs/doxyfile - ) + IF(DOT) + SET(HAVE_DOT YES) + ELSE(DOT) + SET(HAVE_DOT NO) + ENDIF(DOT) + # This processes our Doxyfile.in and substitutes paths to generate + # a final Doxyfile + CONFIGURE_FILE(${PROJECT_SOURCE_DIR}/doc/Doxyfiles/doxyfile.cmake + ${PROJECT_BINARY_DIR}/doc/doxyfile + ) + # This creates a new target to build documentation. + # It runs ${DOXYGEN} which is the full path and executable to + # Doxygen on your system, set by the FindDoxygen.cmake module + # (called by FindDocumentation.cmake). + # It runs the final generated Doxyfile against it. + # The DOT_PATH is substituted into the Doxyfile. + ADD_CUSTOM_TARGET(DoxygenDoc ${DOXYGEN} + ${PROJECT_BINARY_DIR}/docs/doxyfile + ) ENDIF(BUILD_DOCUMENTATION)