AWARE SYSTEMS
TIFF and LibTiff Mail List Archive

Thread

2015.06.16 14:39 "[Tiff] CMake support for building libtiff", by Roger Leigh
2015.06.16 17:51 "Re: [Tiff] CMake support for building libtiff", by Lee Howard
2015.06.17 03:16 "Re: [Tiff] CMake support for building libtiff", by Bob Friesenhahn
2015.06.17 22:38 "Re: [Tiff] CMake support for building libtiff", by Roger Leigh
2015.06.18 22:08 "Re: [Tiff] CMake support for building libtiff", by Roger Leigh
2015.06.19 11:54 "Re: [Tiff] CMake support for building libtiff", by Roger Leigh
2015.07.02 07:10 "[Tiff] [patch] Additional CMake fixes", by Roger Leigh
2015.07.04 22:10 "Re: [Tiff] [patch] Additional CMake fixes", by Bob Friesenhahn
2015.08.29 11:34 "[Tiff] [patch] Docs for cmake build and some minor tweaks", by Roger Leigh
2015.08.29 15:36 "Re: [Tiff] [patch] Docs for cmake build and some minor tweaks", by Bob Friesenhahn
2015.08.31 15:12 "[Tiff] [patch] cmake fixes", by
2015.08.31 15:34 "Re: [Tiff] [patch] cmake fixes", by Bob Friesenhahn
2015.08.31 16:05 "Re: [Tiff] [patch] cmake fixes", by
2015.08.31 18:14 "Re: [Tiff] [patch] cmake fixes", by Roger Leigh
2015.09.01 03:05 "Re: [Tiff] [patch] cmake fixes", by Bob Friesenhahn
2015.09.01 10:36 "Re: [Tiff] [patch] cmake fixes", by
2015.09.01 15:42 "Re: [Tiff] [patch] cmake fixes", by Bob Friesenhahn
2015.09.01 17:36 "Re: [Tiff] [patch] cmake fixes", by Roger Leigh
2015.09.01 17:56 "Re: [Tiff] [patch] cmake fixes", by Roger Leigh
2015.09.01 03:00 "Re: [Tiff] [patch] cmake fixes", by Bob Friesenhahn
2015.06.19 13:53 "Re: [Tiff] CMake support for building libtiff", by Rhys Thomas
2015.06.22 20:37 "Re: [Tiff] CMake support for building libtiff", by Roger Leigh
2015.06.24 15:26 "Re: [Tiff] CMake support for building libtiff", by Rhys Thomas
2015.06.24 16:23 "Re: [Tiff] CMake support for building libtiff", by Bob Friesenhahn
2015.06.24 19:23 "Re: [Tiff] CMake support for building libtiff", by Rhys Thomas
2015.06.24 19:33 "Re: [Tiff] CMake support for building libtiff", by Roger Leigh
2015.06.19 13:41 "Re: [Tiff] 4.0.4beta: Symbol differences on Unix and Windows", by Bob Friesenhahn
2015.06.18 21:56 "[Tiff] 4.0.4beta: Symbol differences on Unix and Windows", by Roger Leigh
2015.06.18 22:15 "Re: [Tiff] 4.0.4beta: Symbol differences on Unix and Windows", by Bob Friesenhahn
2015.06.18 22:32 "Re: [Tiff] 4.0.4beta: Symbol differences on Unix and Windows", by Roger Leigh
2015.06.23 09:22 "Re: [Tiff] 4.0.4beta: Symbol differences on Unix and Windows", by Ondřej Surý
2015.06.23 10:03 "Re: [Tiff] 4.0.4beta: Symbol differences on Unix and Windows", by Ondřej Surý
2015.06.23 13:01 "Re: [Tiff] 4.0.4beta: Symbol differences on Unix and Windows", by Bob Friesenhahn
2015.06.25 02:32 "Re: [Tiff] CMake support for building libtiff", by Bob Friesenhahn

2015.06.23 10:03 "Re: [Tiff] 4.0.4beta: Symbol differences on Unix and Windows", by Ondřej Surý

A little experiment that took libtiff.def and put the content into libtiff.map revealed:

that's correct or not, since they are part of public API (according to headers)

I assume that TIFF* prefix is meant for public symbols and _TIFF* for internal, then

