libtool
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Shared library versioning


From: Lasse Collin
Subject: Re: Shared library versioning
Date: Thu, 16 Jun 2011 21:50:07 +0300
User-agent: KMail/1.13.7 (Linux/2.6.39-ARCH; KDE/4.6.3; x86_64; ; )

On 2011-06-14 Bob Friesenhahn wrote:
> On Tue, 14 Jun 2011, Lasse Collin wrote:
> >    http://www.openbsd.org/faq/ports/specialtopics.html
> 
> If this web page text is correct, then I agree that libtool is doing
> the wrong thing for OpenBSD.  But of course we should search for any
> additional information and consult with relevant OpenBSD maintainers
> before making any such change since FAQ text could easily be wrong.

I discussed with Marc Espie from OpenBSD. He wrote:

> The rule for us is simple:
> - same ABI = same .so.major.minor
> - new stuff = bump minor
> - incompatible ABI = bump major, reset minor.

So the FAQ is correct.

He also pointed out that sometimes ABI incompatibilities cannot be 
foreseen by the upstream developers. So it would be good to have an easy 
way for packagers to override the library version. OpenBSD's own libtool 
can read the versions from environment variables. I think such a feature 
could be OK in GNU Libtool too, if it is easy to add. That way people 
won't need to add configure options to override the version or patch 
makefiles.

About -version-info vs. -version-number: *If* it turns out that all 
operating systems supported by Libtool should use a versioning style 
that is essentially the same as version_type=linux, could 
-version-number become the recommended option to set the library 
version?

Major:minor:revision is easier to understand than current:revision:age, 
which in practice is (major+minor):revision:minor. Using a scheme that 
is easier to understand would hopefully reduce mistakes in library 
versioning. Naturally this still assumes that no operating system truly 
needs a different versioning style.

-- 
Lasse Collin  |  IRC: Larhzu @ IRCnet & Freenode



reply via email to

[Prev in Thread] Current Thread [Next in Thread]