[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Libunwind-devel] .so version bump .7 -> .8 [Re: libunwind 1.0.1]
From: |
Arun Sharma |
Subject: |
Re: [Libunwind-devel] .so version bump .7 -> .8 [Re: libunwind 1.0.1] |
Date: |
Sun, 12 Feb 2012 20:48:27 -0800 |
On Sat, Feb 11, 2012 at 2:30 AM, Jan Kratochvil
<address@hidden> wrote:
> On Fri, 10 Feb 2012 23:13:09 +0100, Arun Sharma wrote:
>> # 4. If any interfaces have been added, removed, or changed since the
>> # last update, increment current, and set revision to 0.
>>
>> Since we added new interfaces (eg: fast unwinding interface on x64), I
>> incremented current.
>
> You should follow all the steps in that list and that would IMO mean HEAD
> should use SOVERSION=8:0:1 which will create:
You probably meant 7:0:1 above?
> libunwind.so -> libunwind.so.7.1.0
> libunwind.so.7 -> libunwind.so.7.1.0
> libunwind.so.7.1.0
> still having
> DT_SONAME Library soname: [libunwind.so.7]
>
I checked the revision history since v0.99 and the only interface
change that could potentially break existing programs I could find is
commit 1787a2f. It's been around for a couple of years now.
>
>> Having said that I don't recall any obvious ABI breakages. It'd be
>> interesting to know if setting up a symlink makes gdb happy.
>
> This would make GDB happy and ldconfig/ld.so would still choose 7.1 even if
> some 7.0 exists on the system (IMO improbable with packaging nowadays anyway).
>
> If one runs program really using 7.1 interfaces with 7.0 libunwind.so then the
> symbols will not be found and the program aborts on its call (due to the
> default lazy resolution). This is not perfect but this is IMO how libtool is
> designed. I can also add trying to dlopen libunwind.so.8 first into GDB as
> the ABI compatibility issues are known if you want to keep .8 there.
>
Since libunwind.so.8 has been out there for ~5 months, changing back
to 7.0.1 would probably break more things than it'd fix. It'd be great
if GDB can dlopen libunwind.so.8 first and then fallback to older
versions.
-Arun