On Sat, Nov 02, 2013 at 10:06:20PM +0100, Mark Wielaard wrote:
> On Sat, Nov 02, 2013 at 07:35:39PM +0100, Kurt Roeckx wrote:
> > So for me I have this problem with this combination:
> > elfutils 0.157-1
> > libdw1 0.157-1
> > libelf1 0.153-2
> > 
> > Upgrading libelf1 to 0.157-1 makes the problem go away for me.
> > 
> > This looks like some ABI breakage in libelf?
> 
> Although the public ABI of libelf is stable and should never break,
> the elfutils tools (at least readelf) also use some internals from
> libelf, which isn't public ABI/API. So the elfutils tools (if
> packaged separately from libelf) should depend on the exact same
> version of the elfutils libelf library being installed.
> 
> The same holds true for libdw/libasm if packaged separately.
> They always have to be upgraded in lockstep. Other packages that only
> use the public interfaces of libelf (or libdw/libasm) can use whatever
> version that provides the public symbols they are providing.

I'm not sure which symbols from libelf are exported but not public
then.

Anyway, we have all libraries in their own package, and the
dependencies are now generated depending on the symbols and the
last time a symbol got added in libelf was in 0.144 so that's
currently what other packages and elfutils depend on.  For libasm
that's minimum 0.132.  But for libdw we always have the same
version as it was build against because there is actually a
timestamp or something like that generate by configure that
the backend modules check.

We currently have this symbol mapping for libelf1:
 *@ELFUTILS_1.0 0.131
 *@ELFUTILS_1.1 0.131
 *@ELFUTILS_1.1.1 0.131
 *@ELFUTILS_1.2 0.131
 *@ELFUTILS_1.3 0.131
 *@ELFUTILS_1.4 0.132
 *@ELFUTILS_1.5 0.142
 *@ELFUTILS_1.6 0.144

That is if used a symbol with version ELFUTILS_1.6 it will depend
on at least 0.144.  If it uses a ELFUTILS_1.5 version on 0.142 and
so on, so that we get the lowest version that should provide the
symbols is good enough.  (The 0.131 version actually dropped some
symbols, which is why there is now a minimum depends on 0.131)

Anyway, does this make sense for other packages, or should all
package depend on the latest version?  Is it enough that elfutils
itself depends on the latest version?


Kurt


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to