[ros-diffs] [dreimer] 48043: Fix libtiff's external functions.

dreimer at svn.reactos.org dreimer at svn.reactos.org
Wed Jul 14 17:12:22 UTC 2010


Author: dreimer
Date: Wed Jul 14 17:12:22 2010
New Revision: 48043

URL: http://svn.reactos.org/svn/reactos?rev=48043&view=rev
Log:
Fix libtiff's external functions.

Added:
    trunk/reactos/dll/3rdparty/libtiff/rosdiff.patch   (with props)
    trunk/reactos/include/reactos/libs/libtiff/rosdiff.patch   (with props)
Modified:
    trunk/reactos/dll/3rdparty/libtiff/libtiff.rbuild
    trunk/reactos/dll/3rdparty/libtiff/tif_open.c
    trunk/reactos/include/reactos/libs/libtiff/tiffio.h

Modified: trunk/reactos/dll/3rdparty/libtiff/libtiff.rbuild
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/libtiff/libtiff.rbuild?rev=48043&r1=48042&r2=48043&view=diff
==============================================================================
--- trunk/reactos/dll/3rdparty/libtiff/libtiff.rbuild [iso-8859-1] (original)
+++ trunk/reactos/dll/3rdparty/libtiff/libtiff.rbuild [iso-8859-1] Wed Jul 14 17:12:22 2010
@@ -3,8 +3,9 @@
 <module name="libtiff" type="win32dll" entrypoint="0" installbase="system32" installname="libtiff.dll" allowwarnings="true" crt="msvcrt">
 	<define name="WIN32" />
 	<define name="NDEBUG" />
-	<define name="_WINDOWS" />
-	<define name="_USRDLL" />
+	<define name="BUILD_LIBTIFF_DLL" />
+	<define name="DLL_EXPORT" />
+	<define name="USE_WIN32_FILEIO" />
 	<include base="libtiff">.</include>
 	<include base="ReactOS">include/reactos/libs/zlib</include>
 	<include base="ReactOS">include/reactos/libs/libtiff</include>

Added: trunk/reactos/dll/3rdparty/libtiff/rosdiff.patch
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/libtiff/rosdiff.patch?rev=48043&view=auto
==============================================================================
--- trunk/reactos/dll/3rdparty/libtiff/rosdiff.patch (added)
+++ trunk/reactos/dll/3rdparty/libtiff/rosdiff.patch [iso-8859-1] Wed Jul 14 17:12:22 2010
@@ -1,0 +1,15 @@
+Index: tif_open.c
+===================================================================
+--- tif_open.c	(revision 48037)
++++ tif_open.c	(working copy)
+@@ -516,6 +516,9 @@
+ TIFFSetClientdata(TIFF* tif, thandle_t newvalue)
+ {
+ 	thandle_t m = tif->tif_clientdata;
++#ifdef USE_WIN32_FILEIO
++	newvalue = (thandle_t) _get_osfhandle(newvalue);
++#endif /* USE_WIN32_FILEIO */
+ 	tif->tif_clientdata = newvalue;
+ 	return m;
+ }
+ 

Propchange: trunk/reactos/dll/3rdparty/libtiff/rosdiff.patch
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: trunk/reactos/dll/3rdparty/libtiff/tif_open.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/libtiff/tif_open.c?rev=48043&r1=48042&r2=48043&view=diff
==============================================================================
--- trunk/reactos/dll/3rdparty/libtiff/tif_open.c [iso-8859-1] (original)
+++ trunk/reactos/dll/3rdparty/libtiff/tif_open.c [iso-8859-1] Wed Jul 14 17:12:22 2010
@@ -516,6 +516,9 @@
 TIFFSetClientdata(TIFF* tif, thandle_t newvalue)
 {
 	thandle_t m = tif->tif_clientdata;
+#ifdef USE_WIN32_FILEIO
+	newvalue = (thandle_t) _get_osfhandle(newvalue);
+#endif /* USE_WIN32_FILEIO */
 	tif->tif_clientdata = newvalue;
 	return m;
 }

