[getdns-users] [PATCH] Fix libversion numbering
Robert Edmonds
edmonds at debian.org
Tue May 12 18:39:22 CEST 2015
Daniel Kahn Gillmor wrote:
> On Tue 2015-05-12 10:54:15 -0400, Willem Toorop wrote:
>
> > I have to admit that my initial willingness to blindly agree has been
> > tempered somewhat when I was notified of the fact that the .so version
> > actually does increment on FreeBSD.
>
> hm, i wasn't hoping for blind agreement anyway, so i'm glad you're
> thinking more about this :) I'm surprised that FreeBSD produces a
> different .so number, to be honest. do you mean it produces something
> new for libversion 3:3:2 or for the older settings?
Hi,
Building getdns with GETDNS_LIBVERSION=3:3:2 (i.e., 393b847) on FreeBSD
results in this:
root at freebsd10:/usr/local/stow/getdns/lib # ls -l
total 3364
-rw-r--r-- 1 root wheel 2354970 May 4 21:00 libgetdns.a
-rw-r--r-- 1 root wheel 1017 May 4 21:00 libgetdns.la
lrwxr-xr-x 1 root wheel 14 May 4 21:00 libgetdns.so -> libgetdns.so.3
-rwxr-xr-x 1 root wheel 984116 May 4 21:00 libgetdns.so.3
root at freebsd10:/usr/local/stow/getdns/lib # objdump -p libgetdns.so.3 | grep SONAME
SONAME libgetdns.so.3
It looks like the FreeBSD developers consider this an upstream bug in
libtool, and would really prefer if libtool would behave more like it
does on Linux on their platform, see:
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=8765
http://lists.freebsd.org/pipermail/freebsd-ports/2014-May/092082.html
The FreeBSD libtool appears to have been patched. When I run autoreconf
+ libtoolize on getdns 393b847 using the FreeBSD patched versions, I
instead get this:
root at freebsd10:/usr/local/stow/getdns-relibtoolized/lib # ls -l
total 3364
-rw-r--r-- 1 root wheel 2355002 May 12 16:28 libgetdns.a
-rw-r--r-- 1 root wheel 1011 May 12 16:28 libgetdns.la
lrwxr-xr-x 1 root wheel 18 May 12 16:28 libgetdns.so -> libgetdns.so.1.2.3
lrwxr-xr-x 1 root wheel 18 May 12 16:28 libgetdns.so.1 -> libgetdns.so.1.2.3
-rwxr-xr-x 1 root wheel 984132 May 12 16:28 libgetdns.so.1.2.3
root at freebsd10:/usr/local/stow/getdns-relibtoolized/lib # objdump -p libgetdns.so.1.2.3 | grep SONAME
SONAME libgetdns.so.1
Which is the same behavior you get on Linux.
(Note also that there's a getdns port in the FreeBSD ports system, which
does appear to use "USES=libtool" as described in the freebsd.org link
above, so it presumably also gets the behavior performed by the patched
FreeBSD version of libtool.)
--
Robert Edmonds
edmonds at debian.org
More information about the Users
mailing list