[mapguide-internals] Versioning for Linux so's

Trevor Wekel trevor_wekel at otxsystems.com
Tue Mar 23 11:16:44 EDT 2010


Hi all,

Currently, we mark all of our shared libraries as "so.7.0.0" and we have not changed this from release to release.

From the versioning discussion of Libtool http://www.gnu.org/software/libtool/manual/libtool.html#Versioning, -version-info implies very specific rules on interface compatibility.  Since our interfaces change from release to release, ie. not compatible, it may be more appropriate to use -release instead of -version-info.  Libraries of the same release are compatible for linking/patching purposes (2.2.0, 2.2.0).  Libraries with different release versions (2.2.0, 2.2.1, 2.3.0) are not.  I think this is more in line with how we develop MapGuide.

From what I can tell, all we need to change is -version-info 7:0:0 in the various Makefile.am scripts to -release 2.2.0.  We may be able to parameterize this change with a declaration in the top level Makefile.am.

Please let me know if anyone has any concerns with this approach.

Regards,
Trevor



More information about the mapguide-internals mailing list