[reSIProcate] soname for shared libraries

Gregor Jasny jasny at vidsoft.de
Mon Sep 7 09:07:08 CDT 2009


Hi,

Currently I'm trying to package reSIProcate for Debian[0]. This is a 
rather difficult process due to many requirements for Debian library 
packages[1].

The most difficult packaging problem is to get the shared object name 
and version right.

Correct me if I'm wrong, but reSIProcate doesn't provide ABI or API 
compatibility between releases. So according to [1] adding a release 
version to the soname is recommended.

This would result in the following package layout:

libresiprocate-1.5:
/usr/lib/librutil-1.5.so (soname librutil-1.5.so)
/usr/lib/libresip-1.5.so (soname libresip-1.5.so)
/usr/lib/libdum-1.5.so   (soname libdum-1.5.so)

libresiprocate-1.5-dev:
/usr/lib/librutil.so (-> librutil-1.5.so)
/usr/lib/libresip.so (-> libresip-1.5.so)
/usr/lib/libdum.so   (-> libdum-1.5.so)

So, for the linking process nothing changes. Developers will continue to 
link via -ldum. But due to the soname the linker will search for 
libdum-1.5.so on startup. That way it will be possible to have different 
(library) packages of resiprocate installed in parallel and also an 
defined upgrade path. For the development packages there will be only a 
single version installable.

Attached to this mail you'll find a patch for the described behavior.
Are you willing to apply this patch? Maybe in a modified form?

Thanks for your comments!
Gregor

[0] http://git.debian.org/?p=collab-maint/resiprocate.git;a=summary
[1] http://packages.debian.org/de/sid/libpkg-guide
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: versioned-libraries.diff
URL: <http://list.resiprocate.org/pipermail/resiprocate-devel/attachments/20090907/8416b4ac/attachment.ksh>


More information about the resiprocate-devel mailing list