diff --git a/CMakeLists.txt b/CMakeLists.txt index b11264d04..6ee7ebbf9 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -17,8 +17,15 @@ PROJECT(OpenSceneGraph) SET(OPENSCENEGRAPH_MAJOR_VERSION 1) SET(OPENSCENEGRAPH_MINOR_VERSION 9) SET(OPENSCENEGRAPH_PATCH_VERSION 4) +SET(OPENSCENEGRAPH_SOVERSION 6) -SET(OSG_PLUGINS osgPlugins-${OPENSCENEGRAPH_MAJOR_VERSION}.${OPENSCENEGRAPH_MINOR_VERSION}.${OPENSCENEGRAPH_PATCH_VERSION}) +SET(OPENSCENEGRAPH_VERSION ${OPENSCENEGRAPH_MAJOR_VERSION}.${OPENSCENEGRAPH_MINOR_VERSION}.${OPENSCENEGRAPH_PATCH_VERSION}) + +SET(OSG_PLUGINS osgPlugins-${OPENSCENEGRAPH_VERSION}) + +# We want to build SONAMES shared librariess +SET(OPENSCENEGRAPH_SONAMES TRUE) +SET(OPENTHREADS_SONAMES TRUE) SET(OpenThreads_SOURCE_DIR ${OpenSceneGraph_SOURCE_DIR}) diff --git a/CMakeModules/OsgMacroUtils.cmake b/CMakeModules/OsgMacroUtils.cmake index e380a4934..840a11c27 100644 --- a/CMakeModules/OsgMacroUtils.cmake +++ b/CMakeModules/OsgMacroUtils.cmake @@ -39,6 +39,10 @@ ENDMACRO(LINK_EXTERNAL TRGTNAME) MACRO(LINK_CORELIB_DEFAULT CORELIB_NAME) LINK_EXTERNAL(${CORELIB_NAME} ${OPENGL_LIBRARIES}) + LINK_WITH_VARIABLES(${CORELIB_NAME} OPENTHREADS_LIBRARY) + IF(OPENSCENEGRAPH_SONAMES) + SET_TARGET_PROPERTIES(${CORELIB_NAME} PROPERTIES VERSION ${OPENSCENEGRAPH_VERSION} SOVERSION ${OPENSCENEGRAPH_SOVERSION}) + ENDIF(OPENSCENEGRAPH_SONAMES) ENDMACRO(LINK_CORELIB_DEFAULT CORELIB_NAME) @@ -118,7 +122,7 @@ MACRO(SETUP_PLUGIN PLUGIN_NAME) SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES DEBUG_POSTFIX "") ENDIF(NOT MSVC) SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES PROJECT_LABEL "${TARGET_LABEL}") - + SETUP_LINK_LIBRARIES() #the installation path are differentiated for win32 that install in bib versus other architecture that install in lib${LIB_POSTFIX}/${OSG_PLUGINS}