On 20 June 2010 08:11, Remi Collet wrote:
> Apps are link against libmysqlpp.so.3
> So, when ABI is broken, this should change.
Yes, if the ABI changes incompatibly then the soname must change, the
soname in this case being libmysqlpp.so.3
There are a few options ...
If the intention is that v3.0.x and v3.1.x are compatible, the soname
should be the same and the ABI breakage should be fixed.
Or if you only want to preserve ABI compatibility between different
v3.1.x versions, not between v3.x.x versions.
There is no reason v3.x.x of the library has to link to .so.3, so you
could bump the filename to .so.4 for 3.1.0, to .so.5 for 3.2.0 etc. --
changing it as often as the ABI changes.
Or if you want the library version to correspond to the numbers in the
shared library filename the soname could change so that apps link
against .so.3.1 rather than .so.3