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 __XML_EXPORTS_H__
9 #define __XML_EXPORTS_H__
10
11 /** DOC_DISABLE */
12 #if defined(_WIN32) || defined(__CYGWIN__)
13 #ifdef LIBXML_STATIC
14 #define XMLPUBLIC
15 #elif defined(IN_LIBXML)
16 #define XMLPUBLIC __declspec(dllexport)
17 #else
18 #define XMLPUBLIC __declspec(dllimport)
19 #endif
20 #else /* not Windows */
21 #define XMLPUBLIC
22 #endif /* platform switch */
23 /** DOC_ENABLE */
24
25 /*
26 * XMLPUBFUN:
27 *
28 * Macro which declares an exportable function
29 */
30 #define XMLPUBFUN XMLPUBLIC
31
32 /**
33 * XMLPUBVAR:
34 *
35 * Macro which declares an exportable variable
36 */
37 #define XMLPUBVAR XMLPUBLIC extern
38
39 /** DOC_DISABLE */
40 /* Compatibility */
41 #define XMLCALL
42 #define XMLCDECL
43 #if !defined(LIBXML_DLL_IMPORT)
44 #define LIBXML_DLL_IMPORT XMLPUBVAR
45 #endif
46 /** DOC_ENABLE */
47
48 #endif /* __XML_EXPORTS_H__ */
49
50