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

Re: Do symbols make sense for C++



Sune Vuorela <nospam@vuorela.dk> writes:
> On 2012-01-26, Russ Allbery <rra@debian.org> wrote:

>> But that feels like a result contrary to what I had previously thought
>> was the intended direction, so I wanted to ask the Debian development
>> community as a whole: am I missing something?  Are these symbols files
>> actually useful?

> Symbol files are nice if you have a upstream who doesn't always take
> binary compatibility that serious (which is probably the case for 75% of
> upstreamers). Then you have a list that helps you finding out.

This is probably the best summary of why a symbols file might be useful.
It helps catch cases where ABI compatibility is not maintained without
people being aware that this broke.

> (and then of course there is the usual bits and pieces about why symbol
> files are useful)

I think this is probably the summary of my previous message: a lot of
those places don't seem as useful for C++ as for C, because ABI
compatibility is a lot more complex (and in some ways a lot harder to
maintain), so the equivalent of a shlibs bump is probably more frequently
the right thing to do.

> You miss pkgkde-symbolshelper written by the fabulous Modestas Vainius
> which is available in pkg-kde-tools.

> http://pkg-kde.alioth.debian.org/symbolfiles.html

I've gone back and built symbols files for two of my libraries using these
tools, and indeed, they are excellent.  They handle marking template
symbols as optional and decoding some of the symbols with c++ tags, as
well as doing all the other tedious work that I ran into with creating the
symbols file.

I'm going to try maintaining these libraries a while using the tools from
pkg-kde-tools and see how it goes.  I highly recommend anyone else who
wants to look at symbols files for C++ also look at them.  (It might be a
good idea to eventually move these tools into devscripts or some other
place that doesn't sound KDE-specific and would be easier for the general
Debian developer to find.)

-- 
Russ Allbery (rra@debian.org)               <http://www.eyrie.org/~eagle/>


Reply to: