Re: shlibs and lintian
Hi
The way I understand the Debian Plociy is that a SONAME is composed of
library name + SONAME version
So for libvae.so.2.0 : libvae is the library name and 2.0 is the SONAME
version (or it can be 2.0.0) .
The moment a SONAME version changes is described in 8.1 but it is
immaterial to this case (I think)
Also by comparison to other cases it seems that my shlibs adhers the
shlibs file format
Or maybe the SONAME should also be stamped inside the library file and the
lintian scans the file content and looks for
SONAME inside that fits the SONAME in the library name . That is
something I am missing because I had to compose the package after the
libraries were built (not a pure fake root process)
thanks
Zvi Dubitzky
Email:dubi@il.ibm.com
From: Russ Allbery <rra@debian.org>
To: Zvi Dubitzky/Haifa/IBM@IBMIL
Cc: debian-mentors@lists.debian.org
Date: 11/10/2010 18:35
Subject: Re: shlibs and lintian
Zvi Dubitzky <DUBI@il.ibm.com> writes:
> Hi
> What do you mean the libraries are broken ?
It might be helpful to read Policy chapter 8:
http://www.debian.org/doc/debian-policy/ch-sharedlibs.html
which explains the purpose of the library SONAME. The problem here
appears to be that you have libraries without any version number in the
SONAME. This both violates Policy 8.1 because there's no versioning in
the SONAME:
Every time the shared library ABI changes in a way that may break
binaries linked against older versions of the shared library, the
SONAME of the library and the corresponding name for the binary
package containing the runtime shared library should change. Normally,
this means the SONAME should change any time an interface is removed
from the shared library or the signature of an interface (the number
of parameters or the types of parameters that it takes, for example)
is changed. This practice is vital to allowing clean upgrades from
older versions of the package and clean transitions between the old
ABI and new ABI without having to upgrade every affected package
simultaneously.
and it makes it impossible to use the shlibs section because the shlibs
file syntax requires a version number in the SONAME (see Policy 8.6.3).
--
Russ Allbery (rra@debian.org) <http://www.eyrie.org/~eagle/>
Reply to: