xref: /plan9-contrib/sys/src/cmd/gs/src/gs_dll_call.h (revision 593dc095aefb2a85c828727bbfa9da139a49bdf4)
1*593dc095SDavid du Colombier /* Portions Copyright (C) 2003 artofcode LLC.
2*593dc095SDavid du Colombier    Portions Copyright (C) 2003 Artifex Software Inc.
3*593dc095SDavid du Colombier    This software is based in part on the work of the Independent JPEG Group.
4*593dc095SDavid du Colombier    All Rights Reserved.
5*593dc095SDavid du Colombier 
6*593dc095SDavid du Colombier    This software is distributed under license and may not be copied, modified
7*593dc095SDavid du Colombier    or distributed except as expressly authorized under the terms of that
8*593dc095SDavid du Colombier    license.  Refer to licensing information at http://www.artifex.com/ or
9*593dc095SDavid du Colombier    contact Artifex Software, Inc., 101 Lucas Valley Road #110,
10*593dc095SDavid du Colombier    San Rafael, CA  94903, (415)492-9861, for further information. */
11*593dc095SDavid du Colombier /*$Id: gs_dll_call.h,v 1.1 2004/08/04 19:36:12 stefan Exp $ */
12*593dc095SDavid du Colombier 
13*593dc095SDavid du Colombier /* calling convention macros for windows style dlls.
14*593dc095SDavid du Colombier  */
15*593dc095SDavid du Colombier #ifndef GS_DLL_CALL_H
16*593dc095SDavid du Colombier #define GS_DLL_CALL_H
17*593dc095SDavid du Colombier 
18*593dc095SDavid du Colombier 
19*593dc095SDavid du Colombier #ifdef __WINDOWS__
20*593dc095SDavid du Colombier # define _Windows
21*593dc095SDavid du Colombier #endif
22*593dc095SDavid du Colombier 
23*593dc095SDavid du Colombier #ifdef _Windows
24*593dc095SDavid du Colombier # ifndef GSDLLEXPORT
25*593dc095SDavid du Colombier #  define GSDLLEXPORT __declspec(dllexport)
26*593dc095SDavid du Colombier # endif
27*593dc095SDavid du Colombier # ifndef GSDLLAPI
28*593dc095SDavid du Colombier #  define GSDLLAPI __stdcall
29*593dc095SDavid du Colombier # endif
30*593dc095SDavid du Colombier # ifndef GSDLLCALL
31*593dc095SDavid du Colombier #  define GSDLLCALL __stdcall
32*593dc095SDavid du Colombier # endif
33*593dc095SDavid du Colombier #endif  /* _Windows */
34*593dc095SDavid du Colombier 
35*593dc095SDavid du Colombier #if defined(OS2) && defined(__IBMC__)
36*593dc095SDavid du Colombier # ifndef GSDLLAPI
37*593dc095SDavid du Colombier #  define GSDLLAPI _System
38*593dc095SDavid du Colombier # endif
39*593dc095SDavid du Colombier # ifndef GSDLLCALL
40*593dc095SDavid du Colombier #  define GSDLLCALL _System
41*593dc095SDavid du Colombier # endif
42*593dc095SDavid du Colombier #endif	/* OS2 && __IBMC */
43*593dc095SDavid du Colombier 
44*593dc095SDavid du Colombier #ifdef __MACOS__
45*593dc095SDavid du Colombier # pragma export on
46*593dc095SDavid du Colombier #endif
47*593dc095SDavid du Colombier 
48*593dc095SDavid du Colombier #ifndef GSDLLEXPORT
49*593dc095SDavid du Colombier # define GSDLLEXPORT
50*593dc095SDavid du Colombier #endif
51*593dc095SDavid du Colombier #ifndef GSDLLAPI
52*593dc095SDavid du Colombier # define GSDLLAPI
53*593dc095SDavid du Colombier #endif
54*593dc095SDavid du Colombier #ifndef GSDLLCALL
55*593dc095SDavid du Colombier # define GSDLLCALL
56*593dc095SDavid du Colombier #endif
57*593dc095SDavid du Colombier 
58*593dc095SDavid du Colombier #if defined(__IBMC__)
59*593dc095SDavid du Colombier # define GSDLLAPIPTR * GSDLLAPI
60*593dc095SDavid du Colombier # define GSDLLCALLPTR * GSDLLCALL
61*593dc095SDavid du Colombier #else
62*593dc095SDavid du Colombier # define GSDLLAPIPTR GSDLLAPI *
63*593dc095SDavid du Colombier # define GSDLLCALLPTR GSDLLCALL *
64*593dc095SDavid du Colombier #endif
65*593dc095SDavid du Colombier 
66*593dc095SDavid du Colombier #endif /* GS_DLL_CALL_H */
67