Details Ticket 2964


Comment | Reply | Take | Resolve


Serial Number 2964
Subject Please use libtool soname versioning
Area grass6
Queue grass
Requestors debian@adkgis.org,neteler@itc.it
Owner none
Status open
Last User Contact Sat Nov 4 18:25:25 2006 (2 yr ago)
Current Priority 30
Final Priority 70
Due No date assigned
Last Action Sat Nov 4 18:25:25 2006 (2 yr ago)
Created Fri Feb 4 16:03:43 2005 (4 yr ago)

Transaction History Ticket 2964


Fri, Feb 4 2005 16:03:43    Request created by debian@adkgis.org  
Return-Path <debian@adkgis.org>
Delivered-To grass-bugs@lists.intevation.de
Subject Please use libtool soname versioning
From Steve Halasz <debian@adkgis.org>
To grass-bugs@intevation.de
Cc DebianGIS <pkg-grass-general@lists.alioth.debian.org>
Content-Type text/plain
Date Fri, 04 Feb 2005 10:03:25 -0500
Message-Id <1107529405.3856.17.camel@marcy>
Mime-Version 1.0
X-Mailer Evolution 2.0.3
Content-Transfer-Encoding 7bit
X-Authentication-Info Submitted using SMTP AUTH at out001.verizon.net from [70.18.100.81] at Fri, 4 Feb 2005 09:03:31 -0600
X-Spam-Status No, hits=-4.9 tagged_above=-999.0 required=3.0 tests=BAYES_00
X-Spam-Level
Currently the libraries are versioned like libgrass_shape.6.0.cvs.so
with links. It would be great if you could switch to a soname versioning
scheme a la libtool[1]. This would solve a problem with packaging
programs that depend on the grass libs. Right now, every new release of
grass will break the gdal-grass packages dependencies. The libgrass
version should change based on changes to its interface rather than
versions of grass.

I looked into using libtool for grass and it looked like it was very
helpful to use automake to integrate it. So are there reasons grass
isn't using automake/libtool already? If using libtool isn't palatable,
can we at least adopt the versioning scheme beginning at libgrass0.0.0?

I'm trying to follow the guidelines in the Debian library packaging
guide[2].

Thanks,
Steve

[1] http://www.gnu.org/software/libtool/manual.html#SEC32
[2]
http://www.netfort.gr.jp/~dancer/column/libpkg-guide/libpkg-guide.html


