Hi all,
Just wanted to do a bit of hit-and-run feedback on the Mac OS X framework
support. (Sorry, I know hit-and-run feedback is not always helpful, but I'm not
sure how to change this without looking in depth into the Cmake system.)
The new framework build support is great but I observed that the resultant
framework bundle is versioned based on the OPENSCENEGRAPH_VERSION number (e.g.
2.8.2). This means that each increase in the minor version will break the
framework's backwards compatibility that should be there. Based on the Apple
guidelines (going all the way back to NeXT days) framework bundles should be
versioned using the OPENSCENEGRAPH_SOVERSION, so that a bundle looks like this:
Code:
osg.framework/
osg (soft link to "Versions/Current/osg"
Headers/ (soft link to "Versions/Current/Headers")
Resources/ (soft link to "Versions/Current/Resources")
Versions/
55/
Current/ (soft link to "55")
Headers/
osg
Resources/
To do this, the build variable FRAMEWORK_VERSION needs to be set to
OPENSCENEGRAPH_SOVERSION.
The OSG version number can then potentially be used to version the actual
dynamic library via the build variables DYLIB_CURRENT_VERSION and
DYLIB_COMPATIBILITY_VERSION, e.g. DYLIB_CURRENT_VERSION = 2.8 and
DYLIB_COMPATIBILITY_VERSION = 2.0 -- although this would require care since
OSG's version numbering doesn't really follow the standard major.minor.bugfix
release numbering (where API is only deprecated between major version number
increments.)
Comments?
Regards,
Philip Lamb
------------------
Read this topic online here:
http://forum.openscenegraph.org/viewtopic.php?p=29774#29774
_______________________________________________
osg-submissions mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org