2015.06.16 14:39 "[Tiff] CMake support for building libtiff", by Roger Leigh

2015.06.18 22:32 "Re: [Tiff] 4.0.4beta: Symbol differences on Unix and Windows", by Roger Leigh

On 18/06/2015 22:15, Bob Friesenhahn wrote:

Looking over the exported symbols between Unix (FreeBSD/ELF with nm -D) and Windows (the libtiff.def list), there are a lot of missing symbols on Windows. I've attached a list showing which are missing. Would it be possible to update the symbol list for 4.0.4? Some symbols are likely not supposed to be exported on Unix (expecially those without a TIFF or _TIFF prefix) and should probably be ignored.

Linux/FreeBSD/ELF exports all non-static symbols by default and this is usually unwanted. In this case, Windows is ahead of default ELF linkage. I do see at least one new symbol which should have been exposed for Windows.

Which one? Aren't there a few:

TIFFGetConfiguredCODECs (needed to find available codecs)

TIFFReadRGBAImageOriented (all other read variants exported)

TIFFSetCompressionScheme (all other setters exported)

TIFFSwabArrayOfTriples    (all other swab variants exported)
TIFFVGetFieldDefaulted    (all other field variants exported)

_TIFFCheckRealloc (all other allocation variants exported)

TIFFRasterScanline*       (all strip/tile variants exported)

TIFFSetErrorHandlerExt & TIFFSetWarningHandlerExt (?)

TIFFNumberOfDirectories (?)

These four are *definitely* required:

TIFFCreateCustomDirectory
TIFFCreateEXIFDirectory
TIFFWriteCustomDirectory
_TIFFRewriteField

Without these being exported, it's not possible to link and run the unit

tests and tools. Should all the other custom directory functions be

exported i.e TIFFCheckpointDirectory,TIFFReadCustomDirectory etc.?

Regards,
Roger