diff -ruN OpenSceneGraph-3.0.1/CMakeLists.txt new/CMakeLists.txt --- OpenSceneGraph-3.0.1/CMakeLists.txt 2011-07-31 09:50:34.000000000 +0200 +++ new/CMakeLists.txt 2014-02-11 23:12:54.360448879 +0100 @@ -421,6 +421,7 @@ # INSTALL_FILES(/include/osg/ FILES "${OPENSCENEGRAPH_CONFIG_HEADER}") +INCLUDE(MacroOptionalFindPackage) ################################################################################ # Set Version Info resource file @@ -450,30 +451,30 @@ ANDROID_3RD_PARTY() ELSE() # Common to all platforms except android: - FIND_PACKAGE(FreeType) - FIND_PACKAGE(Inventor) - FIND_PACKAGE(Jasper) - FIND_PACKAGE(OpenEXR) - FIND_PACKAGE(COLLADA) - FIND_PACKAGE(FBX) - FIND_PACKAGE(ZLIB) - FIND_PACKAGE(Xine) - FIND_PACKAGE(OpenVRML) - FIND_PACKAGE(Performer) - FIND_PACKAGE(GDAL) - FIND_PACKAGE(CURL) - FIND_PACKAGE(ITK) - FIND_PACKAGE(LibVNCServer) - FIND_PACKAGE(OurDCMTK) - FIND_PACKAGE(OpenAL) - FIND_PACKAGE(FFmpeg) +MACRO_OPTIONAL_FIND_PACKAGE(FreeType) +MACRO_OPTIONAL_FIND_PACKAGE(Inventor) +MACRO_OPTIONAL_FIND_PACKAGE(Jasper) +MACRO_OPTIONAL_FIND_PACKAGE(OpenEXR) +MACRO_OPTIONAL_FIND_PACKAGE(COLLADA) +MACRO_OPTIONAL_FIND_PACKAGE(FBX) +MACRO_OPTIONAL_FIND_PACKAGE(ZLIB) +MACRO_OPTIONAL_FIND_PACKAGE(Xine) +MACRO_OPTIONAL_FIND_PACKAGE(OpenVRML) +MACRO_OPTIONAL_FIND_PACKAGE(Performer) +MACRO_OPTIONAL_FIND_PACKAGE(GDAL) +MACRO_OPTIONAL_FIND_PACKAGE(CURL) +MACRO_OPTIONAL_FIND_PACKAGE(ITK) +MACRO_OPTIONAL_FIND_PACKAGE(LibVNCServer) +MACRO_OPTIONAL_FIND_PACKAGE(OurDCMTK) +MACRO_OPTIONAL_FIND_PACKAGE(OpenAL) +MACRO_OPTIONAL_FIND_PACKAGE(FFmpeg) FIND_PACKAGE(DirectShow) - FIND_PACKAGE(SDL) - FIND_PACKAGE(Poppler-glib) - FIND_PACKAGE(RSVG) - FIND_PACKAGE(GtkGl) +MACRO_OPTIONAL_FIND_PACKAGE(SDL) +MACRO_OPTIONAL_FIND_PACKAGE(Poppler-glib) +MACRO_OPTIONAL_FIND_PACKAGE(RSVG) +MACRO_OPTIONAL_FIND_PACKAGE(GtkGl) FIND_PACKAGE(DirectInput) - FIND_PACKAGE(NVTT) +MACRO_OPTIONAL_FIND_PACKAGE(NVTT) ENDIF() # Include macro utilities here @@ -485,17 +486,17 @@ IF (DESIRED_QT_VERSION) IF (DESIRED_QT_VERSION MATCHES 4) - FIND_PACKAGE(Qt4) + MACRO_OPTIONAL_FIND_PACKAGE(Qt4) ELSE() - FIND_PACKAGE(Qt3) + MACRO_OPTIONAL_FIND_PACKAGE(Qt3) ENDIF() ELSE() - FIND_PACKAGE(Qt4) + MACRO_OPTIONAL_FIND_PACKAGE(Qt4) IF (NOT QT4_FOUND) - FIND_PACKAGE(Qt3) + MACRO_OPTIONAL_FIND_PACKAGE(Qt3) ENDIF() ENDIF() @@ -504,12 +505,12 @@ IF (BUILD_OSG_EXAMPLES AND NOT ANDROID) - FIND_PACKAGE(FLTK) - FIND_PACKAGE(GLUT) - FIND_PACKAGE(FOX) + MACRO_OPTIONAL_FIND_PACKAGE(FLTK) + MACRO_OPTIONAL_FIND_PACKAGE(GLUT) + MACRO_OPTIONAL_FIND_PACKAGE(FOX) SET(wxWidgets_USE_LIBS base core gl net) - FIND_PACKAGE(wxWidgets) + MACRO_OPTIONAL_FIND_PACKAGE(wxWidgets) ENDIF(BUILD_OSG_EXAMPLES AND NOT ANDROID) @@ -530,10 +531,10 @@ # can use Quicktime. IF(NOT ANDROID) IF(NOT APPLE) - FIND_PACKAGE(GIFLIB) - FIND_PACKAGE(JPEG) - FIND_PACKAGE(PNG) - FIND_PACKAGE(TIFF) + MACRO_OPTIONAL_FIND_PACKAGE(GIFLIB) + MACRO_OPTIONAL_FIND_PACKAGE(JPEG) + MACRO_OPTIONAL_FIND_PACKAGE(PNG) + MACRO_OPTIONAL_FIND_PACKAGE(TIFF) # QuickTime is required for OS X, but optional for Windows. IF(WIN32) @@ -586,15 +587,7 @@ SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -D_DEBUG") ENDIF() -IF(UNIX AND NOT WIN32 AND NOT APPLE) - IF(CMAKE_SIZEOF_VOID_P MATCHES "8") - SET(LIB_POSTFIX "64" CACHE STRING "suffix for 32/64 dir placement") - MARK_AS_ADVANCED(LIB_POSTFIX) - ENDIF() -ENDIF() -IF(NOT DEFINED LIB_POSTFIX) - SET(LIB_POSTFIX "") -ENDIF() +SET(LIB_POSTFIX ${LIB_SUFFIX}) # Here we apparantly do some funky stuff with making the bin/ and lib/ # folders which is probably needed to work around a very old CMake bug? @@ -884,7 +877,7 @@ ${PROJECT_BINARY_DIR}/doc/OpenSceneGraphReferenceDocs/osg32-32.png COPYONLY ) #INSTALL(FILES ${PROJECT_BINARY_DIR}/doc/${PROJECT_NAME}ReferenceDocs-${OPENSCENEGRAPH_VERSION}.chm DESTINATION doc OPTIONAL COMPONENT openscenegraph-doc) - INSTALL(DIRECTORY ${PROJECT_BINARY_DIR}/doc/OpenSceneGraphReferenceDocs DESTINATION doc COMPONENT openscenegraph-doc) + INSTALL(DIRECTORY ${PROJECT_BINARY_DIR}/doc/OpenSceneGraphReferenceDocs DESTINATION ${GENTOO_DOCDIR} COMPONENT openscenegraph-doc) # now set up openthreads documentation generation IF(BUILD_REF_DOCS_TAGFILE) @@ -900,7 +893,7 @@ ${PROJECT_BINARY_DIR}/doc/OpenThreadsReferenceDocs/osg32-32.png COPYONLY ) #INSTALL(FILES ${PROJECT_BINARY_DIR}/doc/${PROJECT_NAME}ReferenceDocs-${OPENSCENEGRAPH_VERSION}.chm DESTINATION doc OPTIONAL COMPONENT openscenegraph-doc) - INSTALL(DIRECTORY ${PROJECT_BINARY_DIR}/doc/OpenThreadsReferenceDocs DESTINATION doc COMPONENT openthreads-doc) + INSTALL(DIRECTORY ${PROJECT_BINARY_DIR}/doc/OpenThreadsReferenceDocs DESTINATION ${GENTOO_DOCDIR} COMPONENT openthreads-doc) # Process our other doxyfiles but don't create targets for these CONFIGURE_FILE(${PROJECT_SOURCE_DIR}/doc/Doxyfiles/all_Doxyfile diff -ruN OpenSceneGraph-3.0.1/CMakeModules/COPYING-CMAKE-SCRIPTS new/CMakeModules/COPYING-CMAKE-SCRIPTS --- OpenSceneGraph-3.0.1/CMakeModules/COPYING-CMAKE-SCRIPTS 1970-01-01 01:00:00.000000000 +0100 +++ new/CMakeModules/COPYING-CMAKE-SCRIPTS 2014-02-11 23:12:31.241449702 +0100 @@ -0,0 +1,22 @@ +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the copyright + notice, this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. +3. The name of the author may not be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff -ruN OpenSceneGraph-3.0.1/CMakeModules/FindFLTK.cmake new/CMakeModules/FindFLTK.cmake --- OpenSceneGraph-3.0.1/CMakeModules/FindFLTK.cmake 2010-11-11 17:51:46.000000000 +0100 +++ new/CMakeModules/FindFLTK.cmake 1970-01-01 01:00:00.000000000 +0100 @@ -1,52 +0,0 @@ -# Locate FLTK -# This module defines -# FLTK_LIBRARY -# FLTK_FOUND, if false, do not try to link to gdal -# FLTK_INCLUDE_DIR, where to find the headers -# -# $FLTK_DIR is an environment variable that would -# correspond to the ./configure --prefix=$FLTK_DIR -# -# Created by Robert Osfield. - -FIND_PATH(FLTK_INCLUDE_DIR Fl/Fl.H Fl/Fl.h - $ENV{FLTK_DIR}/include - $ENV{FLTK_DIR} - ~/Library/Frameworks - /Library/Frameworks - /usr/local/include - /usr/include - /sw/include # Fink - /opt/local/include # DarwinPorts - /opt/csw/include # Blastwave - /opt/include - /usr/freeware/include -) - -MACRO(FIND_FLTK_LIBRARY MYLIBRARY MYLIBRARYNAME) - - FIND_LIBRARY(${MYLIBRARY} - NAMES ${MYLIBRARYNAME} - PATHS - $ENV{FLTK_DIR}/lib - $ENV{FLTK_DIR} - ~/Library/Frameworks - /Library/Frameworks - /usr/local/lib - /usr/lib - /sw/lib - /opt/local/lib - /opt/csw/lib - /opt/lib - /usr/freeware/lib64 - ) - -ENDMACRO(FIND_FLTK_LIBRARY LIBRARY LIBRARYNAME) - -FIND_FLTK_LIBRARY(FLTK_LIBRARY fltk) -FIND_FLTK_LIBRARY(FLTK_GL_LIBRARY fltk_gl) - -SET(FLTK_FOUND "NO") -IF(FLTK_LIBRARY AND FLTK_INCLUDE_DIR) - SET(FLTK_FOUND "YES") -ENDIF(FLTK_LIBRARY AND FLTK_INCLUDE_DIR) diff -ruN OpenSceneGraph-3.0.1/CMakeModules/MacroOptionalFindPackage.cmake new/CMakeModules/MacroOptionalFindPackage.cmake --- OpenSceneGraph-3.0.1/CMakeModules/MacroOptionalFindPackage.cmake 1970-01-01 01:00:00.000000000 +0100 +++ new/CMakeModules/MacroOptionalFindPackage.cmake 2014-02-11 23:12:31.256449701 +0100 @@ -0,0 +1,28 @@ +# - MACRO_OPTIONAL_FIND_PACKAGE() combines FIND_PACKAGE() with an OPTION() +# MACRO_OPTIONAL_FIND_PACKAGE( [QUIT] ) +# This macro is a combination of OPTION() and FIND_PACKAGE(), it +# works like FIND_PACKAGE(), but additionally it automatically creates +# an option name WITH_, which can be disabled via the cmake GUI. +# or via -DWITH_=OFF +# The standard _FOUND variables can be used in the same way +# as when using the normal FIND_PACKAGE() + +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +macro (MACRO_OPTIONAL_FIND_PACKAGE _name ) + option(WITH_${_name} "Search for ${_name} package" ON) + if (WITH_${_name}) + find_package(${_name} ${ARGN}) + else (WITH_${_name}) + set(${_name}_FOUND) + set(${_name}_INCLUDE_DIR) + set(${_name}_INCLUDES) + set(${_name}_LIBRARY) + set(${_name}_LIBRARIES) + endif (WITH_${_name}) +endmacro (MACRO_OPTIONAL_FIND_PACKAGE) + diff -ruN OpenSceneGraph-3.0.1/CMakeModules/OsgMacroUtils.cmake new/CMakeModules/OsgMacroUtils.cmake --- OpenSceneGraph-3.0.1/CMakeModules/OsgMacroUtils.cmake 2011-04-21 19:16:27.000000000 +0200 +++ new/CMakeModules/OsgMacroUtils.cmake 2014-02-11 23:12:31.280449700 +0100 @@ -445,9 +445,9 @@ SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES FOLDER "Examples") IF(APPLE) - INSTALL(TARGETS ${TARGET_TARGETNAME} RUNTIME DESTINATION share/OpenSceneGraph/bin BUNDLE DESTINATION share/OpenSceneGraph/bin ) + INSTALL(TARGETS ${TARGET_TARGETNAME} RUNTIME DESTINATION bin BUNDLE DESTINATION bin) ELSE(APPLE) - INSTALL(TARGETS ${TARGET_TARGETNAME} RUNTIME DESTINATION share/OpenSceneGraph/bin COMPONENT openscenegraph-examples ) + INSTALL(TARGETS ${TARGET_TARGETNAME} RUNTIME DESTINATION bin COMPONENT openscenegraph-examples ) ENDIF(APPLE) ENDMACRO(SETUP_EXAMPLE) diff -ruN OpenSceneGraph-3.0.1/examples/osgviewerFLTK/CMakeLists.txt new/examples/osgviewerFLTK/CMakeLists.txt --- OpenSceneGraph-3.0.1/examples/osgviewerFLTK/CMakeLists.txt 2007-06-25 10:35:06.000000000 +0200 +++ new/examples/osgviewerFLTK/CMakeLists.txt 2014-02-11 23:12:31.331449698 +0100 @@ -1,6 +1,6 @@ SET(TARGET_SRC osgviewerFLTK.cpp ) -SET(TARGET_EXTERNAL_LIBRARIES ${FLTK_LIBRARY} ${FLTK_GL_LIBRARY}) +SET(TARGET_EXTERNAL_LIBRARIES ${FLTK_BASE_LIBRARY} ${FLTK_GL_LIBRARY}) INCLUDE_DIRECTORIES(${FLTK_INCLUDE_DIR} )