Hi Mattiash and Philip et. al, On Tue, Aug 26, 2008 at 12:22 PM, Philip Lowman <[EMAIL PROTECTED]> wrote: >> As a side note, without having digged this out I've been wondering >> what the OSG_MSVC_VERSIONED_DLL do that OSG_USE_SONAMES don't? I am >> prepared to get bitch-slapped here but if it is redundant we should >> remove it for easier maintenance. > > OSG_MSVC_VERSIONED_DLL encodes a version number into DLL filenames generated > on WIN32 see HANDLE_MSVC_DLL in OsgMacroUtils (which could use some cleaning > up). > > OPENSCENEGRAPH_SONAMES enables SONAME shared library versioning for > platforms that support it (i.e. libfoo.so.1 gets generated instead of > libfoo.so and the developer can bump the shared library version number when > the ABI changes).
The CMake build support for SONAMES only works by default for unix platforms, and doesn't do anything under Visual Studio - just generated standard non versioned libs and dll's under Visual Studio. The SONAMES are of course useful - they workaround the "dll hell" that we are all familiar with, so to help roll out the benefits of SONAMES to Windows the OSG's CMake build system tweaks the VisualStudio build so that the lib's are named as the basic form i.e. osg.lib, while the dll that it links to is osg-SOVERSION.dll, rather than osg.dll which would be the standard form. With this tweak of the VisualStudio build we are able to move on from "dll hell", and so far this seems to have been pretty successful. Robert. _______________________________________________ osg-users mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

