From owner-freebsd-ports@FreeBSD.ORG Sat Feb 21 00:03:29 2009 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1F5771065674 for ; Sat, 21 Feb 2009 00:03:29 +0000 (UTC) (envelope-from mezz7@cox.net) Received: from eastrmmtao107.cox.net (eastrmmtao107.cox.net [68.230.240.59]) by mx1.freebsd.org (Postfix) with ESMTP id 9CF678FC0C for ; Sat, 21 Feb 2009 00:03:28 +0000 (UTC) (envelope-from mezz7@cox.net) Received: from eastrmimpo03.cox.net ([68.1.16.126]) by eastrmmtao107.cox.net (InterMail vM.7.08.02.01 201-2186-121-102-20070209) with ESMTP id <20090221000328.CWGC23750.eastrmmtao107.cox.net@eastrmimpo03.cox.net>; Fri, 20 Feb 2009 19:03:28 -0500 Received: from localhost ([68.103.37.153]) by eastrmimpo03.cox.net with bizsmtp id JQ3T1b00N3JFCbG02Q3TCQ; Fri, 20 Feb 2009 19:03:28 -0500 X-Authority-Analysis: v=1.0 c=1 a=w7AQFoAdmqEA:10 a=qj9uwJrD-0AA:10 a=VVlED5B4AAAA:8 a=6I5d2MoRAAAA:8 a=kviXuzpPAAAA:8 a=iEdrdD3h8lR9WhFQKE8A:9 a=DwNZbziqic9vISAw9EUA:7 a=1ehNtF7j5ckVMEC7u-WcKURRQ9YA:4 a=LY0hPdMaydYA:10 a=BFDKbZatV3MA:10 a=4vB-4DCPJfMA:10 a=SV7veod9ZcQA:10 a=Ap7VSLCKDDIMQsen:21 a=fLIoD_xbeYoYr5C2:21 X-CM-Score: 0.00 Date: Fri, 20 Feb 2009 18:03:18 -0600 To: "Thomas Schmitt" From: "Jeremy Messenger" Content-Type: text/plain; format=flowed; delsp=yes; charset=utf-8 MIME-Version: 1.0 References: <1027221507572@212.46.126.165> Content-Transfer-Encoding: 7bit Message-ID: In-Reply-To: <1027221507572@212.46.126.165> User-Agent: Opera Mail/9.63 (Linux) Cc: freebsd-ports@freebsd.org Subject: Re: Problem with .so numbering on FreeBSD in contrast to Linux X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 21 Feb 2009 00:03:29 -0000 On Fri, 20 Feb 2009 13:23:43 -0600, Thomas Schmitt wrote: > Hi, > > i am trying to provide libraries for FreeBSD > and Linux via a build system based on autotools. > My problem is that the .so numbers get produced > differently on both systems. > E.g. > libburn.so.31 on FreeBSD > libburn.so.4.27.0 on Linux > > This has the consequence that on Linux older > applications can work with the newest libraries > whereas on FreeBSD the application has to > be re-built for that. > > Is that intentional on FreeBSD ? > Shall there be no backward compatibility > with .so ? > > > The numbers stem from ./configure.ac > LT_CURRENT=31 > LT_AGE=27 > LT_REVISION=0 > They are handed over to ./libtool as > -version-info 31:0:27 > on both systems. > > The libburnia libraries have evolving ABIs > which are backward compatible. Applications > can inquire the library version at run time in > order to check whether the feature set suffices. > > So i would prefer to produce > libburn.so.4 > with every new release. > But i also want to obey the conventions of > the operating systems. On Linux that means to > increase both LT_CURRENT and LT_AGE. > On FreeBSD one would obviously have to leave > LT_CURRENT unchanged. > > How do other projects solve that dilemma ? > > Should i strive for constant libburn.so.4 > on FreeBSD at all ? http://people.freebsd.org/~mezz/libtool.txt You can use ports/Mk/bsd.gnome.mk's hack in libtool to correct the version. You can add in ports's Makefile like this: ------------------------------ USE_AUTOTOOLS= libtool:15 USE_GNOME= ltverhack ------------------------------ If for some reason, this library bumped for no reason and doesn't need to be. You can custom number of version like this: ------------------------------ USE_AUTOTOOLS= libtool:15 USE_GNOME= ltverhack:6 ------------------------------ Then it will be libfoo.so.6. All GNOME ports are using ltverhack such as gtk20, glib20, pango and etc without custom number. I think it's fixed in libtool2 for FreeBSD, but someone might want to check in libtool repo to make sure. > (libtool is the expert. Possibly it is smarter > than me.) Since you are able to figure it out. You are smart already. ;-) Cheers, Mezz > Have a nice day :) > > Thomas -- mezz7@cox.net - mezz@FreeBSD.org FreeBSD GNOME Team http://www.FreeBSD.org/gnome/ - gnome@FreeBSD.org