xmlversion.h
1 /*
2 * xmlversion.h : compile-time version informations for the XML parser.
3 *
4 * See Copyright for the status of this software.
5 *
6 * daniel@veillard.com
7 */
8
9 #ifndef __XML_VERSION_H__
10 #define __XML_VERSION_H__
11
12 #ifdef __cplusplus
13 extern "C" {
14 #endif
15
16 /*
17 * use those to be sure nothing nasty will happen if
18 * your library and includes mismatch
19 */
20 #ifndef LIBXML2_COMPILING_MSCCDEF
21 extern void xmlCheckVersion(int version);
22 #endif /* LIBXML2_COMPILING_MSCCDEF */
23
24 /**
25 * LIBXML_DOTTED_VERSION:
26 *
27 * the version string like "1.2.3"
28 */
29 #define LIBXML_DOTTED_VERSION "2.4.28"
30
31 /**
32 * LIBXML_VERSION:
33 *
34 * the version number: 1.2.3 value is 1002003
35 */
36 #define LIBXML_VERSION 20428
37
38 /**
39 * LIBXML_VERSION_STRING:
40 *
41 * the version number string, 1.2.3 value is "1002003"
42 */
43 #define LIBXML_VERSION_STRING "20428"
44
45 /**
46 * LIBXML_TEST_VERSION:
47 *
48 * Macro to check that the libxml version in use is compatible with
49 * the version the software has been compiled against
50 */
51 #define LIBXML_TEST_VERSION xmlCheckVersion(20428);
52
53 #ifndef VMS
54 #if 0
55 /**
56 * WITH_TRIO:
57 *
58 * defined if the trio support need to be configured in
59 */
60 #define WITH_TRIO
61 #else
62 /**
63 * WITHOUT_TRIO:
64 *
65 * defined if the trio support should not be configured in
66 */
67 #define WITHOUT_TRIO
68 #endif
69 #else /* VMS */
70 #define WITH_TRIO 1
71 #endif /* VMS */
72
73 /**
74 * LIBXML_THREAD_ENABLED:
75 *
76 * Whether the thread support is configured in
77 */
78 #if 0
79 #if defined(_REENTRANT) || (_POSIX_C_SOURCE - 0 >= 199506L)
80 #define LIBXML_THREAD_ENABLED
81 #endif
82 #endif
83
84 /**
85 * LIBXML_FTP_ENABLED:
86 *
87 * Whether the FTP support is configured in
88 */
89 #if 1
90 #define LIBXML_FTP_ENABLED
91 #endif
92
93 /**
94 * LIBXML_HTTP_ENABLED:
95 *
96 * Whether the HTTP support is configured in
97 */
98 #if 1
99 #define LIBXML_HTTP_ENABLED
100 #endif
101
102 /**
103 * LIBXML_HTML_ENABLED:
104 *
105 * Whether the HTML support is configured in
106 */
107 #if 1
108 #define LIBXML_HTML_ENABLED
109 #endif
110
111 /**
112 * LIBXML_C14N_ENABLED:
113 *
114 * Whether the Canonicalization support is configured in
115 */
116 #if 1
117 #define LIBXML_C14N_ENABLED
118 #endif
119
120 /**
121 * LIBXML_CATALOG_ENABLED:
122 *
123 * Whether the Catalog support is configured in
124 */
125 #if 1
126 #define LIBXML_CATALOG_ENABLED
127 #endif
128
129 /**
130 * LIBXML_DOCB_ENABLED:
131 *
132 * Whether the SGML Docbook support is configured in
133 */
134 #if 1
135 #define LIBXML_DOCB_ENABLED
136 #endif
137
138 /**
139 * LIBXML_XPATH_ENABLED:
140 *
141 * Whether XPath is configured in
142 */
143 #if 1
144 #define LIBXML_XPATH_ENABLED
145 #endif
146
147 /**
148 * LIBXML_XPTR_ENABLED:
149 *
150 * Whether XPointer is configured in
151 */
152 #if 1
153 #define LIBXML_XPTR_ENABLED
154 #endif
155
156 /**
157 * LIBXML_XINCLUDE_ENABLED:
158 *
159 * Whether XInclude is configured in
160 */
161 #if 1
162 #define LIBXML_XINCLUDE_ENABLED
163 #endif
164
165 /**
166 * LIBXML_ICONV_ENABLED:
167 *
168 * Whether iconv support is available
169 */
170 #if 1
171 #define LIBXML_ICONV_ENABLED
172 #endif
173
174 /**
175 * LIBXML_DEBUG_ENABLED:
176 *
177 * Whether Debugging module is configured in
178 */
179 #if 1
180 #define LIBXML_DEBUG_ENABLED
181 #endif
182
183 /**
184 * DEBUG_MEMORY_LOCATION:
185 *
186 * Whether the memory debugging is configured in
187 */
188 #if 0
189 #define DEBUG_MEMORY_LOCATION
190 #endif
191
192 /**
193 * LIBXML_UNICODE_ENABLED
194 *
195 * Whether the Unicode related interfaces are compiled in
196 */
197 #if 1
198 #define LIBXML_UNICODE_ENABLED
199 #endif
200
201 /**
202 * LIBXML_REGEXP_ENABLED
203 *
204 * Whether the regular expressions interfaces are compiled in
205 */
206 #if 1
207 #define LIBXML_REGEXP_ENABLED
208 #endif
209
210 /**
211 * LIBXML_AUTOMATA_ENABLED
212 *
213 * Whether the automata interfaces are compiled in
214 */
215 #if 1
216 #define LIBXML_AUTOMATA_ENABLED
217 #endif
218
219 /**
220 * LIBXML_SCHEMAS_ENABLED
221 *
222 * Whether the Schemas validation interfaces are compiled in
223 */
224 #if 0
225 #define LIBXML_SCHEMAS_ENABLED
226 #endif
227
228 /**
229 * LIBXML_DLL_IMPORT:
230 *
231 * Used on Windows (MS C compiler only) to declare a variable as
232 * imported from the library. This macro should be empty when compiling
233 * libxml itself. It should expand to __declspec(dllimport)
234 * when the client code includes this header, and that only if the client
235 * links dynamically against libxml.
236 * For this to work, we need three macros. One tells us which compiler is
237 * being used and luckily the compiler defines such a thing: _MSC_VER. The
238 * second macro tells us if we are compiling libxml or the client code and
239 * we define the macro IN_LIBXML on the compiler's command line for this
240 * purpose. The third macro, LIBXML_STATIC, must be defined by any client
241 * code which links against libxml statically.
242 */
243 #ifndef LIBXML_DLL_IMPORT
244 #if (defined(_MSC_VER) || defined(__CYGWIN__)) && !defined(IN_LIBXML) && !defined(LIBXML_STATIC)
245 #define LIBXML_DLL_IMPORT __declspec(dllimport)
246 #else
247 #define LIBXML_DLL_IMPORT
248 #endif
249 #endif
250
251 /**
252 * ATTRIBUTE_UNUSED:
253 *
254 * Macro used to signal to GCC unused function parameters
255 */
256 #ifdef __GNUC__
257 #ifdef HAVE_ANSIDECL_H
258 #include
259 #endif
260 #ifndef ATTRIBUTE_UNUSED
261 #define ATTRIBUTE_UNUSED
262 #endif
263 #else
264 #define ATTRIBUTE_UNUSED
265 #endif
266
267 #ifdef __cplusplus
268 }
269 #endif /* __cplusplus */
270 #endif
271
272