[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Devel] freetype 2.0.5 shared lib revision
From: |
Owen Taylor |
Subject: |
Re: [Devel] freetype 2.0.5 shared lib revision |
Date: |
03 Jan 2002 12:37:47 -0500 |
User-agent: |
Gnus/5.0807 (Gnus v5.8.7) Emacs/20.7 |
Matthieu Herrb <address@hidden> writes:
> Werner LEMBERG wrote (in a message from Monday 31)
> >
> > libfreetype.so.7.0? The last `official' version set up in June 2001
> > was libtool version 7:0:1 which builds libfreetype.so.6.1.0; I've
> > increased that to 8:0:2 which corresponds to libfreetype.so.6.2.0.
> >
>
> 7.0 is what I get on my OpenBSD system. I wonder how libtool generates
> the shared library revision from the version_info string exactly on
> different systems...
Because *BSD systems don't support the concept of "minor" revisions,
libtool simply uses the "current" field for the library revision.
(Looking at libtool sources, apparently the concept of a minor wasn't
added with the transition to elf.)
So, you can never compatibly extend a shared library interface on *BSD
according to libtool - as soon as you add interfaces, you need to
recompile all programs that use the library)
This is somewhat bogus ... Using only 'current' for the major gives
you protection against moving binaries to systems with older
libraries, but those problems would be caught anyways because there
would be undefined symbols.
But I guess it can't be changed at this point ... if libtool switched
over to using current - age for the minor on *BSD as it did elsewhere,
then suddenly libraries using libtool would have different version
numbers.
People on the libtool mailing list would probably know more about
the history here.
> > Hmm, maybe I should use 8:0:0 instead (following libtool's versioning
> > rules)?
>
> I can't guess what kind of shared lib revision this will produce on
> OpenBSD. Probably 8.0.
Yep.
(8:0:0 would be a very drastic move, since it would break
binary compatibility on all platforms, not just on *BSD)
Regards,
Owen