1 /* 2 * Summary: macros for marking symbols as exportable/importable. 3 * Description: macros for marking symbols as exportable/importable. 4 * 5 * Copy: See Copyright for the status of this software. 6 */ 7 8 #ifndef __XSLT_EXPORTS_H__ 9 #define __XSLT_EXPORTS_H__ 10 11 #if defined(_WIN32) || defined(__CYGWIN__) 12 /** DOC_DISABLE */ 13 14 #ifdef LIBXSLT_STATIC 15 #define XSLTPUBLIC 16 #elif defined(IN_LIBXSLT) 17 #define XSLTPUBLIC __declspec(dllexport) 18 #else 19 #define XSLTPUBLIC __declspec(dllimport) 20 #endif 21 22 #define XSLTCALL __cdecl 23 24 /** DOC_ENABLE */ 25 #else /* not Windows */ 26 27 /** 28 * XSLTPUBLIC: 29 * 30 * Macro which declares a public symbol 31 */ 32 #define XSLTPUBLIC 33 34 /** 35 * XSLTCALL: 36 * 37 * Macro which declares the calling convention for exported functions 38 */ 39 #define XSLTCALL 40 41 #endif /* platform switch */ 42 43 /* 44 * XSLTPUBFUN: 45 * 46 * Macro which declares an exportable function 47 */ 48 #define XSLTPUBFUN XSLTPUBLIC 49 50 /** 51 * XSLTPUBVAR: 52 * 53 * Macro which declares an exportable variable 54 */ 55 #define XSLTPUBVAR XSLTPUBLIC extern 56 57 /* Compatibility */ 58 #if !defined(LIBXSLT_PUBLIC) 59 #define LIBXSLT_PUBLIC XSLTPUBVAR 60 #endif 61 62 #endif /* __XSLT_EXPORTS_H__ */ 63 64 65