Re: Using symbols files
On Wed, Jan 16, 2008 at 10:28:46AM +0000, Neil Williams wrote:
> On Tue, 2008-01-15 at 12:50 +0000, Mark Brown wrote:
> > On Tue, Jan 15, 2008 at 10:44:32AM +0000, Neil Williams wrote:
> > Right, as you say the problems here are nothing to do with symbols
> > files or symbol versioning. A poorly maintained library is going to
> > create trouble no matter what and a well maintained library should be
> > fine even if it does not use versioned symbols.
> > For example, the zlib library has never had a soname bump because
> > upstream are careful to only add new interfaces.
> I'm not sure zlib is a good example - when I built the current sources
> (which contained the symbols file), I got a lot of lintian warnings
> about the symbols.
Issues with the Debian symbols files are, of course, purely a packaging
issue and have absolutely no effect on the stability of the upstream ABI
or upstream use of versioned symbols which is the point here. You said
| Quick summary: IMHO, symbols files are largely irrelevant if not
| supported upstream via versioned symbols. Versioned symbols are largely
and as I said in the text you cut the issue is really how well upstream
maintain their ABI. In terms of Debian symbol files all that versioned
symbols do is add an @ in the middle of the symbol names.
Versioned symbols are mostly useful to upstreams that target only target
operating systems that support them. Other upstreams are going to have
to deal with maintianing a stable ABI without the help of symbol files
anyway so could reasonably choose not to use them, though they are still
useful when a soname bump is eventually forced. zlib is an example of
this sort of upstream.
> Reminder: the symbols file provided by mole *needs editing*. In
> particular, the Debian version needs to be stripped off (not sure why
> this isn't done already) for reasons explained on the Wiki page.
The symbol files for zlib didn't use the mole data at all; it just
predates Lintian support for versioned symbols and the wiki page wasn't
very Googleable for me (ImprovedDpkgShlibdeps was what came up and I
only just added a link to the UsingSymbolsFiles page from there). Note,
though, that the default for any symbols not covered by the version file
is to get the full version of the package - this is the source of
several of the warnings here, the symbols shouldn't be there.
[BTW, please note that the general policy on Debian lists is *not* to CC
other posters unless they ask to be CCed.]
"You grabbed my hand and we fell into it, like a daydream - or a fever."