Hi Robert,
Just a minor fix of the src/osgDB/CMakeLists.txt, change:
SET(COMPRESSION_LIBRARIES ${ZLIB_LIBRARY})
...
LINK_EXTERNAL(${LIB_NAME} ${OSGDB_PLATFORM_SPECIFIC_LIBRARIES})
to
SET(COMPRESSION_LIBRARIES ZLIB_LIBRARY)
...
LINK_EXTERNAL(${LIB_NAME} ${OSGDB_PLATFORM_SPECIFIC_LIBRARIES}
${COMPRESSION_LIBRARIES})
LINK_WITH_VARIABLES(${LIB_NAME} ${COMPRESSION_LIBRARIES})
I notice that the LINK_EXTERNAL macro won't distinguish between debug
and release dependences, which means that osgDB will use the release
version of zlib for all build configurations. Under Win32, this will
cause a manifest problem: all applications using osgDB may complain
"failed to start because msvcr80.dll was not found" or similar
messages.
This change will make it back to normal.
BTW, do you have plans of coding on osgTerrain serializers recently?
If not, I'll submit it around the the Chinese new year (on Feb. 14).
:)
Wang Rui
IF (DYNAMIC_OPENSCENEGRAPH)
OPTION(OSG_PLUGIN_SEARCH_INSTALL_DIR_FOR_PLUGINS "Set to ON to have
OpenSceneGraph search the configured install directory for plugins." ON)
ADD_DEFINITIONS(-DOSGDB_LIBRARY)
IF(OSG_PLUGIN_SEARCH_INSTALL_DIR_FOR_PLUGINS)
# Add a default plugin search path component
ADD_DEFINITIONS(-DOSG_DEFAULT_LIBRARY_PATH=${CMAKE_INSTALL_PREFIX}/lib${LIB_POSTFIX}/${OSG_PLUGINS})
ENDIF()
ELSE ()
ADD_DEFINITIONS(-DOSG_LIBRARY_STATIC)
ENDIF()
SET(LIB_NAME osgDB)
SET(HEADER_PATH ${OpenSceneGraph_SOURCE_DIR}/include/${LIB_NAME})
SET(LIB_PUBLIC_HEADERS
${HEADER_PATH}/DataTypes
${HEADER_PATH}/StreamOperator
${HEADER_PATH}/Serializer
${HEADER_PATH}/ObjectWrapper
${HEADER_PATH}/InputStream
${HEADER_PATH}/OutputStream
${HEADER_PATH}/Archive
${HEADER_PATH}/AuthenticationMap
${HEADER_PATH}/Callbacks
${HEADER_PATH}/ConvertUTF
${HEADER_PATH}/DatabasePager
${HEADER_PATH}/DatabaseRevisions
${HEADER_PATH}/DotOsgWrapper
${HEADER_PATH}/DynamicLibrary
${HEADER_PATH}/Export
${HEADER_PATH}/FileCache
${HEADER_PATH}/FileNameUtils
${HEADER_PATH}/FileUtils
${HEADER_PATH}/fstream
${HEADER_PATH}/ImageOptions
${HEADER_PATH}/ImagePager
${HEADER_PATH}/Input
${HEADER_PATH}/Output
${HEADER_PATH}/Options
${HEADER_PATH}/ParameterOutput
${HEADER_PATH}/PluginQuery
${HEADER_PATH}/ReaderWriter
${HEADER_PATH}/ReadFile
${HEADER_PATH}/Registry
${HEADER_PATH}/SharedStateManager
${HEADER_PATH}/Version
${HEADER_PATH}/WriteFile
${HEADER_PATH}/XmlParser
)
# FIXME: For OS X, need flag for Framework or dylib
ADD_LIBRARY(${LIB_NAME}
${OPENSCENEGRAPH_USER_DEFINED_DYNAMIC_OR_STATIC}
${LIB_PUBLIC_HEADERS}
ObjectWrapper.cpp
InputStream.cpp
OutputStream.cpp
Compressors.cpp
Archive.cpp
AuthenticationMap.cpp
Callbacks.cpp
ConvertUTF.cpp
DatabasePager.cpp
DatabaseRevisions.cpp
DotOsgWrapper.cpp
DynamicLibrary.cpp
Field.cpp
FieldReader.cpp
FieldReaderIterator.cpp
FileCache.cpp
FileNameUtils.cpp
FileUtils.cpp
fstream.cpp
ImageOptions.cpp
ImagePager.cpp
Input.cpp
MimeTypes.cpp
Output.cpp
Options.cpp
PluginQuery.cpp
ReaderWriter.cpp
ReadFile.cpp
Registry.cpp
SharedStateManager.cpp
Version.cpp
WriteFile.cpp
XmlParser.cpp
${OPENSCENEGRAPH_VERSIONINFO_RC}
)
IF(APPLE)
# Needs CoreFoundation calls and a Carbon function
SET(OSGDB_PLATFORM_SPECIFIC_LIBRARIES ${CARBON_LIBRARY})
SET(OSG_DEFAULT_IMAGE_PLUGIN_FOR_OSX "quicktime" CACHE STRING "standard
image plugin for os x, options are quicktime, imageio")
IF(OSG_DEFAULT_IMAGE_PLUGIN_FOR_OSX STREQUAL "quicktime")
ADD_DEFINITIONS(-DDARWIN_QUICKTIME)
ELSE()
ADD_DEFINITIONS(-DDARWIN_IMAGEIO)
ENDIF()
ENDIF()
IF(QUICKTIME_FOUND)
ADD_DEFINITIONS(-DUSE_QUICKTIME)
ENDIF()
IF(XINE_FOUND)
ADD_DEFINITIONS(-DUSE_XINE)
ENDIF()
IF(INVENTOR_FOUND)
ADD_DEFINITIONS(-DUSE_INVENTOR)
ENDIF()
IF(OPENVRML_FOUND)
ADD_DEFINITIONS(-DUSE_VRML)
ENDIF()
IF( ZLIB_FOUND )
ADD_DEFINITIONS( -DUSE_ZLIB )
INCLUDE_DIRECTORIES( ${ZLIB_INCLUDE_DIR} )
SET(COMPRESSION_LIBRARIES ZLIB_LIBRARY)
ENDIF()
ADD_DEFINITIONS(-DOSG_PLUGIN_EXTENSION=${CMAKE_SHARED_MODULE_SUFFIX})
LINK_INTERNAL(${LIB_NAME}
osg
OpenThreads
)
LINK_EXTERNAL(${LIB_NAME} ${OSGDB_PLATFORM_SPECIFIC_LIBRARIES})
LINK_WITH_VARIABLES(${LIB_NAME} ${COMPRESSION_LIBRARIES})
LINK_CORELIB_DEFAULT(${LIB_NAME})
IF( ZLIB_FOUND )
SET( TARGET_LIBRARIES_VARS ZLIB_LIBRARY )
ENDIF( ZLIB_FOUND )
INCLUDE(ModuleInstall OPTIONAL)
_______________________________________________
osg-submissions mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org