diff -ruN ../OpenSceneGraph-2.8.3/CMakeLists.txt ./CMakeLists.txt --- ../OpenSceneGraph-2.8.3/CMakeLists.txt 2010-04-01 11:02:54.000000000 +0200 +++ ./CMakeLists.txt 2010-06-25 17:28:40.905021853 +0200 @@ -27,6 +27,7 @@ endif(COMMAND cmake_policy) PROJECT(OpenSceneGraph) + SET(OPENSCENEGRAPH_MAJOR_VERSION 2) SET(OPENSCENEGRAPH_MINOR_VERSION 8) @@ -276,6 +277,7 @@ # INSTALL_FILES(/include/osg/ FILES "${OPENSCENEGRAPH_CONFIG_HEADER}") +INCLUDE(MacroOptionalFindPackage) ################################################################################ # Optional build components @@ -292,24 +294,24 @@ ENDIF(WIN32) # Common to all platforms: -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(XUL) -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(XUL) +MACRO_OPTIONAL_FIND_PACKAGE(FFmpeg) #use pkg-config to find various modues INCLUDE(FindPkgConfig OPTIONAL) @@ -318,6 +320,7 @@ INCLUDE(FindPkgConfig) + IF(WITH_GTK) PKG_CHECK_MODULES(GTK gtk+-2.0) IF(WIN32) @@ -325,10 +328,15 @@ ELSE(WIN32) PKG_CHECK_MODULES(GTKGL gtkglext-x11-1.0) ENDIF(WIN32) + ENDIF(WITH_GTK) - PKG_CHECK_MODULES(RSVG librsvg-2.0) + IF(WITH_SVG) + PKG_CHECK_MODULES(RSVG librsvg-2.0) + ENDIF(WITH_SVG) PKG_CHECK_MODULES(CAIRO cairo) - PKG_CHECK_MODULES(POPPLER poppler-glib) + IF(WITH_PDF) + PKG_CHECK_MODULES(POPPLER poppler-glib) + ENDIF(WITH_PDF) ENDIF(PKG_CONFIG_FOUND) @@ -336,30 +344,30 @@ IF (BUILD_OSG_EXAMPLES) - FIND_PACKAGE(FLTK) - FIND_PACKAGE(GLUT) - FIND_PACKAGE(SDL) - FIND_PACKAGE(FOX) + MACRO_OPTIONAL_FIND_PACKAGE(FLTK) + MACRO_OPTIONAL_FIND_PACKAGE(GLUT) + MACRO_OPTIONAL_FIND_PACKAGE(SDL) + MACRO_OPTIONAL_FIND_PACKAGE(FOX) SET(wxWidgets_USE_LIBS base core gl net) - FIND_PACKAGE(wxWidgets) + MACRO_OPTIONAL_FIND_PACKAGE(wxWidgets) # To select a specific version of QT define DESIRED_QT_VERSION # via cmake -DDESIRED_QT_VERSION=4 IF (DESIRED_QT_VERSION) IF (DESIRED_QT_VERSION MATCHES 4) - FIND_PACKAGE(Qt4) + MACRO_OPTIONAL_FIND_PACKAGE(Qt4) ELSE(DESIRED_QT_VERSION MATCHES 4) - FIND_PACKAGE(Qt3) + MACRO_OPTIONAL_FIND_PACKAGE(Qt3) ENDIF(DESIRED_QT_VERSION MATCHES 4) ELSE(DESIRED_QT_VERSION) - FIND_PACKAGE(Qt4) + MACRO_OPTIONAL_FIND_PACKAGE(Qt4) IF (NOT QT4_FOUND) - FIND_PACKAGE(Qt3) + MACRO_OPTIONAL_FIND_PACKAGE(Qt3) ENDIF(NOT QT4_FOUND) ENDIF(DESIRED_QT_VERSION) @@ -424,10 +432,10 @@ # 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) + 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) @@ -722,7 +730,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) @@ -738,7 +746,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-2.8.3/CMakeModules/FindFLTK.cmake ./CMakeModules/FindFLTK.cmake --- ../OpenSceneGraph-2.8.3/CMakeModules/FindFLTK.cmake 2010-03-13 11:40:00.000000000 +0100 +++ ./CMakeModules/FindFLTK.cmake 1970-01-01 01:00:00.000000000 +0100 @@ -1,60 +0,0 @@ -# Locate gdal -# 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} - $ENV{OSGDIR}/include - $ENV{OSGDIR} - $ENV{OSG_ROOT}/include - ~/Library/Frameworks - /Library/Frameworks - /usr/local/include - /usr/include - /sw/include # Fink - /opt/local/include # DarwinPorts - /opt/csw/include # Blastwave - /opt/include - [HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/include - /usr/freeware/include -) - -MACRO(FIND_FLTK_LIBRARY MYLIBRARY MYLIBRARYNAME) - - FIND_LIBRARY(${MYLIBRARY} - NAMES ${MYLIBRARYNAME} - PATHS - $ENV{FLTK_DIR}/lib - $ENV{FLTK_DIR} - $ENV{OSGDIR}/lib - $ENV{OSGDIR} - $ENV{OSG_ROOT}/lib - ~/Library/Frameworks - /Library/Frameworks - /usr/local/lib - /usr/lib - /sw/lib - /opt/local/lib - /opt/csw/lib - /opt/lib - [HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/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-2.8.3/CMakeModules/MacroOptionalFindPackage.cmake ./CMakeModules/MacroOptionalFindPackage.cmake --- ../OpenSceneGraph-2.8.3/CMakeModules/MacroOptionalFindPackage.cmake 1970-01-01 01:00:00.000000000 +0100 +++ ./CMakeModules/MacroOptionalFindPackage.cmake 2010-06-16 14:27:36.000000000 +0200 @@ -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-2.8.3/CMakeModules/OsgMacroUtils.cmake ./CMakeModules/OsgMacroUtils.cmake --- ../OpenSceneGraph-2.8.3/CMakeModules/OsgMacroUtils.cmake 2010-03-13 11:40:02.000000000 +0100 +++ ./CMakeModules/OsgMacroUtils.cmake 2010-06-25 09:03:22.295913047 +0200 @@ -305,9 +305,9 @@ SETUP_EXE(${IS_COMMANDLINE_APP}) 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-2.8.3/examples/osgviewerFLTK/CMakeLists.txt ./examples/osgviewerFLTK/CMakeLists.txt --- ../OpenSceneGraph-2.8.3/examples/osgviewerFLTK/CMakeLists.txt 2010-03-13 11:40:18.000000000 +0100 +++ ./examples/osgviewerFLTK/CMakeLists.txt 2010-06-25 16:39:50.863920026 +0200 @@ -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} )