How to handle libgambatte soname?

Michael Schwendt mschwendt at gmail.com
Mon Jan 12 11:55:29 CET 2009


On Mon, 12 Jan 2009 11:24:00 +0100, Andrea wrote:

> Hi all,
>     upstream has recently released gambatte v0.4.1.
> 
> While showing differences between v0.4.0 and v0.4.1, it seems to me
> that the public interface of libgambatte changed. Therefore I need to
> bump the soname.
> 
> Upstream doesn't provide a soname, so when I submitted v0.4.0 for
> review I added it as libgambatte.so.0; libgambatte.so.0.4.0 and
> libgambatte.so (in the devel package) are symlinks for
> libgambatte.so.0. Now I don't know if I did the right thing in
> providing a soname that doesn't match the version.
> 
> How would you handle it?

Obviously, you should have talked to upstream _prior_ to inventing an
arbitrary soname. Not only is it binary incompatible with other
distributions, it is also incompatible with future releases by upstream.
Just imagine you continued with your versioning scheme and some day
in the future, when you are at libgambatte.so.4, upstream would 
release the first official libgambatte.so.1.

libgambatte.so.0.4.0 would be wrong, because the soname for
v0.4.0 and 0.4.1 would not be different. Probably you wanted to
write libgambatte-0.4.0.so.0, which would be a better choice,
which requires rebuilds each time the full version changes.


More information about the rpmfusion-developers mailing list