Added: trunk/reactos/include/reactos/libs/libtiff/rosdiff.patch
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/include/reactos/libs/libtiff/rosdiff.patch?rev=48043&view=auto
==============================================================================
--- trunk/reactos/include/reactos/libs/libtiff/rosdiff.patch (added)
+++ trunk/reactos/include/reactos/libs/libtiff/rosdiff.patch [iso-8859-1] Wed Jul 14 17:12:22 2010
@@ -1,0 +1,445 @@
+Index: tiffio.h
+===================================================================
+--- tiffio.h	(revision 48037)
++++ tiffio.h	(working copy)
+@@ -27,6 +27,30 @@
+ #ifndef _TIFFIO_
+ #define	_TIFFIO_
+ 
++#ifndef __GNUC__
++# define __DLL_IMPORT__  __declspec(dllimport)
++# define __DLL_EXPORT__  __declspec(dllexport)
++#else
++# define __DLL_IMPORT__  __attribute__((dllimport)) extern
++# define __DLL_EXPORT__  __attribute__((dllexport)) extern
++#endif 
++
++#if (defined __WIN32__) || (defined _WIN32)
++# ifdef BUILD_LIBTIFF_DLL
++#  define LIBTIFF_DLL_IMPEXP     __DLL_EXPORT__
++# elif defined(LIBTIFF_STATIC)
++#  define LIBTIFF_DLL_IMPEXP      
++# elif defined (USE_LIBTIFF_DLL)
++#  define LIBTIFF_DLL_IMPEXP     __DLL_IMPORT__
++# elif defined (USE_LIBTIFF_STATIC)
++#  define LIBTIFF_DLL_IMPEXP      
++# else /* assume USE_LIBTIFF_DLL */
++#  define LIBTIFF_DLL_IMPEXP     __DLL_IMPORT__
++# endif
++#else /* __WIN32__ */
++# define LIBTIFF_DLL_IMPEXP  
++#endif
++
+ /*
+  * TIFF I/O Library Definitions.
+  */
+@@ -80,10 +104,20 @@
+  */
+ 
+ #if defined(_WINDOWS) || defined(__WIN32__) || defined(_Windows)
++#  define BINMODE "b"
+ #  if !defined(__CYGWIN) && !defined(AVOID_WIN32_FILEIO) && !defined(USE_WIN32_FILEIO)
+ #    define AVOID_WIN32_FILEIO
+ #  endif
+-#endif
++#  include <fcntl.h>
++#  include <io.h>
++#  ifdef SET_BINARY
++#    undef SET_BINARY
++#  endif /* SET_BINARY */
++#  define SET_BINARY(f) do {if (!_isatty(f)) _setmode(f,_O_BINARY);} while (0)
++#else /* Windows */
++#  define BINMODE
++#  define SET_BINARY(f) (void)0
++#endif /* Windows */
+ 
+ #if defined(USE_WIN32_FILEIO)
+ # define VC_EXTRALEAN
+@@ -268,30 +302,30 @@
+ typedef	void (*TIFFUnmapFileProc)(thandle_t, tdata_t, toff_t);
+ typedef	void (*TIFFExtendProc)(TIFF*); 
+ 
+-extern	const char* TIFFGetVersion(void);
++LIBTIFF_DLL_IMPEXP	const char* TIFFGetVersion(void);
+ 
+-extern	const TIFFCodec* TIFFFindCODEC(uint16);
+-extern	TIFFCodec* TIFFRegisterCODEC(uint16, const char*, TIFFInitMethod);
+-extern	void TIFFUnRegisterCODEC(TIFFCodec*);
+-extern  int TIFFIsCODECConfigured(uint16);
+-extern	TIFFCodec* TIFFGetConfiguredCODECs(void);
++LIBTIFF_DLL_IMPEXP	const TIFFCodec* TIFFFindCODEC(uint16);
++LIBTIFF_DLL_IMPEXP	TIFFCodec* TIFFRegisterCODEC(uint16, const char*, TIFFInitMethod);
++LIBTIFF_DLL_IMPEXP	void TIFFUnRegisterCODEC(TIFFCodec*);
++LIBTIFF_DLL_IMPEXP  int TIFFIsCODECConfigured(uint16);
++LIBTIFF_DLL_IMPEXP	TIFFCodec* TIFFGetConfiguredCODECs(void);
+ 
+ /*
+  * Auxiliary functions.
+  */
+ 
+-extern	tdata_t _TIFFmalloc(tsize_t);
+-extern	tdata_t _TIFFrealloc(tdata_t, tsize_t);
+-extern	void _TIFFmemset(tdata_t, int, tsize_t);
+-extern	void _TIFFmemcpy(tdata_t, const tdata_t, tsize_t);
+-extern	int _TIFFmemcmp(const tdata_t, const tdata_t, tsize_t);
+-extern	void _TIFFfree(tdata_t);
++LIBTIFF_DLL_IMPEXP	tdata_t _TIFFmalloc(tsize_t);
++LIBTIFF_DLL_IMPEXP	tdata_t _TIFFrealloc(tdata_t, tsize_t);
++LIBTIFF_DLL_IMPEXP	void _TIFFmemset(tdata_t, int, tsize_t);
++LIBTIFF_DLL_IMPEXP	void _TIFFmemcpy(tdata_t, const tdata_t, tsize_t);
++LIBTIFF_DLL_IMPEXP	int _TIFFmemcmp(const tdata_t, const tdata_t, tsize_t);
++LIBTIFF_DLL_IMPEXP	void _TIFFfree(tdata_t);
+ 
+ /*
+ ** Stuff, related to tag handling and creating custom tags.
+ */
+-extern  int  TIFFGetTagListCount( TIFF * );
+-extern  ttag_t TIFFGetTagListEntry( TIFF *, int tag_index );
++LIBTIFF_DLL_IMPEXP  int  TIFFGetTagListCount( TIFF * );
++LIBTIFF_DLL_IMPEXP  ttag_t TIFFGetTagListEntry( TIFF *, int tag_index );
+     
+ #define	TIFF_ANY	TIFF_NOTYPE	/* for field descriptor searching */
+ #define	TIFF_VARIABLE	-1		/* marker for variable length tags */
+@@ -317,12 +351,12 @@
+     void           *value;
+ } TIFFTagValue;
+ 
+-extern	void TIFFMergeFieldInfo(TIFF*, const TIFFFieldInfo[], int);
+-extern	const TIFFFieldInfo* TIFFFindFieldInfo(TIFF*, ttag_t, TIFFDataType);
+-extern  const TIFFFieldInfo* TIFFFindFieldInfoByName(TIFF* , const char *,
++LIBTIFF_DLL_IMPEXP	void TIFFMergeFieldInfo(TIFF*, const TIFFFieldInfo[], int);
++LIBTIFF_DLL_IMPEXP	const TIFFFieldInfo* TIFFFindFieldInfo(TIFF*, ttag_t, TIFFDataType);
++LIBTIFF_DLL_IMPEXP  const TIFFFieldInfo* TIFFFindFieldInfoByName(TIFF* , const char *,
+ 						     TIFFDataType);
+-extern	const TIFFFieldInfo* TIFFFieldWithTag(TIFF*, ttag_t);
+-extern	const TIFFFieldInfo* TIFFFieldWithName(TIFF*, const char *);
++LIBTIFF_DLL_IMPEXP	const TIFFFieldInfo* TIFFFieldWithTag(TIFF*, ttag_t);
++LIBTIFF_DLL_IMPEXP	const TIFFFieldInfo* TIFFFieldWithName(TIFF*, const char *);
+ 
+ typedef	int (*TIFFVSetMethod)(TIFF*, ttag_t, va_list);
+ typedef	int (*TIFFVGetMethod)(TIFF*, ttag_t, va_list);
+@@ -334,180 +368,180 @@
+     TIFFPrintMethod	printdir;	/* directory print routine */
+ } TIFFTagMethods;
+         
+-extern  TIFFTagMethods *TIFFAccessTagMethods( TIFF * );
+-extern  void *TIFFGetClientInfo( TIFF *, const char * );
+-extern  void TIFFSetClientInfo( TIFF *, void *, const char * );
++LIBTIFF_DLL_IMPEXP  TIFFTagMethods *TIFFAccessTagMethods( TIFF * );
++LIBTIFF_DLL_IMPEXP  void *TIFFGetClientInfo( TIFF *, const char * );
++LIBTIFF_DLL_IMPEXP  void TIFFSetClientInfo( TIFF *, void *, const char * );
+ 
+-extern	void TIFFCleanup(TIFF*);
+-extern	void TIFFClose(TIFF*);
+-extern	int TIFFFlush(TIFF*);
+-extern	int TIFFFlushData(TIFF*);
+-extern	int TIFFGetField(TIFF*, ttag_t, ...);
+-extern	int TIFFVGetField(TIFF*, ttag_t, va_list);
+-extern	int TIFFGetFieldDefaulted(TIFF*, ttag_t, ...);
+-extern	int TIFFVGetFieldDefaulted(TIFF*, ttag_t, va_list);
+-extern	int TIFFReadDirectory(TIFF*);
+-extern	int TIFFReadCustomDirectory(TIFF*, toff_t, const TIFFFieldInfo[],
++LIBTIFF_DLL_IMPEXP	void TIFFCleanup(TIFF*);
++LIBTIFF_DLL_IMPEXP	void TIFFClose(TIFF*);
++LIBTIFF_DLL_IMPEXP	int TIFFFlush(TIFF*);
++LIBTIFF_DLL_IMPEXP	int TIFFFlushData(TIFF*);
++LIBTIFF_DLL_IMPEXP	int TIFFGetField(TIFF*, ttag_t, ...);
++LIBTIFF_DLL_IMPEXP	int TIFFVGetField(TIFF*, ttag_t, va_list);
++LIBTIFF_DLL_IMPEXP	int TIFFGetFieldDefaulted(TIFF*, ttag_t, ...);
++LIBTIFF_DLL_IMPEXP	int TIFFVGetFieldDefaulted(TIFF*, ttag_t, va_list);
++LIBTIFF_DLL_IMPEXP	int TIFFReadDirectory(TIFF*);
++LIBTIFF_DLL_IMPEXP	int TIFFReadCustomDirectory(TIFF*, toff_t, const TIFFFieldInfo[],
+ 				    size_t);
+-extern	int TIFFReadEXIFDirectory(TIFF*, toff_t);
+-extern	tsize_t TIFFScanlineSize(TIFF*);
+-extern	tsize_t TIFFOldScanlineSize(TIFF*);
+-extern	tsize_t TIFFNewScanlineSize(TIFF*);
+-extern	tsize_t TIFFRasterScanlineSize(TIFF*);
+-extern	tsize_t TIFFStripSize(TIFF*);
+-extern	tsize_t TIFFRawStripSize(TIFF*, tstrip_t);
+-extern	tsize_t TIFFVStripSize(TIFF*, uint32);
+-extern	tsize_t TIFFTileRowSize(TIFF*);
+-extern	tsize_t TIFFTileSize(TIFF*);
+-extern	tsize_t TIFFVTileSize(TIFF*, uint32);
+-extern	uint32 TIFFDefaultStripSize(TIFF*, uint32);
+-extern	void TIFFDefaultTileSize(TIFF*, uint32*, uint32*);
+-extern	int TIFFFileno(TIFF*);
+-extern  int TIFFSetFileno(TIFF*, int);
+-extern  thandle_t TIFFClientdata(TIFF*);
+-extern  thandle_t TIFFSetClientdata(TIFF*, thandle_t);
+-extern	int TIFFGetMode(TIFF*);
+-extern	int TIFFSetMode(TIFF*, int);
+-extern	int TIFFIsTiled(TIFF*);
+-extern	int TIFFIsByteSwapped(TIFF*);
+-extern	int TIFFIsUpSampled(TIFF*);
+-extern	int TIFFIsMSB2LSB(TIFF*);
+-extern	int TIFFIsBigEndian(TIFF*);
+-extern	TIFFReadWriteProc TIFFGetReadProc(TIFF*);
+-extern	TIFFReadWriteProc TIFFGetWriteProc(TIFF*);
+-extern	TIFFSeekProc TIFFGetSeekProc(TIFF*);
+-extern	TIFFCloseProc TIFFGetCloseProc(TIFF*);
+-extern	TIFFSizeProc TIFFGetSizeProc(TIFF*);
+-extern	TIFFMapFileProc TIFFGetMapFileProc(TIFF*);
+-extern	TIFFUnmapFileProc TIFFGetUnmapFileProc(TIFF*);
+-extern	uint32 TIFFCurrentRow(TIFF*);
+-extern	tdir_t TIFFCurrentDirectory(TIFF*);
+-extern	tdir_t TIFFNumberOfDirectories(TIFF*);
+-extern	uint32 TIFFCurrentDirOffset(TIFF*);
+-extern	tstrip_t TIFFCurrentStrip(TIFF*);
+-extern	ttile_t TIFFCurrentTile(TIFF*);
+-extern	int TIFFReadBufferSetup(TIFF*, tdata_t, tsize_t);
+-extern	int TIFFWriteBufferSetup(TIFF*, tdata_t, tsize_t);
+-extern	int TIFFSetupStrips(TIFF *);
+-extern  int TIFFWriteCheck(TIFF*, int, const char *);
+-extern	void TIFFFreeDirectory(TIFF*);
+-extern  int TIFFCreateDirectory(TIFF*);
+-extern	int TIFFLastDirectory(TIFF*);
+-extern	int TIFFSetDirectory(TIFF*, tdir_t);
+-extern	int TIFFSetSubDirectory(TIFF*, uint32);
+-extern	int TIFFUnlinkDirectory(TIFF*, tdir_t);
+-extern	int TIFFSetField(TIFF*, ttag_t, ...);
+-extern	int TIFFVSetField(TIFF*, ttag_t, va_list);
+-extern	int TIFFWriteDirectory(TIFF *);
+-extern	int TIFFCheckpointDirectory(TIFF *);
+-extern	int TIFFRewriteDirectory(TIFF *);
+-extern	int TIFFReassignTagToIgnore(enum TIFFIgnoreSense, int);
++LIBTIFF_DLL_IMPEXP	int TIFFReadEXIFDirectory(TIFF*, toff_t);
++LIBTIFF_DLL_IMPEXP	tsize_t TIFFScanlineSize(TIFF*);
++LIBTIFF_DLL_IMPEXP	tsize_t TIFFOldScanlineSize(TIFF*);
++LIBTIFF_DLL_IMPEXP	tsize_t TIFFNewScanlineSize(TIFF*);
++LIBTIFF_DLL_IMPEXP	tsize_t TIFFRasterScanlineSize(TIFF*);
++LIBTIFF_DLL_IMPEXP	tsize_t TIFFStripSize(TIFF*);
++LIBTIFF_DLL_IMPEXP	tsize_t TIFFRawStripSize(TIFF*, tstrip_t);
++LIBTIFF_DLL_IMPEXP	tsize_t TIFFVStripSize(TIFF*, uint32);
++LIBTIFF_DLL_IMPEXP	tsize_t TIFFTileRowSize(TIFF*);
++LIBTIFF_DLL_IMPEXP	tsize_t TIFFTileSize(TIFF*);
++LIBTIFF_DLL_IMPEXP	tsize_t TIFFVTileSize(TIFF*, uint32);
++LIBTIFF_DLL_IMPEXP	uint32 TIFFDefaultStripSize(TIFF*, uint32);
++LIBTIFF_DLL_IMPEXP	void TIFFDefaultTileSize(TIFF*, uint32*, uint32*);
++LIBTIFF_DLL_IMPEXP	int TIFFFileno(TIFF*);
++LIBTIFF_DLL_IMPEXP  int TIFFSetFileno(TIFF*, int);
++LIBTIFF_DLL_IMPEXP  thandle_t TIFFClientdata(TIFF*);
++LIBTIFF_DLL_IMPEXP  thandle_t TIFFSetClientdata(TIFF*, thandle_t);
++LIBTIFF_DLL_IMPEXP	int TIFFGetMode(TIFF*);
++LIBTIFF_DLL_IMPEXP	int TIFFSetMode(TIFF*, int);
++LIBTIFF_DLL_IMPEXP	int TIFFIsTiled(TIFF*);
++LIBTIFF_DLL_IMPEXP	int TIFFIsByteSwapped(TIFF*);
++LIBTIFF_DLL_IMPEXP	int TIFFIsUpSampled(TIFF*);
++LIBTIFF_DLL_IMPEXP	int TIFFIsMSB2LSB(TIFF*);
++LIBTIFF_DLL_IMPEXP	int TIFFIsBigEndian(TIFF*);
++LIBTIFF_DLL_IMPEXP	TIFFReadWriteProc TIFFGetReadProc(TIFF*);
++LIBTIFF_DLL_IMPEXP	TIFFReadWriteProc TIFFGetWriteProc(TIFF*);
++LIBTIFF_DLL_IMPEXP	TIFFSeekProc TIFFGetSeekProc(TIFF*);
++LIBTIFF_DLL_IMPEXP	TIFFCloseProc TIFFGetCloseProc(TIFF*);
++LIBTIFF_DLL_IMPEXP	TIFFSizeProc TIFFGetSizeProc(TIFF*);
++LIBTIFF_DLL_IMPEXP	TIFFMapFileProc TIFFGetMapFileProc(TIFF*);
++LIBTIFF_DLL_IMPEXP	TIFFUnmapFileProc TIFFGetUnmapFileProc(TIFF*);
++LIBTIFF_DLL_IMPEXP	uint32 TIFFCurrentRow(TIFF*);
++LIBTIFF_DLL_IMPEXP	tdir_t TIFFCurrentDirectory(TIFF*);
++LIBTIFF_DLL_IMPEXP	tdir_t TIFFNumberOfDirectories(TIFF*);
++LIBTIFF_DLL_IMPEXP	uint32 TIFFCurrentDirOffset(TIFF*);
++LIBTIFF_DLL_IMPEXP	tstrip_t TIFFCurrentStrip(TIFF*);
++LIBTIFF_DLL_IMPEXP	ttile_t TIFFCurrentTile(TIFF*);
++LIBTIFF_DLL_IMPEXP	int TIFFReadBufferSetup(TIFF*, tdata_t, tsize_t);
++LIBTIFF_DLL_IMPEXP	int TIFFWriteBufferSetup(TIFF*, tdata_t, tsize_t);
++LIBTIFF_DLL_IMPEXP	int TIFFSetupStrips(TIFF *);
++LIBTIFF_DLL_IMPEXP  int TIFFWriteCheck(TIFF*, int, const char *);
++LIBTIFF_DLL_IMPEXP	void TIFFFreeDirectory(TIFF*);
++LIBTIFF_DLL_IMPEXP  int TIFFCreateDirectory(TIFF*);
++LIBTIFF_DLL_IMPEXP	int TIFFLastDirectory(TIFF*);
++LIBTIFF_DLL_IMPEXP	int TIFFSetDirectory(TIFF*, tdir_t);
++LIBTIFF_DLL_IMPEXP	int TIFFSetSubDirectory(TIFF*, uint32);
++LIBTIFF_DLL_IMPEXP	int TIFFUnlinkDirectory(TIFF*, tdir_t);
++LIBTIFF_DLL_IMPEXP	int TIFFSetField(TIFF*, ttag_t, ...);
++LIBTIFF_DLL_IMPEXP	int TIFFVSetField(TIFF*, ttag_t, va_list);
++LIBTIFF_DLL_IMPEXP	int TIFFWriteDirectory(TIFF *);
++LIBTIFF_DLL_IMPEXP	int TIFFCheckpointDirectory(TIFF *);
++LIBTIFF_DLL_IMPEXP	int TIFFRewriteDirectory(TIFF *);
++LIBTIFF_DLL_IMPEXP	int TIFFReassignTagToIgnore(enum TIFFIgnoreSense, int);
+ 
+ #if defined(c_plusplus) || defined(__cplusplus)
+-extern	void TIFFPrintDirectory(TIFF*, FILE*, long = 0);
+-extern	int TIFFReadScanline(TIFF*, tdata_t, uint32, tsample_t = 0);
+-extern	int TIFFWriteScanline(TIFF*, tdata_t, uint32, tsample_t = 0);
+-extern	int TIFFReadRGBAImage(TIFF*, uint32, uint32, uint32*, int = 0);
+-extern	int TIFFReadRGBAImageOriented(TIFF*, uint32, uint32, uint32*,
++LIBTIFF_DLL_IMPEXP	void TIFFPrintDirectory(TIFF*, FILE*, long = 0);
++LIBTIFF_DLL_IMPEXP	int TIFFReadScanline(TIFF*, tdata_t, uint32, tsample_t = 0);
++LIBTIFF_DLL_IMPEXP	int TIFFWriteScanline(TIFF*, tdata_t, uint32, tsample_t = 0);
++LIBTIFF_DLL_IMPEXP	int TIFFReadRGBAImage(TIFF*, uint32, uint32, uint32*, int = 0);
++LIBTIFF_DLL_IMPEXP	int TIFFReadRGBAImageOriented(TIFF*, uint32, uint32, uint32*,
+ 				      int = ORIENTATION_BOTLEFT, int = 0);
+ #else
+-extern	void TIFFPrintDirectory(TIFF*, FILE*, long);
+-extern	int TIFFReadScanline(TIFF*, tdata_t, uint32, tsample_t);
+-extern	int TIFFWriteScanline(TIFF*, tdata_t, uint32, tsample_t);
+-extern	int TIFFReadRGBAImage(TIFF*, uint32, uint32, uint32*, int);
+-extern	int TIFFReadRGBAImageOriented(TIFF*, uint32, uint32, uint32*, int, int);
++LIBTIFF_DLL_IMPEXP	void TIFFPrintDirectory(TIFF*, FILE*, long);
++LIBTIFF_DLL_IMPEXP	int TIFFReadScanline(TIFF*, tdata_t, uint32, tsample_t);
++LIBTIFF_DLL_IMPEXP	int TIFFWriteScanline(TIFF*, tdata_t, uint32, tsample_t);
++LIBTIFF_DLL_IMPEXP	int TIFFReadRGBAImage(TIFF*, uint32, uint32, uint32*, int);
++LIBTIFF_DLL_IMPEXP	int TIFFReadRGBAImageOriented(TIFF*, uint32, uint32, uint32*, int, int);
+ #endif
+ 
+-extern	int TIFFReadRGBAStrip(TIFF*, tstrip_t, uint32 * );
+-extern	int TIFFReadRGBATile(TIFF*, uint32, uint32, uint32 * );
+-extern	int TIFFRGBAImageOK(TIFF*, char [1024]);
+-extern	int TIFFRGBAImageBegin(TIFFRGBAImage*, TIFF*, int, char [1024]);
+-extern	int TIFFRGBAImageGet(TIFFRGBAImage*, uint32*, uint32, uint32);
+-extern	void TIFFRGBAImageEnd(TIFFRGBAImage*);
+-extern	TIFF* TIFFOpen(const char*, const char*);
++LIBTIFF_DLL_IMPEXP	int TIFFReadRGBAStrip(TIFF*, tstrip_t, uint32 * );
++LIBTIFF_DLL_IMPEXP	int TIFFReadRGBATile(TIFF*, uint32, uint32, uint32 * );
++LIBTIFF_DLL_IMPEXP	int TIFFRGBAImageOK(TIFF*, char [1024]);
++LIBTIFF_DLL_IMPEXP	int TIFFRGBAImageBegin(TIFFRGBAImage*, TIFF*, int, char [1024]);
++LIBTIFF_DLL_IMPEXP	int TIFFRGBAImageGet(TIFFRGBAImage*, uint32*, uint32, uint32);
++LIBTIFF_DLL_IMPEXP	void TIFFRGBAImageEnd(TIFFRGBAImage*);
++LIBTIFF_DLL_IMPEXP	TIFF* TIFFOpen(const char*, const char*);
+ # ifdef __WIN32__
+-extern	TIFF* TIFFOpenW(const wchar_t*, const char*);
++LIBTIFF_DLL_IMPEXP	TIFF* TIFFOpenW(const wchar_t*, const char*);
+ # endif /* __WIN32__ */
+-extern	TIFF* TIFFFdOpen(int, const char*, const char*);
+-extern	TIFF* TIFFClientOpen(const char*, const char*,
++LIBTIFF_DLL_IMPEXP	TIFF* TIFFFdOpen(int, const char*, const char*);
++LIBTIFF_DLL_IMPEXP	TIFF* TIFFClientOpen(const char*, const char*,
+ 	    thandle_t,
+ 	    TIFFReadWriteProc, TIFFReadWriteProc,
+ 	    TIFFSeekProc, TIFFCloseProc,
+ 	    TIFFSizeProc,
+ 	    TIFFMapFileProc, TIFFUnmapFileProc);
+-extern	const char* TIFFFileName(TIFF*);
+-extern	const char* TIFFSetFileName(TIFF*, const char *);
+-extern void TIFFError(const char*, const char*, ...) __attribute__((format (printf,2,3)));
+-extern void TIFFErrorExt(thandle_t, const char*, const char*, ...) __attribute__((format (printf,3,4)));
+-extern void TIFFWarning(const char*, const char*, ...) __attribute__((format (printf,2,3)));
+-extern void TIFFWarningExt(thandle_t, const char*, const char*, ...) __attribute__((format (printf,3,4)));
+-extern	TIFFErrorHandler TIFFSetErrorHandler(TIFFErrorHandler);
+-extern	TIFFErrorHandlerExt TIFFSetErrorHandlerExt(TIFFErrorHandlerExt);
+-extern	TIFFErrorHandler TIFFSetWarningHandler(TIFFErrorHandler);
+-extern	TIFFErrorHandlerExt TIFFSetWarningHandlerExt(TIFFErrorHandlerExt);
+-extern	TIFFExtendProc TIFFSetTagExtender(TIFFExtendProc);
+-extern	ttile_t TIFFComputeTile(TIFF*, uint32, uint32, uint32, tsample_t);
+-extern	int TIFFCheckTile(TIFF*, uint32, uint32, uint32, tsample_t);
+-extern	ttile_t TIFFNumberOfTiles(TIFF*);
+-extern	tsize_t TIFFReadTile(TIFF*,
++LIBTIFF_DLL_IMPEXP	const char* TIFFFileName(TIFF*);
++LIBTIFF_DLL_IMPEXP	const char* TIFFSetFileName(TIFF*, const char *);
++LIBTIFF_DLL_IMPEXP void TIFFError(const char*, const char*, ...) __attribute__((format (printf,2,3)));
++LIBTIFF_DLL_IMPEXP void TIFFErrorExt(thandle_t, const char*, const char*, ...) __attribute__((format (printf,3,4)));
++LIBTIFF_DLL_IMPEXP void TIFFWarning(const char*, const char*, ...) __attribute__((format (printf,2,3)));
++LIBTIFF_DLL_IMPEXP void TIFFWarningExt(thandle_t, const char*, const char*, ...) __attribute__((format (printf,3,4)));
++LIBTIFF_DLL_IMPEXP	TIFFErrorHandler TIFFSetErrorHandler(TIFFErrorHandler);
++LIBTIFF_DLL_IMPEXP	TIFFErrorHandlerExt TIFFSetErrorHandlerExt(TIFFErrorHandlerExt);
++LIBTIFF_DLL_IMPEXP	TIFFErrorHandler TIFFSetWarningHandler(TIFFErrorHandler);
++LIBTIFF_DLL_IMPEXP	TIFFErrorHandlerExt TIFFSetWarningHandlerExt(TIFFErrorHandlerExt);
++LIBTIFF_DLL_IMPEXP	TIFFExtendProc TIFFSetTagExtender(TIFFExtendProc);
++LIBTIFF_DLL_IMPEXP	ttile_t TIFFComputeTile(TIFF*, uint32, uint32, uint32, tsample_t);
++LIBTIFF_DLL_IMPEXP	int TIFFCheckTile(TIFF*, uint32, uint32, uint32, tsample_t);
++LIBTIFF_DLL_IMPEXP	ttile_t TIFFNumberOfTiles(TIFF*);
++LIBTIFF_DLL_IMPEXP	tsize_t TIFFReadTile(TIFF*,
+ 	    tdata_t, uint32, uint32, uint32, tsample_t);
+-extern	tsize_t TIFFWriteTile(TIFF*,
++LIBTIFF_DLL_IMPEXP	tsize_t TIFFWriteTile(TIFF*,
+ 	    tdata_t, uint32, uint32, uint32, tsample_t);
+-extern	tstrip_t TIFFComputeStrip(TIFF*, uint32, tsample_t);
+-extern	tstrip_t TIFFNumberOfStrips(TIFF*);
+-extern	tsize_t TIFFReadEncodedStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
+-extern	tsize_t TIFFReadRawStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
+-extern	tsize_t TIFFReadEncodedTile(TIFF*, ttile_t, tdata_t, tsize_t);
+-extern	tsize_t TIFFReadRawTile(TIFF*, ttile_t, tdata_t, tsize_t);
+-extern	tsize_t TIFFWriteEncodedStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
+-extern	tsize_t TIFFWriteRawStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
+-extern	tsize_t TIFFWriteEncodedTile(TIFF*, ttile_t, tdata_t, tsize_t);
+-extern	tsize_t TIFFWriteRawTile(TIFF*, ttile_t, tdata_t, tsize_t);
+-extern	int TIFFDataWidth(TIFFDataType);    /* table of tag datatype widths */
+-extern	void TIFFSetWriteOffset(TIFF*, toff_t);
+-extern	void TIFFSwabShort(uint16*);
+-extern	void TIFFSwabLong(uint32*);
+-extern	void TIFFSwabDouble(double*);
+-extern	void TIFFSwabArrayOfShort(uint16*, unsigned long);
+-extern	void TIFFSwabArrayOfTriples(uint8*, unsigned long);
+-extern	void TIFFSwabArrayOfLong(uint32*, unsigned long);
+-extern	void TIFFSwabArrayOfDouble(double*, unsigned long);
+-extern	void TIFFReverseBits(unsigned char *, unsigned long);
+-extern	const unsigned char* TIFFGetBitRevTable(int);
++LIBTIFF_DLL_IMPEXP	tstrip_t TIFFComputeStrip(TIFF*, uint32, tsample_t);
++LIBTIFF_DLL_IMPEXP	tstrip_t TIFFNumberOfStrips(TIFF*);
++LIBTIFF_DLL_IMPEXP	tsize_t TIFFReadEncodedStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
++LIBTIFF_DLL_IMPEXP	tsize_t TIFFReadRawStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
++LIBTIFF_DLL_IMPEXP	tsize_t TIFFReadEncodedTile(TIFF*, ttile_t, tdata_t, tsize_t);
++LIBTIFF_DLL_IMPEXP	tsize_t TIFFReadRawTile(TIFF*, ttile_t, tdata_t, tsize_t);
++LIBTIFF_DLL_IMPEXP	tsize_t TIFFWriteEncodedStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
++LIBTIFF_DLL_IMPEXP	tsize_t TIFFWriteRawStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
++LIBTIFF_DLL_IMPEXP	tsize_t TIFFWriteEncodedTile(TIFF*, ttile_t, tdata_t, tsize_t);
++LIBTIFF_DLL_IMPEXP	tsize_t TIFFWriteRawTile(TIFF*, ttile_t, tdata_t, tsize_t);
++LIBTIFF_DLL_IMPEXP	int TIFFDataWidth(TIFFDataType);    /* table of tag datatype widths */
++LIBTIFF_DLL_IMPEXP	void TIFFSetWriteOffset(TIFF*, toff_t);
++LIBTIFF_DLL_IMPEXP	void TIFFSwabShort(uint16*);
++LIBTIFF_DLL_IMPEXP	void TIFFSwabLong(uint32*);
++LIBTIFF_DLL_IMPEXP	void TIFFSwabDouble(double*);
++LIBTIFF_DLL_IMPEXP	void TIFFSwabArrayOfShort(uint16*, unsigned long);
++LIBTIFF_DLL_IMPEXP	void TIFFSwabArrayOfTriples(uint8*, unsigned long);
++LIBTIFF_DLL_IMPEXP	void TIFFSwabArrayOfLong(uint32*, unsigned long);
++LIBTIFF_DLL_IMPEXP	void TIFFSwabArrayOfDouble(double*, unsigned long);
++LIBTIFF_DLL_IMPEXP	void TIFFReverseBits(unsigned char *, unsigned long);
++LIBTIFF_DLL_IMPEXP	const unsigned char* TIFFGetBitRevTable(int);
+ 
+ #ifdef LOGLUV_PUBLIC
+ #define U_NEU		0.210526316
+ #define V_NEU		0.473684211
+ #define UVSCALE		410.
+-extern	double LogL16toY(int);
+-extern	double LogL10toY(int);
+-extern	void XYZtoRGB24(float*, uint8*);
+-extern	int uv_decode(double*, double*, int);
+-extern	void LogLuv24toXYZ(uint32, float*);
+-extern	void LogLuv32toXYZ(uint32, float*);
++LIBTIFF_DLL_IMPEXP	double LogL16toY(int);
++LIBTIFF_DLL_IMPEXP	double LogL10toY(int);
++LIBTIFF_DLL_IMPEXP	void XYZtoRGB24(float*, uint8*);
++LIBTIFF_DLL_IMPEXP	int uv_decode(double*, double*, int);
++LIBTIFF_DLL_IMPEXP	void LogLuv24toXYZ(uint32, float*);
++LIBTIFF_DLL_IMPEXP	void LogLuv32toXYZ(uint32, float*);
+ #if defined(c_plusplus) || defined(__cplusplus)
+-extern	int LogL16fromY(double, int = SGILOGENCODE_NODITHER);
+-extern	int LogL10fromY(double, int = SGILOGENCODE_NODITHER);
+-extern	int uv_encode(double, double, int = SGILOGENCODE_NODITHER);
+-extern	uint32 LogLuv24fromXYZ(float*, int = SGILOGENCODE_NODITHER);
+-extern	uint32 LogLuv32fromXYZ(float*, int = SGILOGENCODE_NODITHER);
++LIBTIFF_DLL_IMPEXP	int LogL16fromY(double, int = SGILOGENCODE_NODITHER);
++LIBTIFF_DLL_IMPEXP	int LogL10fromY(double, int = SGILOGENCODE_NODITHER);
++LIBTIFF_DLL_IMPEXP	int uv_encode(double, double, int = SGILOGENCODE_NODITHER);
++LIBTIFF_DLL_IMPEXP	uint32 LogLuv24fromXYZ(float*, int = SGILOGENCODE_NODITHER);
++LIBTIFF_DLL_IMPEXP	uint32 LogLuv32fromXYZ(float*, int = SGILOGENCODE_NODITHER);
+ #else
+-extern	int LogL16fromY(double, int);
+-extern	int LogL10fromY(double, int);
+-extern	int uv_encode(double, double, int);
+-extern	uint32 LogLuv24fromXYZ(float*, int);
+-extern	uint32 LogLuv32fromXYZ(float*, int);
++LIBTIFF_DLL_IMPEXP	int LogL16fromY(double, int);
++LIBTIFF_DLL_IMPEXP	int LogL10fromY(double, int);
++LIBTIFF_DLL_IMPEXP	int uv_encode(double, double, int);
++LIBTIFF_DLL_IMPEXP	uint32 LogLuv24fromXYZ(float*, int);
++LIBTIFF_DLL_IMPEXP	uint32 LogLuv32fromXYZ(float*, int);
+ #endif
+ #endif /* LOGLUV_PUBLIC */
+     
+-extern int TIFFCIELabToRGBInit(TIFFCIELabToRGB*, TIFFDisplay *, float*);
+-extern void TIFFCIELabToXYZ(TIFFCIELabToRGB *, uint32, int32, int32,
++LIBTIFF_DLL_IMPEXP int TIFFCIELabToRGBInit(TIFFCIELabToRGB*, TIFFDisplay *, float*);
++LIBTIFF_DLL_IMPEXP void TIFFCIELabToXYZ(TIFFCIELabToRGB *, uint32, int32, int32,
+ 			    float *, float *, float *);
+-extern void TIFFXYZToRGB(TIFFCIELabToRGB *, float, float, float,
++LIBTIFF_DLL_IMPEXP void TIFFXYZToRGB(TIFFCIELabToRGB *, float, float, float,
+ 			 uint32 *, uint32 *, uint32 *);
+ 
+-extern int TIFFYCbCrToRGBInit(TIFFYCbCrToRGB*, float*, float*);
+-extern void TIFFYCbCrtoRGB(TIFFYCbCrToRGB *, uint32, int32, int32,
++LIBTIFF_DLL_IMPEXP int TIFFYCbCrToRGBInit(TIFFYCbCrToRGB*, float*, float*);
++LIBTIFF_DLL_IMPEXP void TIFFYCbCrtoRGB(TIFFYCbCrToRGB *, uint32, int32, int32,
+ 			   uint32 *, uint32 *, uint32 *);
+ 
+ #if defined(c_plusplus) || defined(__cplusplus)

Propchange: trunk/reactos/include/reactos/libs/libtiff/rosdiff.patch
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: trunk/reactos/include/reactos/libs/libtiff/tiffio.h
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/include/reactos/libs/libtiff/tiffio.h?rev=48043&r1=48042&r2=48043&view=diff
==============================================================================
--- trunk/reactos/include/reactos/libs/libtiff/tiffio.h [iso-8859-1] (original)
+++ trunk/reactos/include/reactos/libs/libtiff/tiffio.h [iso-8859-1] Wed Jul 14 17:12:22 2010
@@ -27,6 +27,30 @@
 #ifndef _TIFFIO_
 #define	_TIFFIO_
 
+#ifndef __GNUC__
+# define __DLL_IMPORT__  __declspec(dllimport)
+# define __DLL_EXPORT__  __declspec(dllexport)
+#else
+# define __DLL_IMPORT__  __attribute__((dllimport)) extern
+# define __DLL_EXPORT__  __attribute__((dllexport)) extern
+#endif 
+
+#if (defined __WIN32__) || (defined _WIN32)
+# ifdef BUILD_LIBTIFF_DLL
+#  define LIBTIFF_DLL_IMPEXP     __DLL_EXPORT__
+# elif defined(LIBTIFF_STATIC)
+#  define LIBTIFF_DLL_IMPEXP      
+# elif defined (USE_LIBTIFF_DLL)
+#  define LIBTIFF_DLL_IMPEXP     __DLL_IMPORT__
+# elif defined (USE_LIBTIFF_STATIC)
+#  define LIBTIFF_DLL_IMPEXP      
+# else /* assume USE_LIBTIFF_DLL */
+#  define LIBTIFF_DLL_IMPEXP     __DLL_IMPORT__
+# endif
+#else /* __WIN32__ */
+# define LIBTIFF_DLL_IMPEXP  
+#endif
+
 /*
  * TIFF I/O Library Definitions.
  */
@@ -80,10 +104,20 @@
  */
 
 #if defined(_WINDOWS) || defined(__WIN32__) || defined(_Windows)
+#  define BINMODE "b"
 #  if !defined(__CYGWIN) && !defined(AVOID_WIN32_FILEIO) && !defined(USE_WIN32_FILEIO)
 #    define AVOID_WIN32_FILEIO
 #  endif
-#endif
+#  include <fcntl.h>
+#  include <io.h>
+#  ifdef SET_BINARY
+#    undef SET_BINARY
+#  endif /* SET_BINARY */
+#  define SET_BINARY(f) do {if (!_isatty(f)) _setmode(f,_O_BINARY);} while (0)
+#else /* Windows */
+#  define BINMODE
+#  define SET_BINARY(f) (void)0
+#endif /* Windows */
 
 #if defined(USE_WIN32_FILEIO)
 # define VC_EXTRALEAN
@@ -268,30 +302,30 @@
 typedef	void (*TIFFUnmapFileProc)(thandle_t, tdata_t, toff_t);
 typedef	void (*TIFFExtendProc)(TIFF*); 
 
-extern	const char* TIFFGetVersion(void);
-
-extern	const TIFFCodec* TIFFFindCODEC(uint16);
-extern	TIFFCodec* TIFFRegisterCODEC(uint16, const char*, TIFFInitMethod);
-extern	void TIFFUnRegisterCODEC(TIFFCodec*);
-extern  int TIFFIsCODECConfigured(uint16);
-extern	TIFFCodec* TIFFGetConfiguredCODECs(void);
+LIBTIFF_DLL_IMPEXP	const char* TIFFGetVersion(void);
+
+LIBTIFF_DLL_IMPEXP	const TIFFCodec* TIFFFindCODEC(uint16);
+LIBTIFF_DLL_IMPEXP	TIFFCodec* TIFFRegisterCODEC(uint16, const char*, TIFFInitMethod);
+LIBTIFF_DLL_IMPEXP	void TIFFUnRegisterCODEC(TIFFCodec*);
+LIBTIFF_DLL_IMPEXP  int TIFFIsCODECConfigured(uint16);
+LIBTIFF_DLL_IMPEXP	TIFFCodec* TIFFGetConfiguredCODECs(void);
 
 /*
  * Auxiliary functions.
  */
 
-extern	tdata_t _TIFFmalloc(tsize_t);
-extern	tdata_t _TIFFrealloc(tdata_t, tsize_t);
-extern	void _TIFFmemset(tdata_t, int, tsize_t);
-extern	void _TIFFmemcpy(tdata_t, const tdata_t, tsize_t);
-extern	int _TIFFmemcmp(const tdata_t, const tdata_t, tsize_t);
-extern	void _TIFFfree(tdata_t);
+LIBTIFF_DLL_IMPEXP	tdata_t _TIFFmalloc(tsize_t);
+LIBTIFF_DLL_IMPEXP	tdata_t _TIFFrealloc(tdata_t, tsize_t);
+LIBTIFF_DLL_IMPEXP	void _TIFFmemset(tdata_t, int, tsize_t);
+LIBTIFF_DLL_IMPEXP	void _TIFFmemcpy(tdata_t, const tdata_t, tsize_t);
+LIBTIFF_DLL_IMPEXP	int _TIFFmemcmp(const tdata_t, const tdata_t, tsize_t);
+LIBTIFF_DLL_IMPEXP	void _TIFFfree(tdata_t);
 
 /*
 ** Stuff, related to tag handling and creating custom tags.
 */
-extern  int  TIFFGetTagListCount( TIFF * );
-extern  ttag_t TIFFGetTagListEntry( TIFF *, int tag_index );
+LIBTIFF_DLL_IMPEXP  int  TIFFGetTagListCount( TIFF * );
+LIBTIFF_DLL_IMPEXP  ttag_t TIFFGetTagListEntry( TIFF *, int tag_index );
     
 #define	TIFF_ANY	TIFF_NOTYPE	/* for field descriptor searching */
 #define	TIFF_VARIABLE	-1		/* marker for variable length tags */
@@ -317,12 +351,12 @@
     void           *value;
 } TIFFTagValue;
 
-extern	void TIFFMergeFieldInfo(TIFF*, const TIFFFieldInfo[], int);
-extern	const TIFFFieldInfo* TIFFFindFieldInfo(TIFF*, ttag_t, TIFFDataType);
-extern  const TIFFFieldInfo* TIFFFindFieldInfoByName(TIFF* , const char *,
+LIBTIFF_DLL_IMPEXP	void TIFFMergeFieldInfo(TIFF*, const TIFFFieldInfo[], int);
+LIBTIFF_DLL_IMPEXP	const TIFFFieldInfo* TIFFFindFieldInfo(TIFF*, ttag_t, TIFFDataType);
+LIBTIFF_DLL_IMPEXP  const TIFFFieldInfo* TIFFFindFieldInfoByName(TIFF* , const char *,
 						     TIFFDataType);
-extern	const TIFFFieldInfo* TIFFFieldWithTag(TIFF*, ttag_t);
-extern	const TIFFFieldInfo* TIFFFieldWithName(TIFF*, const char *);
+LIBTIFF_DLL_IMPEXP	const TIFFFieldInfo* TIFFFieldWithTag(TIFF*, ttag_t);
+LIBTIFF_DLL_IMPEXP	const TIFFFieldInfo* TIFFFieldWithName(TIFF*, const char *);
 
 typedef	int (*TIFFVSetMethod)(TIFF*, ttag_t, va_list);
 typedef	int (*TIFFVGetMethod)(TIFF*, ttag_t, va_list);
@@ -334,180 +368,180 @@
     TIFFPrintMethod	printdir;	/* directory print routine */
 } TIFFTagMethods;
         
-extern  TIFFTagMethods *TIFFAccessTagMethods( TIFF * );
-extern  void *TIFFGetClientInfo( TIFF *, const char * );
-extern  void TIFFSetClientInfo( TIFF *, void *, const char * );
-
-extern	void TIFFCleanup(TIFF*);
-extern	void TIFFClose(TIFF*);
-extern	int TIFFFlush(TIFF*);
-extern	int TIFFFlushData(TIFF*);
-extern	int TIFFGetField(TIFF*, ttag_t, ...);
-extern	int TIFFVGetField(TIFF*, ttag_t, va_list);
-extern	int TIFFGetFieldDefaulted(TIFF*, ttag_t, ...);
-extern	int TIFFVGetFieldDefaulted(TIFF*, ttag_t, va_list);
-extern	int TIFFReadDirectory(TIFF*);
-extern	int TIFFReadCustomDirectory(TIFF*, toff_t, const TIFFFieldInfo[],
+LIBTIFF_DLL_IMPEXP  TIFFTagMethods *TIFFAccessTagMethods( TIFF * );
+LIBTIFF_DLL_IMPEXP  void *TIFFGetClientInfo( TIFF *, const char * );
+LIBTIFF_DLL_IMPEXP  void TIFFSetClientInfo( TIFF *, void *, const char * );
+
+LIBTIFF_DLL_IMPEXP	void TIFFCleanup(TIFF*);
+LIBTIFF_DLL_IMPEXP	void TIFFClose(TIFF*);
+LIBTIFF_DLL_IMPEXP	int TIFFFlush(TIFF*);
+LIBTIFF_DLL_IMPEXP	int TIFFFlushData(TIFF*);
+LIBTIFF_DLL_IMPEXP	int TIFFGetField(TIFF*, ttag_t, ...);
+LIBTIFF_DLL_IMPEXP	int TIFFVGetField(TIFF*, ttag_t, va_list);
+LIBTIFF_DLL_IMPEXP	int TIFFGetFieldDefaulted(TIFF*, ttag_t, ...);
+LIBTIFF_DLL_IMPEXP	int TIFFVGetFieldDefaulted(TIFF*, ttag_t, va_list);
+LIBTIFF_DLL_IMPEXP	int TIFFReadDirectory(TIFF*);
+LIBTIFF_DLL_IMPEXP	int TIFFReadCustomDirectory(TIFF*, toff_t, const TIFFFieldInfo[],
 				    size_t);
-extern	int TIFFReadEXIFDirectory(TIFF*, toff_t);
-extern	tsize_t TIFFScanlineSize(TIFF*);
-extern	tsize_t TIFFOldScanlineSize(TIFF*);
-extern	tsize_t TIFFNewScanlineSize(TIFF*);
-extern	tsize_t TIFFRasterScanlineSize(TIFF*);
-extern	tsize_t TIFFStripSize(TIFF*);
-extern	tsize_t TIFFRawStripSize(TIFF*, tstrip_t);
-extern	tsize_t TIFFVStripSize(TIFF*, uint32);
-extern	tsize_t TIFFTileRowSize(TIFF*);
-extern	tsize_t TIFFTileSize(TIFF*);
-extern	tsize_t TIFFVTileSize(TIFF*, uint32);
-extern	uint32 TIFFDefaultStripSize(TIFF*, uint32);
-extern	void TIFFDefaultTileSize(TIFF*, uint32*, uint32*);
-extern	int TIFFFileno(TIFF*);
-extern  int TIFFSetFileno(TIFF*, int);
-extern  thandle_t TIFFClientdata(TIFF*);
-extern  thandle_t TIFFSetClientdata(TIFF*, thandle_t);
-extern	int TIFFGetMode(TIFF*);
-extern	int TIFFSetMode(TIFF*, int);
-extern	int TIFFIsTiled(TIFF*);
-extern	int TIFFIsByteSwapped(TIFF*);
-extern	int TIFFIsUpSampled(TIFF*);
-extern	int TIFFIsMSB2LSB(TIFF*);
-extern	int TIFFIsBigEndian(TIFF*);
-extern	TIFFReadWriteProc TIFFGetReadProc(TIFF*);
-extern	TIFFReadWriteProc TIFFGetWriteProc(TIFF*);
-extern	TIFFSeekProc TIFFGetSeekProc(TIFF*);
-extern	TIFFCloseProc TIFFGetCloseProc(TIFF*);
-extern	TIFFSizeProc TIFFGetSizeProc(TIFF*);
-extern	TIFFMapFileProc TIFFGetMapFileProc(TIFF*);
-extern	TIFFUnmapFileProc TIFFGetUnmapFileProc(TIFF*);
-extern	uint32 TIFFCurrentRow(TIFF*);
-extern	tdir_t TIFFCurrentDirectory(TIFF*);
-extern	tdir_t TIFFNumberOfDirectories(TIFF*);
-extern	uint32 TIFFCurrentDirOffset(TIFF*);
-extern	tstrip_t TIFFCurrentStrip(TIFF*);
-extern	ttile_t TIFFCurrentTile(TIFF*);
-extern	int TIFFReadBufferSetup(TIFF*, tdata_t, tsize_t);
-extern	int TIFFWriteBufferSetup(TIFF*, tdata_t, tsize_t);
-extern	int TIFFSetupStrips(TIFF *);
-extern  int TIFFWriteCheck(TIFF*, int, const char *);
-extern	void TIFFFreeDirectory(TIFF*);
-extern  int TIFFCreateDirectory(TIFF*);
-extern	int TIFFLastDirectory(TIFF*);
-extern	int TIFFSetDirectory(TIFF*, tdir_t);
-extern	int TIFFSetSubDirectory(TIFF*, uint32);
-extern	int TIFFUnlinkDirectory(TIFF*, tdir_t);
-extern	int TIFFSetField(TIFF*, ttag_t, ...);
-extern	int TIFFVSetField(TIFF*, ttag_t, va_list);
-extern	int TIFFWriteDirectory(TIFF *);
-extern	int TIFFCheckpointDirectory(TIFF *);
-extern	int TIFFRewriteDirectory(TIFF *);
-extern	int TIFFReassignTagToIgnore(enum TIFFIgnoreSense, int);
+LIBTIFF_DLL_IMPEXP	int TIFFReadEXIFDirectory(TIFF*, toff_t);
+LIBTIFF_DLL_IMPEXP	tsize_t TIFFScanlineSize(TIFF*);
+LIBTIFF_DLL_IMPEXP	tsize_t TIFFOldScanlineSize(TIFF*);
+LIBTIFF_DLL_IMPEXP	tsize_t TIFFNewScanlineSize(TIFF*);
+LIBTIFF_DLL_IMPEXP	tsize_t TIFFRasterScanlineSize(TIFF*);
+LIBTIFF_DLL_IMPEXP	tsize_t TIFFStripSize(TIFF*);
+LIBTIFF_DLL_IMPEXP	tsize_t TIFFRawStripSize(TIFF*, tstrip_t);
+LIBTIFF_DLL_IMPEXP	tsize_t TIFFVStripSize(TIFF*, uint32);
+LIBTIFF_DLL_IMPEXP	tsize_t TIFFTileRowSize(TIFF*);
+LIBTIFF_DLL_IMPEXP	tsize_t TIFFTileSize(TIFF*);
+LIBTIFF_DLL_IMPEXP	tsize_t TIFFVTileSize(TIFF*, uint32);
+LIBTIFF_DLL_IMPEXP	uint32 TIFFDefaultStripSize(TIFF*, uint32);
+LIBTIFF_DLL_IMPEXP	void TIFFDefaultTileSize(TIFF*, uint32*, uint32*);
+LIBTIFF_DLL_IMPEXP	int TIFFFileno(TIFF*);
+LIBTIFF_DLL_IMPEXP  int TIFFSetFileno(TIFF*, int);
+LIBTIFF_DLL_IMPEXP  thandle_t TIFFClientdata(TIFF*);
+LIBTIFF_DLL_IMPEXP  thandle_t TIFFSetClientdata(TIFF*, thandle_t);
+LIBTIFF_DLL_IMPEXP	int TIFFGetMode(TIFF*);
+LIBTIFF_DLL_IMPEXP	int TIFFSetMode(TIFF*, int);
+LIBTIFF_DLL_IMPEXP	int TIFFIsTiled(TIFF*);
+LIBTIFF_DLL_IMPEXP	int TIFFIsByteSwapped(TIFF*);
+LIBTIFF_DLL_IMPEXP	int TIFFIsUpSampled(TIFF*);
+LIBTIFF_DLL_IMPEXP	int TIFFIsMSB2LSB(TIFF*);
+LIBTIFF_DLL_IMPEXP	int TIFFIsBigEndian(TIFF*);
+LIBTIFF_DLL_IMPEXP	TIFFReadWriteProc TIFFGetReadProc(TIFF*);
+LIBTIFF_DLL_IMPEXP	TIFFReadWriteProc TIFFGetWriteProc(TIFF*);
+LIBTIFF_DLL_IMPEXP	TIFFSeekProc TIFFGetSeekProc(TIFF*);
+LIBTIFF_DLL_IMPEXP	TIFFCloseProc TIFFGetCloseProc(TIFF*);
+LIBTIFF_DLL_IMPEXP	TIFFSizeProc TIFFGetSizeProc(TIFF*);
+LIBTIFF_DLL_IMPEXP	TIFFMapFileProc TIFFGetMapFileProc(TIFF*);
+LIBTIFF_DLL_IMPEXP	TIFFUnmapFileProc TIFFGetUnmapFileProc(TIFF*);
+LIBTIFF_DLL_IMPEXP	uint32 TIFFCurrentRow(TIFF*);
+LIBTIFF_DLL_IMPEXP	tdir_t TIFFCurrentDirectory(TIFF*);
+LIBTIFF_DLL_IMPEXP	tdir_t TIFFNumberOfDirectories(TIFF*);
+LIBTIFF_DLL_IMPEXP	uint32 TIFFCurrentDirOffset(TIFF*);
+LIBTIFF_DLL_IMPEXP	tstrip_t TIFFCurrentStrip(TIFF*);
+LIBTIFF_DLL_IMPEXP	ttile_t TIFFCurrentTile(TIFF*);
+LIBTIFF_DLL_IMPEXP	int TIFFReadBufferSetup(TIFF*, tdata_t, tsize_t);
+LIBTIFF_DLL_IMPEXP	int TIFFWriteBufferSetup(TIFF*, tdata_t, tsize_t);
+LIBTIFF_DLL_IMPEXP	int TIFFSetupStrips(TIFF *);
+LIBTIFF_DLL_IMPEXP  int TIFFWriteCheck(TIFF*, int, const char *);
+LIBTIFF_DLL_IMPEXP	void TIFFFreeDirectory(TIFF*);
+LIBTIFF_DLL_IMPEXP  int TIFFCreateDirectory(TIFF*);
+LIBTIFF_DLL_IMPEXP	int TIFFLastDirectory(TIFF*);
+LIBTIFF_DLL_IMPEXP	int TIFFSetDirectory(TIFF*, tdir_t);
+LIBTIFF_DLL_IMPEXP	int TIFFSetSubDirectory(TIFF*, uint32);
+LIBTIFF_DLL_IMPEXP	int TIFFUnlinkDirectory(TIFF*, tdir_t);
+LIBTIFF_DLL_IMPEXP	int TIFFSetField(TIFF*, ttag_t, ...);
+LIBTIFF_DLL_IMPEXP	int TIFFVSetField(TIFF*, ttag_t, va_list);
+LIBTIFF_DLL_IMPEXP	int TIFFWriteDirectory(TIFF *);
+LIBTIFF_DLL_IMPEXP	int TIFFCheckpointDirectory(TIFF *);
+LIBTIFF_DLL_IMPEXP	int TIFFRewriteDirectory(TIFF *);
+LIBTIFF_DLL_IMPEXP	int TIFFReassignTagToIgnore(enum TIFFIgnoreSense, int);
 
 #if defined(c_plusplus) || defined(__cplusplus)
-extern	void TIFFPrintDirectory(TIFF*, FILE*, long = 0);
-extern	int TIFFReadScanline(TIFF*, tdata_t, uint32, tsample_t = 0);
-extern	int TIFFWriteScanline(TIFF*, tdata_t, uint32, tsample_t = 0);
-extern	int TIFFReadRGBAImage(TIFF*, uint32, uint32, uint32*, int = 0);
-extern	int TIFFReadRGBAImageOriented(TIFF*, uint32, uint32, uint32*,
+LIBTIFF_DLL_IMPEXP	void TIFFPrintDirectory(TIFF*, FILE*, long = 0);
+LIBTIFF_DLL_IMPEXP	int TIFFReadScanline(TIFF*, tdata_t, uint32, tsample_t = 0);
+LIBTIFF_DLL_IMPEXP	int TIFFWriteScanline(TIFF*, tdata_t, uint32, tsample_t = 0);
+LIBTIFF_DLL_IMPEXP	int TIFFReadRGBAImage(TIFF*, uint32, uint32, uint32*, int = 0);
+LIBTIFF_DLL_IMPEXP	int TIFFReadRGBAImageOriented(TIFF*, uint32, uint32, uint32*,
 				      int = ORIENTATION_BOTLEFT, int = 0);
 #else
-extern	void TIFFPrintDirectory(TIFF*, FILE*, long);
-extern	int TIFFReadScanline(TIFF*, tdata_t, uint32, tsample_t);
-extern	int TIFFWriteScanline(TIFF*, tdata_t, uint32, tsample_t);
-extern	int TIFFReadRGBAImage(TIFF*, uint32, uint32, uint32*, int);
-extern	int TIFFReadRGBAImageOriented(TIFF*, uint32, uint32, uint32*, int, int);
-#endif
-
-extern	int TIFFReadRGBAStrip(TIFF*, tstrip_t, uint32 * );
-extern	int TIFFReadRGBATile(TIFF*, uint32, uint32, uint32 * );
-extern	int TIFFRGBAImageOK(TIFF*, char [1024]);
-extern	int TIFFRGBAImageBegin(TIFFRGBAImage*, TIFF*, int, char [1024]);
-extern	int TIFFRGBAImageGet(TIFFRGBAImage*, uint32*, uint32, uint32);
-extern	void TIFFRGBAImageEnd(TIFFRGBAImage*);
-extern	TIFF* TIFFOpen(const char*, const char*);
+LIBTIFF_DLL_IMPEXP	void TIFFPrintDirectory(TIFF*, FILE*, long);
+LIBTIFF_DLL_IMPEXP	int TIFFReadScanline(TIFF*, tdata_t, uint32, tsample_t);
+LIBTIFF_DLL_IMPEXP	int TIFFWriteScanline(TIFF*, tdata_t, uint32, tsample_t);
+LIBTIFF_DLL_IMPEXP	int TIFFReadRGBAImage(TIFF*, uint32, uint32, uint32*, int);
+LIBTIFF_DLL_IMPEXP	int TIFFReadRGBAImageOriented(TIFF*, uint32, uint32, uint32*, int, int);
+#endif
+
+LIBTIFF_DLL_IMPEXP	int TIFFReadRGBAStrip(TIFF*, tstrip_t, uint32 * );
+LIBTIFF_DLL_IMPEXP	int TIFFReadRGBATile(TIFF*, uint32, uint32, uint32 * );
+LIBTIFF_DLL_IMPEXP	int TIFFRGBAImageOK(TIFF*, char [1024]);
+LIBTIFF_DLL_IMPEXP	int TIFFRGBAImageBegin(TIFFRGBAImage*, TIFF*, int, char [1024]);
+LIBTIFF_DLL_IMPEXP	int TIFFRGBAImageGet(TIFFRGBAImage*, uint32*, uint32, uint32);
+LIBTIFF_DLL_IMPEXP	void TIFFRGBAImageEnd(TIFFRGBAImage*);
+LIBTIFF_DLL_IMPEXP	TIFF* TIFFOpen(const char*, const char*);
 # ifdef __WIN32__
-extern	TIFF* TIFFOpenW(const wchar_t*, const char*);
+LIBTIFF_DLL_IMPEXP	TIFF* TIFFOpenW(const wchar_t*, const char*);
 # endif /* __WIN32__ */
-extern	TIFF* TIFFFdOpen(int, const char*, const char*);
-extern	TIFF* TIFFClientOpen(const char*, const char*,
+LIBTIFF_DLL_IMPEXP	TIFF* TIFFFdOpen(int, const char*, const char*);
+LIBTIFF_DLL_IMPEXP	TIFF* TIFFClientOpen(const char*, const char*,
 	    thandle_t,
 	    TIFFReadWriteProc, TIFFReadWriteProc,
 	    TIFFSeekProc, TIFFCloseProc,
 	    TIFFSizeProc,
 	    TIFFMapFileProc, TIFFUnmapFileProc);
-extern	const char* TIFFFileName(TIFF*);
-extern	const char* TIFFSetFileName(TIFF*, const char *);
-extern void TIFFError(const char*, const char*, ...) __attribute__((format (printf,2,3)));
-extern void TIFFErrorExt(thandle_t, const char*, const char*, ...) __attribute__((format (printf,3,4)));
-extern void TIFFWarning(const char*, const char*, ...) __attribute__((format (printf,2,3)));
-extern void TIFFWarningExt(thandle_t, const char*, const char*, ...) __attribute__((format (printf,3,4)));
-extern	TIFFErrorHandler TIFFSetErrorHandler(TIFFErrorHandler);
-extern	TIFFErrorHandlerExt TIFFSetErrorHandlerExt(TIFFErrorHandlerExt);
-extern	TIFFErrorHandler TIFFSetWarningHandler(TIFFErrorHandler);
-extern	TIFFErrorHandlerExt TIFFSetWarningHandlerExt(TIFFErrorHandlerExt);
-extern	TIFFExtendProc TIFFSetTagExtender(TIFFExtendProc);
-extern	ttile_t TIFFComputeTile(TIFF*, uint32, uint32, uint32, tsample_t);
-extern	int TIFFCheckTile(TIFF*, uint32, uint32, uint32, tsample_t);
-extern	ttile_t TIFFNumberOfTiles(TIFF*);
-extern	tsize_t TIFFReadTile(TIFF*,
+LIBTIFF_DLL_IMPEXP	const char* TIFFFileName(TIFF*);
+LIBTIFF_DLL_IMPEXP	const char* TIFFSetFileName(TIFF*, const char *);
+LIBTIFF_DLL_IMPEXP void TIFFError(const char*, const char*, ...) __attribute__((format (printf,2,3)));
+LIBTIFF_DLL_IMPEXP void TIFFErrorExt(thandle_t, const char*, const char*, ...) __attribute__((format (printf,3,4)));
+LIBTIFF_DLL_IMPEXP void TIFFWarning(const char*, const char*, ...) __attribute__((format (printf,2,3)));
+LIBTIFF_DLL_IMPEXP void TIFFWarningExt(thandle_t, const char*, const char*, ...) __attribute__((format (printf,3,4)));
+LIBTIFF_DLL_IMPEXP	TIFFErrorHandler TIFFSetErrorHandler(TIFFErrorHandler);
+LIBTIFF_DLL_IMPEXP	TIFFErrorHandlerExt TIFFSetErrorHandlerExt(TIFFErrorHandlerExt);
+LIBTIFF_DLL_IMPEXP	TIFFErrorHandler TIFFSetWarningHandler(TIFFErrorHandler);
+LIBTIFF_DLL_IMPEXP	TIFFErrorHandlerExt TIFFSetWarningHandlerExt(TIFFErrorHandlerExt);
+LIBTIFF_DLL_IMPEXP	TIFFExtendProc TIFFSetTagExtender(TIFFExtendProc);
+LIBTIFF_DLL_IMPEXP	ttile_t TIFFComputeTile(TIFF*, uint32, uint32, uint32, tsample_t);
+LIBTIFF_DLL_IMPEXP	int TIFFCheckTile(TIFF*, uint32, uint32, uint32, tsample_t);
+LIBTIFF_DLL_IMPEXP	ttile_t TIFFNumberOfTiles(TIFF*);
+LIBTIFF_DLL_IMPEXP	tsize_t TIFFReadTile(TIFF*,
 	    tdata_t, uint32, uint32, uint32, tsample_t);
-extern	tsize_t TIFFWriteTile(TIFF*,
+LIBTIFF_DLL_IMPEXP	tsize_t TIFFWriteTile(TIFF*,
 	    tdata_t, uint32, uint32, uint32, tsample_t);
-extern	tstrip_t TIFFComputeStrip(TIFF*, uint32, tsample_t);
-extern	tstrip_t TIFFNumberOfStrips(TIFF*);
-extern	tsize_t TIFFReadEncodedStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
-extern	tsize_t TIFFReadRawStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
-extern	tsize_t TIFFReadEncodedTile(TIFF*, ttile_t, tdata_t, tsize_t);
-extern	tsize_t TIFFReadRawTile(TIFF*, ttile_t, tdata_t, tsize_t);
-extern	tsize_t TIFFWriteEncodedStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
-extern	tsize_t TIFFWriteRawStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
-extern	tsize_t TIFFWriteEncodedTile(TIFF*, ttile_t, tdata_t, tsize_t);
-extern	tsize_t TIFFWriteRawTile(TIFF*, ttile_t, tdata_t, tsize_t);
-extern	int TIFFDataWidth(TIFFDataType);    /* table of tag datatype widths */
-extern	void TIFFSetWriteOffset(TIFF*, toff_t);
-extern	void TIFFSwabShort(uint16*);
-extern	void TIFFSwabLong(uint32*);
-extern	void TIFFSwabDouble(double*);
-extern	void TIFFSwabArrayOfShort(uint16*, unsigned long);
-extern	void TIFFSwabArrayOfTriples(uint8*, unsigned long);
-extern	void TIFFSwabArrayOfLong(uint32*, unsigned long);
-extern	void TIFFSwabArrayOfDouble(double*, unsigned long);
-extern	void TIFFReverseBits(unsigned char *, unsigned long);
-extern	const unsigned char* TIFFGetBitRevTable(int);
+LIBTIFF_DLL_IMPEXP	tstrip_t TIFFComputeStrip(TIFF*, uint32, tsample_t);
+LIBTIFF_DLL_IMPEXP	tstrip_t TIFFNumberOfStrips(TIFF*);
+LIBTIFF_DLL_IMPEXP	tsize_t TIFFReadEncodedStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
+LIBTIFF_DLL_IMPEXP	tsize_t TIFFReadRawStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
+LIBTIFF_DLL_IMPEXP	tsize_t TIFFReadEncodedTile(TIFF*, ttile_t, tdata_t, tsize_t);
+LIBTIFF_DLL_IMPEXP	tsize_t TIFFReadRawTile(TIFF*, ttile_t, tdata_t, tsize_t);
+LIBTIFF_DLL_IMPEXP	tsize_t TIFFWriteEncodedStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
+LIBTIFF_DLL_IMPEXP	tsize_t TIFFWriteRawStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
+LIBTIFF_DLL_IMPEXP	tsize_t TIFFWriteEncodedTile(TIFF*, ttile_t, tdata_t, tsize_t);
+LIBTIFF_DLL_IMPEXP	tsize_t TIFFWriteRawTile(TIFF*, ttile_t, tdata_t, tsize_t);
+LIBTIFF_DLL_IMPEXP	int TIFFDataWidth(TIFFDataType);    /* table of tag datatype widths */
+LIBTIFF_DLL_IMPEXP	void TIFFSetWriteOffset(TIFF*, toff_t);
+LIBTIFF_DLL_IMPEXP	void TIFFSwabShort(uint16*);
+LIBTIFF_DLL_IMPEXP	void TIFFSwabLong(uint32*);
+LIBTIFF_DLL_IMPEXP	void TIFFSwabDouble(double*);
+LIBTIFF_DLL_IMPEXP	void TIFFSwabArrayOfShort(uint16*, unsigned long);
+LIBTIFF_DLL_IMPEXP	void TIFFSwabArrayOfTriples(uint8*, unsigned long);
+LIBTIFF_DLL_IMPEXP	void TIFFSwabArrayOfLong(uint32*, unsigned long);
+LIBTIFF_DLL_IMPEXP	void TIFFSwabArrayOfDouble(double*, unsigned long);
+LIBTIFF_DLL_IMPEXP	void TIFFReverseBits(unsigned char *, unsigned long);
+LIBTIFF_DLL_IMPEXP	const unsigned char* TIFFGetBitRevTable(int);
 
 #ifdef LOGLUV_PUBLIC
 #define U_NEU		0.210526316
 #define V_NEU		0.473684211
 #define UVSCALE		410.
-extern	double LogL16toY(int);
-extern	double LogL10toY(int);
-extern	void XYZtoRGB24(float*, uint8*);
-extern	int uv_decode(double*, double*, int);
-extern	void LogLuv24toXYZ(uint32, float*);
-extern	void LogLuv32toXYZ(uint32, float*);
+LIBTIFF_DLL_IMPEXP	double LogL16toY(int);
+LIBTIFF_DLL_IMPEXP	double LogL10toY(int);
+LIBTIFF_DLL_IMPEXP	void XYZtoRGB24(float*, uint8*);
+LIBTIFF_DLL_IMPEXP	int uv_decode(double*, double*, int);
+LIBTIFF_DLL_IMPEXP	void LogLuv24toXYZ(uint32, float*);
+LIBTIFF_DLL_IMPEXP	void LogLuv32toXYZ(uint32, float*);
 #if defined(c_plusplus) || defined(__cplusplus)
-extern	int LogL16fromY(double, int = SGILOGENCODE_NODITHER);
-extern	int LogL10fromY(double, int = SGILOGENCODE_NODITHER);
-extern	int uv_encode(double, double, int = SGILOGENCODE_NODITHER);
-extern	uint32 LogLuv24fromXYZ(float*, int = SGILOGENCODE_NODITHER);
-extern	uint32 LogLuv32fromXYZ(float*, int = SGILOGENCODE_NODITHER);
+LIBTIFF_DLL_IMPEXP	int LogL16fromY(double, int = SGILOGENCODE_NODITHER);
+LIBTIFF_DLL_IMPEXP	int LogL10fromY(double, int = SGILOGENCODE_NODITHER);
+LIBTIFF_DLL_IMPEXP	int uv_encode(double, double, int = SGILOGENCODE_NODITHER);
+LIBTIFF_DLL_IMPEXP	uint32 LogLuv24fromXYZ(float*, int = SGILOGENCODE_NODITHER);
+LIBTIFF_DLL_IMPEXP	uint32 LogLuv32fromXYZ(float*, int = SGILOGENCODE_NODITHER);
 #else
-extern	int LogL16fromY(double, int);
-extern	int LogL10fromY(double, int);
-extern	int uv_encode(double, double, int);
-extern	uint32 LogLuv24fromXYZ(float*, int);
-extern	uint32 LogLuv32fromXYZ(float*, int);
+LIBTIFF_DLL_IMPEXP	int LogL16fromY(double, int);
+LIBTIFF_DLL_IMPEXP	int LogL10fromY(double, int);
+LIBTIFF_DLL_IMPEXP	int uv_encode(double, double, int);
+LIBTIFF_DLL_IMPEXP	uint32 LogLuv24fromXYZ(float*, int);
+LIBTIFF_DLL_IMPEXP	uint32 LogLuv32fromXYZ(float*, int);
 #endif
 #endif /* LOGLUV_PUBLIC */
     
-extern int TIFFCIELabToRGBInit(TIFFCIELabToRGB*, TIFFDisplay *, float*);
-extern void TIFFCIELabToXYZ(TIFFCIELabToRGB *, uint32, int32, int32,
+LIBTIFF_DLL_IMPEXP int TIFFCIELabToRGBInit(TIFFCIELabToRGB*, TIFFDisplay *, float*);
+LIBTIFF_DLL_IMPEXP void TIFFCIELabToXYZ(TIFFCIELabToRGB *, uint32, int32, int32,
 			    float *, float *, float *);
-extern void TIFFXYZToRGB(TIFFCIELabToRGB *, float, float, float,
+LIBTIFF_DLL_IMPEXP void TIFFXYZToRGB(TIFFCIELabToRGB *, float, float, float,
 			 uint32 *, uint32 *, uint32 *);
 
-extern int TIFFYCbCrToRGBInit(TIFFYCbCrToRGB*, float*, float*);
-extern void TIFFYCbCrtoRGB(TIFFYCbCrToRGB *, uint32, int32, int32,
+LIBTIFF_DLL_IMPEXP int TIFFYCbCrToRGBInit(TIFFYCbCrToRGB*, float*, float*);
+LIBTIFF_DLL_IMPEXP void TIFFYCbCrtoRGB(TIFFYCbCrToRGB *, uint32, int32, int32,
 			   uint32 *, uint32 *, uint32 *);
 
 #if defined(c_plusplus) || defined(__cplusplus)




More information about the Ros-diffs mailing list