Sat, Feb 5 2005 17:32:04    Request created by neteler@itc.it (as #2968)  
Return-Path <neteler@itc.it>
Delivered-To grass-bugs@lists.intevation.de
Date Sat, 5 Feb 2005 17:32:00 +0100
From Markus Neteler <neteler@itc.it>
To Steve Halasz <debian@adkgis.org>
Cc grass-bugs@intevation.de, DebianGIS <pkg-grass-general@lists.alioth.debian.org>
Subject Re: [Pkg-grass-general] Please use libtool soname versioning
Message-ID <20050205163200.GB4536@thuille.itc.it>
Mail-Followup-To Steve Halasz <debian@adkgis.org>, grass-bugs@intevation.de, DebianGIS <pkg-grass-general@lists.alioth.debian.org>
References <1107529405.3856.17.camel@marcy>
Mime-Version 1.0
Content-Type text/plain; charset=us-ascii
Content-Disposition inline
In-Reply-To <1107529405.3856.17.camel@marcy>
User-Agent Mutt/1.4.1i
X-Spam-Status No, hits=-4.9 tagged_above=-999.0 required=3.0 tests=BAYES_00
X-Spam-Level
On Fri, Feb 04, 2005 at 10:03:25AM -0500, Steve Halasz wrote:
> Currently the libraries are versioned like libgrass_shape.6.0.cvs.so
> with links. It would be great if you could switch to a soname versioning
> scheme a la libtool[1]. This would solve a problem with packaging
> programs that depend on the grass libs. Right now, every new release of
> grass will break the gdal-grass packages dependencies. The libgrass
> version should change based on changes to its interface rather than
> versions of grass.
> 
> I looked into using libtool for grass and it looked like it was very
> helpful to use automake to integrate it. So are there reasons grass
> isn't using automake/libtool already?

The (non) usage of libtool has been discussed a few times in the
past, see for example:

 http://grass.itc.it/pipermail/grass5/2002-April/005065.html
 http://grass.itc.it/pipermail/grass5/2003-November/013059.html

> If using libtool isn't palatable,
> can we at least adopt the versioning scheme beginning at libgrass0.0.0?

Maybe yes. This should be discussed on the GRASS developers list (note
that the bug report communication is automatically forwarded to the list).

But: We'll have to find a person who is actually implementing that in
this case.

Markus


Mon, Feb 7 2005 21:21:30    Mail sent by glynn@gclements.plus.com (as #2968)  
Return-Path <glynn@gclements.plus.com>
Delivered-To grass-bugs@lists.intevation.de
From Glynn Clements <glynn@gclements.plus.com>
MIME-Version 1.0
Content-Type text/plain; charset=us-ascii
Content-Transfer-Encoding 7bit
Message-ID <16903.52672.158216.643571@gargle.gargle.HOWL>
Date Mon, 7 Feb 2005 20:21:20 +0000
To Request Tracker <grass-bugs@intevation.de>
Cc grass5@grass.itc.it
Subject Re: [GRASS5] [bug #2968] (grass) Re: [Pkg-grass-general] Please use libtool soname versioning
In-Reply-To <20050205163204.9E543102BF7@lists.intevation.de>
References <20050205163204.9E543102BF7@lists.intevation.de>
X-Mailer VM 7.07 under 21.4 (patch 15) "Security Through Obscurity" XEmacs Lucid
X-Spam-Status No, hits=-4.9 tagged_above=-999.0 required=3.0 tests=BAYES_00
X-Spam-Level
Request Tracker wrote:

> this bug's URL: http://intevation.de/rt/webrt?serial_num=2968

> > If using libtool isn't palatable,
> > can we at least adopt the versioning scheme beginning at libgrass0.0.0?
> 
> Maybe yes. This should be discussed on the GRASS developers list (note
> that the bug report communication is automatically forwarded to the list).
Implementing soname versioning (at least for Linux) is simple enough;
just add:

	-Wl,-soname,$(SONAME)

to the linking command for building shared libraries, where $(SONAME)
is the library name, e.g.:

	SONAME = $(SHLIB_PREFIX)$(SHLIB_NAME)$(SHLIB_SUFFIX).$(SHLIB_VERSION)

[SHLIB_VERSION would need to be defined in any Makefile which includes
Lib.make.]

The main problem is ensuring that developers actually increment the
version whenever they make an incompatible change (otherwise there is
no point in having versioning).

-- 
Glynn Clements <glynn@gclements.plus.com>


Mon, Feb 7 2005 22:28:24    Mail sent by neteler@itc.it (as #2968)  
Return-Path <neteler@itc.it>
Delivered-To grass-bugs@lists.intevation.de
Date Mon, 7 Feb 2005 22:28:20 +0100
From Markus Neteler <neteler@itc.it>
To Glynn Clements via RT <grass-bugs@intevation.de>
Cc grass5 developers list <grass5@grass.itc.it>
Subject Re: [bug #2968] (grass) Re: [Pkg-grass-general] Please use libtool soname versioning
Message-ID <20050207212819.GA15713@thuille.itc.it>
Mail-Followup-To Glynn Clements via RT <grass-bugs@intevation.de>, grass5 developers list <grass5@grass.itc.it>
References <20050207202131.09EF1102BF9@lists.intevation.de>
Mime-Version 1.0
Content-Type text/plain; charset=us-ascii
Content-Disposition inline
In-Reply-To <20050207202131.09EF1102BF9@lists.intevation.de>
User-Agent Mutt/1.4.1i
X-Spam-Status No, hits=-4.9 tagged_above=-999.0 required=3.0 tests=BAYES_00
X-Spam-Level
On Mon, Feb 07, 2005 at 09:21:31PM +0100, Glynn Clements via RT wrote:
> 
> Request Tracker wrote:
> 
> > this bug's URL: http://intevation.de/rt/webrt?serial_num=2968
> 
> > > If using libtool isn't palatable,
> > > can we at least adopt the versioning scheme beginning at libgrass0.0.0?
> > 
> > Maybe yes. This should be discussed on the GRASS developers list (note
> > that the bug report communication is automatically forwarded to the list).
> 
> Implementing soname versioning (at least for Linux) is simple enough;
> just add:
> 
> 	-Wl,-soname,$(SONAME)
> 
> to the linking command for building shared libraries, where $(SONAME)
> is the library name, e.g.:
> 
> 	SONAME = $(SHLIB_PREFIX)$(SHLIB_NAME)$(SHLIB_SUFFIX).$(SHLIB_VERSION)

Is it reasonable to change it for the final release (may be a requirement
for Debian)?
 
> [SHLIB_VERSION would need to be defined in any Makefile which includes
> Lib.make.]
> 
> The main problem is ensuring that developers actually increment the
> version whenever they make an incompatible change (otherwise there is
> no point in having versioning).

This should not be a big issue (just awareness needed).

Thanks for the suggestion

Markus


Mon, Feb 7 2005 23:10:20    Request 2964 merged into 2964 by mneteler  
Mon, Feb 7 2005 23:10:55    Request 2968 merged into 2964 by mneteler (as #2968)  
Mon, Feb 28 2005 21:02:00    Area changed to grass6 by pcavallini  
Sat, Nov 4 2006 18:25:25    Mail sent by mneteler  
We are still not using libtool soname versioning...

Markus

https://intevation.de/rt/webrt?serial_num=2964
Comment | Reply | Take | Resolve

You are currently authenticated as guest.
[Show Configuration] [Login as another user]

Users Guide - Mail Commands - Homepage of RequestTracker 1.0.7 - list any request