AWARE [SYSTEMS] Imaging expertise for the Delphi developer
AWare Systems, Imaging expertise for the Delphi developer, Home TIFF and LibTiff Mailing List Archive

LibTiff Mailing List

TIFF and LibTiff Mailing List Archive
September 2004

Previous Thread
Next Thread

Previous by Thread
Next by Thread

Previous by Date
Next by Date

Contact

The TIFF Mailing List Homepage
This list is run by Frank Warmerdam
Archive maintained by AWare Systems



Valid HTML 4.01!



Thread

2004.09.14 11:06 "Calltype support", by Martin Schramm
2004.09.15 13:46 "Re: Calltype support", by Frank Warmerdam
2004.09.15 15:02 "Re: Calltype support", by Bob Friesenhahn
2004.09.15 15:25 "Re: Calltype support", by Frank Warmerdam
2004.09.15 15:38 "Re: Calltype support", by Bob Friesenhahn
2004.09.16 17:54 "versioned symbols [Was: Calltype support]", by Jay Berkenbilt
2004.09.16 18:08 "Re: versioned symbols [Was: Calltype support]", by Thomas J Kacvinsky
2004.09.16 18:22 "Re: versioned symbols [Was: Calltype support]", by Jay Berkenbilt
2004.09.16 18:27 "Re: versioned symbols [Was: Calltype support]", by Thomas J Kacvinsky
2004.09.16 21:36 "Re: versioned symbols [Was: Calltype support]", by Andrey Kiselev
2004.09.16 22:36 "Re: versioned symbols [Was: Calltype support]", by Bob Friesenhahn
2004.09.19 15:52 "Re: versioned symbols [Was: Calltype support]", by Jay Berkenbilt
2004.09.19 19:34 "Re: versioned symbols [Was: Calltype support]", by Andrey Kiselev

2004.09.15 15:02 "Re: Calltype support", by Bob Friesenhahn

On Wed, 15 Sep 2004, Frank Warmerdam wrote:
> I would agree that wrapping all the public definitions in appropriate
> macros is desirable and I do this on various other projects.  Please
> submit a bug with the request.
>
> However, isn't there a way to direct the compiler to use a particular
> calling convention that would avoid all this?

The only other means available appears to be to maintain a separate
".def" file to tell the linker which functions should be exported. 
This is very easy to implement but it adds another file to the build. 
I think that the user of the header files still needs to know which 
functions are imported from a DLL so that they use the right calling 
convention.  This is painful for the library user.

I notice that for GraphicsMagick we have hacked our libtiff headers to 
declare functions like:

extern TIFFEXPORT tsize_t TIFFReadTile(TIFF*,
             tdata_t, uint32, uint32, uint32, tsample_t);

so that explicitly exporting functions is possible.

I therefore support adding the hooks to export functions under 
Windows, but don't think that obfuscating all function declaractions 
with macros is a necessary approach.

Bob

======================================
Bob Friesenhahn
bfriesen@simple.dallas.tx.us
http://www.simplesystems.org/users/bfriesen