Re: freeze exception qpdf versioned symbols?
- To: Jonathan Nieder <jrnieder@gmail.com>
- Cc: debian-release@lists.debian.org
- Subject: Re: freeze exception qpdf versioned symbols?
- From: Jay Berkenbilt <qjb@debian.org>
- Date: Sun, 22 Jul 2012 21:38:24 -0400
- Message-id: <20120722213822.0386649101.qww314159@soup>
- In-reply-to: <20120722071518.GA4749@burratino> (Jonathan Nieder's message of "Sun, 22 Jul 2012 02:15:18 -0500")
- References: <20120714110026.0385755749.qww314159@soup> <20120715205014.GC1893@mraw.org> <20120718104636.1877182123.qww314159@jberkenbilt-linux> <20120722071518.GA4749@burratino>
Jonathan Nieder <jrnieder@gmail.com> wrote:
> Hi,
>
> Jay Berkenbilt wrote:
>
>> Okay, I've attached two files here. The first is a copy of
>> version-symbols.patch with the real changes, so this excludes the
>> changes to the regenerated configure file. The second file is a source
>> debdiff.
>
> I am not on the release team, so please take anything I say with a
> grain of salt.
The release team decided that they weren't going to accept this, so this
discussion is now academic. However, you made some interesting points
that I thought were worth responding to.
> [...]
>> --- qpdf-2.3.1/debian/changelog 2012-05-19 09:21:52.000000000 -0400
>> +++ qpdf-2.3.1/debian/changelog 2012-07-18 10:20:10.000000000 -0400
>> @@ -1,3 +1,9 @@
>> +qpdf (2.3.1-5) unstable; urgency=low
>> +
>> + * Enable versioned symbols.
>
> Are the symbol versions used shared with upstream, or is this a
> Debian-specific thing?
>
> *checks*
>
> Looks like these are Debian-private but the patch is based on 92c94e7d
> (Add symbol versioning, 2012-06-20). Ok.
I am upstream for this. I enabled versioned symbols for future releases
of qpdf (I will soon be releasing 3.0.0). This was a debian-specific
backport to 2.3.1 for the old ABI. qpdf does appear in other
distributions that I am not involved in, and they wouldn't have
versioned symbols. So actually this is a pretty decent argument for not
doing it anyway.
>> ++# Check if LD supports linker scripts, and define conditional
>> ++# HAVE_LD_VERSION_SCRIPT if so. This functionality is currently
>> ++# constrained to compilers using GNU ld on ELF systems or systems
>> ++# which provide an adequate emulation thereof.
>> ++AC_ARG_ENABLE([ld-version-script],
>> ++ AS_HELP_STRING([--enable-ld-version-script],
>> ++ [enable linker version script (default is disabled)]),
>
> Is the default really --disable?
No, the default is really enable. I copied this code from something
that had a default of disable, and while I changed the default, I didn't
change the help message. Thanks for catching it. I fixed it upstream
now.
>> +@@ -0,0 +1,4 @@
>> ++LIBQPDF_3 {
>> ++ global:
>> ++ *;
>> ++};
>
> It would be more comforting to have a list of symbols intended for
> export here, so unintentional ABI changes could be caught more easily.
> Do I understand that that would be hard to make because this is a C++
> library?
It would be hard but not impossible. qpdf also works on Windows, and
for that, I already have every public API marked, but I don't think the
value for the amount of effort is good enough.
> Thanks and hope that helps,
Yes, your comments were helpful and at least resulted in fixing the
configure help message. Thanks!
--
Jay Berkenbilt <qjb@debian.org>
Reply to: