| AWARE [SYSTEMS] | Imaging expertise for the Delphi developer | |||||||
![]() |
TIFF and LibTiff Mailing List Archive | |||||||
LibTiff Mailing List
TIFF and LibTiff Mailing List Archive Contact
The TIFF Mailing List Homepage |
Thread2009.08.21 15:26 "Re: Libtiff 3.9.0 Released", by Jay BerkenbiltBob Friesenhahn <bfriesen@simple.dallas.tx.us> wrote:
>> This document doesn't clearly answer the first two questions any
>> packager will have about it, which are whether 3.9.0 is ABI compatible
>> with 3.8.2, and if not how about source-code compatible? I could
>> consider dropping 3.9.0 into Fedora 12 if it's ABI compatible, but
>> if not it's probably too late ...
>
> Jay Berkenbilt (of the Debian project) expressed the opinion that it
> is ABI compatible with 3.8.2, that he had done testing in Debian
> experimental, and was planning to incorporate the code used to produce
> 3.9.0 into Debian.
Here is the testing I've done to convince myself sufficiently to be
willing to put this in debian:
* Careful comparison of 3.8.2 and 3.9.0 versions of tiff.h and
tiffio.h. There are some whitespace and comment changes, and a few
replacements of field types with typedefs to the same type. There
are a few added functions but no added structure fields or changed
functions. I see no changes that should affect ABI on either 32-bit
or 64-bit systems.
* Careful inspection of changes to dif_dirinfo.c. This source file
contains the table that tells TIFF{Get,Set}Field how to interpret the
third argument of these functions. Changes in this source file can
(and have in the past) introduced unintended ABI changes.
* Installing a new shared library and running it against old binaries.
Binaries tested: display from ImageMagick, eog, gthumb, and tiffgt
(from the tiff distribution) on the sample images including a wide
range of encodings. My runtime tests were done on my 32-bit ix86
system. I don't have access to a 64-bit system for testing.
To be even more thorough, it would be useful to make sure that
applications that use both the rgba image interface and the read
scanlines interface work on both 32-bit and 64-bit systems, but having
maintained tiff for debian since 2004 (when I helped manage the
transition required as a result of unintentional ABI changes somewhere
between 3.5.7 and 3.6.1) and having blocked at least two unintended ABI
changes in the mean time, I am reasonably confident that my testing
methods are sufficient.
In particular, note that 3.9.0beta was not ABI compatible with 3.8.2,
but the changes introduced that broke compatibility were corrected in
the 3.9 branch subsequently.
I will be uploading 3.9.0 into debian unstable today. If there are any
ABI breakages that I missed, they will likely show up very quickly, and
I will make sure that I am on top of them. If there is not a rash of
new libtiff bugs traceable to ABI changes in debian over the next
several days, I think we can be quite confident that 3.9.0 is ABI
compatible with 3.8.2, and that it would be safe for Fedora 12.
Hope that helps.
--
Jay Berkenbilt <ejb@ql.org>
|
|||||||