- There are couple of TIFF* symbols missing from .def file:
+#MISSING: 4.0.4-1# TIFFDefaultDirectory@LIBTIFF_4.0 4.0.3
+#MISSING: 4.0.4-1# TIFFFaxBlackCodes@LIBTIFF_4.0 4.0.3
+#MISSING: 4.0.4-1# TIFFFaxBlackTable@LIBTIFF_4.0 4.0.3
+#MISSING: 4.0.4-1# TIFFFaxMainTable@LIBTIFF_4.0 4.0.3
+#MISSING: 4.0.4-1# TIFFFaxWhiteCodes@LIBTIFF_4.0 4.0.3
+#MISSING: 4.0.4-1# TIFFFaxWhiteTable@LIBTIFF_4.0 4.0.3
+#MISSING: 4.0.4-1# TIFFFillStrip@LIBTIFF_4.0 4.0.3
+#MISSING: 4.0.4-1# TIFFFillTile@LIBTIFF_4.0 4.0.3
+#MISSING: 4.0.4-1# TIFFFlushData1@LIBTIFF_4.0 4.0.3
+#MISSING: 4.0.4-1# TIFFInitCCITTFax3@LIBTIFF_4.0 4.0.3
+#MISSING: 4.0.4-1# TIFFInitCCITTFax4@LIBTIFF_4.0 4.0.3
+#MISSING: 4.0.4-1# TIFFInitCCITTRLE@LIBTIFF_4.0 4.0.3
+#MISSING: 4.0.4-1# TIFFInitCCITTRLEW@LIBTIFF_4.0 4.0.3
+#MISSING: 4.0.4-1# TIFFInitDumpMode@LIBTIFF_4.0 4.0.3
+#MISSING: 4.0.4-1# TIFFInitJBIG@LIBTIFF_4.0 4.0.3
+#MISSING: 4.0.4-1# TIFFInitJPEG@LIBTIFF_4.0 4.0.3
+#MISSING: 4.0.4-1# TIFFInitLZMA@LIBTIFF_4.0 4.0.3
+#MISSING: 4.0.4-1# TIFFInitLZW@LIBTIFF_4.0 4.0.3
+#MISSING: 4.0.4-1# TIFFInitNeXT@LIBTIFF_4.0 4.0.3
+#MISSING: 4.0.4-1# TIFFInitOJPEG@LIBTIFF_4.0 4.0.3
+#MISSING: 4.0.4-1# TIFFInitPackBits@LIBTIFF_4.0 4.0.3
+#MISSING: 4.0.4-1# TIFFInitPixarLog@LIBTIFF_4.0 4.0.3
+#MISSING: 4.0.4-1# TIFFInitSGILog@LIBTIFF_4.0 4.0.3
+#MISSING: 4.0.4-1# TIFFInitThunderScan@LIBTIFF_4.0 4.0.3
+#MISSING: 4.0.4-1# TIFFInitZIP@LIBTIFF_4.0 4.0.3
+#MISSING: 4.0.4-1# TIFFPredictorCleanup@LIBTIFF_4.0 4.0.3
+#MISSING: 4.0.4-1# TIFFPredictorInit@LIBTIFF_4.0 4.0.3

Some of those are not part of the public API (not in public header files, so perhaps renaming them to _TIFF as a part of cleanup would be nice to have).

On the other hand there are still several internal _TIFF symbols exported, I wonder if this could be avoided in the future?

Couple more symbols from LogL API:

+#MISSING: 4.0.4-1# XYZtoRGB24@LIBTIFF_4.0 4.0.3
+#MISSING: 4.0.4-1# uv_decode@LIBTIFF_4.0 4.0.3
+#MISSING: 4.0.4-1# uv_encode@LIBTIFF_4.0 4.0.3

+#MISSING: 4.0.4-1# libport_dummy_function@LIBTIFF_4.0 4.0.3

I guess this should never be exported as it's pulled from libport.la noinst library...

I think that fixing this warant a SOVERSION bump, unless you can be absolutely sure that nothing uses those private symbols anywhere (so I would say that SOVERSION bump is needed).

Cheers,
Ondrej

On Tue, Jun 23, 2015, at 11:22, Ondřej Surý wrote: