X-Loop: help-debbugs@HIDDEN
Subject: bug#8765: Incorrect library versioning on *BSDs
Resent-From: Lasse Collin <lasse.collin@HIDDEN>
Original-Sender: debbugs-submit-bounces <at> debbugs.gnu.org
Resent-To: owner <at> debbugs.gnu.org
Resent-CC: bug-libtool@HIDDEN
Resent-Date: Mon, 30 May 2011 17:54:02 +0000
Resent-Message-ID: <handler.8765.B.130677798823226 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: report 8765
X-GNU-PR-Package: libtool
X-GNU-PR-Keywords:
To: 8765 <at> debbugs.gnu.org
X-Debbugs-Original-To: bug-libtool@HIDDEN
Received: via spool by submit <at> debbugs.gnu.org id=B.130677798823226
(code B ref -1); Mon, 30 May 2011 17:54:02 +0000
Received: (at submit) by debbugs.gnu.org; 30 May 2011 17:53:08 +0000
Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.69)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1QR6eJ-00062X-0q
for submit <at> debbugs.gnu.org; Mon, 30 May 2011 13:53:08 -0400
Received: from eggs.gnu.org ([140.186.70.92])
by debbugs.gnu.org with esmtp (Exim 4.69)
(envelope-from <lasse.collin@HIDDEN>) id 1QQy8S-0001tp-Nb
for submit <at> debbugs.gnu.org; Mon, 30 May 2011 04:47:42 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
(envelope-from <lasse.collin@HIDDEN>) id 1QQy8M-00070T-En
for submit <at> debbugs.gnu.org; Mon, 30 May 2011 04:47:35 -0400
X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on eggs.gnu.org
X-Spam-Level:
X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00
autolearn=unavailable version=3.3.1
Received: from lists.gnu.org ([140.186.70.17]:55735)
by eggs.gnu.org with esmtp (Exim 4.71)
(envelope-from <lasse.collin@HIDDEN>) id 1QQy8M-00070O-D9
for submit <at> debbugs.gnu.org; Mon, 30 May 2011 04:47:34 -0400
Received: from eggs.gnu.org ([140.186.70.92]:44927)
by lists.gnu.org with esmtp (Exim 4.71)
(envelope-from <lasse.collin@HIDDEN>) id 1QQy8L-00060O-9s
for bug-libtool@HIDDEN; Mon, 30 May 2011 04:47:34 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
(envelope-from <lasse.collin@HIDDEN>) id 1QQy8J-0006zo-QO
for bug-libtool@HIDDEN; Mon, 30 May 2011 04:47:33 -0400
Received: from mailfw02.zoner.fi ([84.34.147.249]:9576)
by eggs.gnu.org with esmtp (Exim 4.71)
(envelope-from <lasse.collin@HIDDEN>) id 1QQy8J-0006zd-Ji
for bug-libtool@HIDDEN; Mon, 30 May 2011 04:47:31 -0400
Received: from www25.zoner.fi ([84.34.147.45])
by wwwsmtp02.zoner.fi with ESMTP; 30 May 2011 11:47:27 +0300
Received: from 86-60-156-244-dyn-dsl.ssp.fi ([86.60.156.244]
helo=kaneli.localnet)
by www25.zoner.fi with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.72)
(envelope-from <lasse.collin@HIDDEN>) id 1QQy8E-0004Aw-T2
for bug-libtool@HIDDEN; Mon, 30 May 2011 11:47:26 +0300
From: Lasse Collin <lasse.collin@HIDDEN>
Date: Mon, 30 May 2011 11:46:56 +0300
User-Agent: KMail/1.13.7 (Linux/2.6.38-ARCH; KDE/4.6.3; x86_64; ; )
MIME-Version: 1.0
X-Length: 2692
X-UID: 51
Content-Type: Text/Plain;
charset="us-ascii"
Content-Transfer-Encoding: 7bit
Message-Id: <201105301146.56637.lasse.collin@HIDDEN>
X-Antivirus-Scanner: Clean mail though you should still use an Antivirus
X-detected-operating-system: by eggs.gnu.org: Genre and OS details not
recognized.
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3)
X-Received-From: 140.186.70.17
X-Spam-Score: -6.6 (------)
X-Mailman-Approved-At: Mon, 30 May 2011 13:53:05 -0400
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.11
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <http://debbugs.gnu.org/pipermail/debbugs-submit>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <http://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Sender: debbugs-submit-bounces <at> debbugs.gnu.org
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
X-Spam-Score: -6.6 (------)
(Please CC replies to me, I'm not subscribed to the list.)
It seems that libtool does library versioning wrong on FreeBSD, NetBSD,
OpenBSD, MirOS BSD (based on OpenBSD), and probably also DragonFly BSD
(based on FreeBSD). I'm not an expert with *BSDs, but I have understood
that the versioning should be similar to version_type=linux:
GNU/Linux: libfoo.so.$major.$age.$revision
FreeBSD: libfoo.so.$major (It's ELF. a.out is dead.)
NetBSD: libfoo.so.$major.$age
OpenBSD: libfoo.so.$major.$age
That is, it shouldn't be libfoo.so.$current or
libfoo.so.$current.$revision. Should this be fixed? The hard part is
dealing with the (temporary) breakage that the fix would cause. It is
problematic especially because the version numbers will get smaller
(current vs. current-age) and thus may conflict with older versions of
the library that have been built with older libtool versions.
There are some operating system specific hacks that fix the incorrect
versioning used by unpatched GNU libtool. At least some packages in the
FreeBSD ports use FreeBSD-specific "ltverhack". I don't know if it is
used with all ports that use libtool.
On OpenBSD it's packager's job to handle library versioning, so upstream
versioning is overriden. Also, most packages needing libtool get built
using OpenBSD's own libtool (a Perl script) instead of GNU libtool.
MirOS BSD has a patched libtool which does the versioning correctly.
GNU libtool in NetBSD's pkgsrc has patches that change library
versioning for multiple operating systems, including the *BSDs mentioned
above.
If GNU libtool is fixed to use correct versioning on *BSDs, the
existence of the OS-specific hacks might mean that many libraries won't
be affected at all because the old libraries have already been built
with corrected versioning. On the other hand, some libs might not have
used those hacks so some breakage may still happen. Fixing the
versioning in GNU libtool might also break the hacks that have been in
use for many years.
Below are some references I happened to find.
FreeBSD:
From FreeBSD Developer's Handbook:
http://www.freebsd.org/doc/en/books/developers-handbook/policies-shlib.html
Look for "ltverhack" on this page:
http://www.freebsd.org/gnome/docs/gnome_porting.html
Something more about ltverhack:
http://freebsd.monkey.org/freebsd-multimedia/200702/msg00146.html
http://people.freebsd.org/~mezz/libtool.txt
NetBSD:
Patches in pkgsrc, see especially manual-libtool.m4:
http://cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/devel/libtool/patches/
OpenBSD:
Library versioning:
http://www.openbsd.org/faq/ports/specialtopics.html
OpenBSD libtool:
http://www.openbsd.org/cgi-bin/cvsweb/ports/infrastructure/bin/libtool
MirOS BSD:
A recent request to get MirOS BSD support into GNU libtool:
http://lists.gnu.org/archive/html/libtool-patches/2011-02/msg00008.html
--
Lasse Collin | IRC: Larhzu @ IRCnet & Freenode
Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.427 (Entity 5.427) Content-Type: text/plain; charset=utf-8 X-Loop: help-debbugs@HIDDEN From: help-debbugs@HIDDEN (GNU bug Tracking System) To: Lasse Collin <lasse.collin@HIDDEN> Subject: bug#8765: Acknowledgement (Incorrect library versioning on *BSDs) Message-ID: <handler.8765.B.130677798823226.ack <at> debbugs.gnu.org> References: <201105301146.56637.lasse.collin@HIDDEN> X-Gnu-PR-Message: ack 8765 X-Gnu-PR-Package: libtool Reply-To: 8765 <at> debbugs.gnu.org Date: Mon, 30 May 2011 17:54:02 +0000 Thank you for filing a new bug report with GNU. This is an automatically generated reply to let you know your message has been received. Your message is being forwarded to the package maintainers and other interested parties for their attention; they will reply in due course. Your message has been sent to the package maintainer(s): bug-libtool@HIDDEN If you wish to submit further information on this problem, please send it to 8765 <at> debbugs.gnu.org. Please do not send mail to help-debbugs@HIDDEN unless you wish to report a problem with the Bug-tracking system. --=20 8765: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D8765 GNU Bug Tracking System Contact help-debbugs@HIDDEN with problems
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.