bp0 / libhdcd

An HDCD decoder library
Other
26 stars 8 forks source link

Libtool creates wrong soname #6

Closed jamrial closed 8 years ago

jamrial commented 8 years ago

Right now, at version 2.1.0, libtool is creating libhdcd.so.2.0.1 when it should be libhdcd.so.2.1.0. And if you for example bump the version to 2.1.1 in hdcd_libversion.h, after re-running autogen.sh libtool will for some reason create libhdcd.so.1.1.1

Tested this on an x86_64 ArchLinux system.

bp0 commented 8 years ago

I can confirm this is happening. I'll have to look into it later today.

bp0 commented 8 years ago

It seems this is the correct behavior. See: libtool's versioning system

So if "_ver_micro" is set to 1, it is actually setting libtool's 'age', the difference between the newest and oldest interface the library still supports. That means for 2:1:1 should still be compatible with v1, and thus can replace .so.1.x.

I am going to rename the defines and add comments to make it clear how they are used. Edit: done in 5704c399bd54942547c2490d9fbb0fcdd395589e