1 /* 2 * Summary: compile-time version information 3 * Description: compile-time version information for the XML library 4 * 5 * Copy: See Copyright for the status of this software. 6 * 7 * Author: Daniel Veillard 8 */ 9 10 #ifndef __XML_VERSION_H__ 11 #define __XML_VERSION_H__ 12 13 #include <libxml/xmlexports.h> 14 15 #ifdef __cplusplus 16 extern "C" { 17 #endif 18 19 /* 20 * use those to be sure nothing nasty will happen if 21 * your library and includes mismatch 22 */ 23 #ifndef LIBXML2_COMPILING_MSCCDEF 24 XMLPUBFUN void XMLCALL xmlCheckVersion(int version); 25 #endif /* LIBXML2_COMPILING_MSCCDEF */ 26 27 /** 28 * LIBXML_DOTTED_VERSION: 29 * 30 * the version string like "1.2.3" 31 */ 32 #define LIBXML_DOTTED_VERSION "2.9.10" 33 34 /** 35 * LIBXML_VERSION: 36 * 37 * the version number: 1.2.3 value is 10203 38 */ 39 #define LIBXML_VERSION 20910 40 41 /** 42 * LIBXML_VERSION_STRING: 43 * 44 * the version number string, 1.2.3 value is "10203" 45 */ 46 #define LIBXML_VERSION_STRING "20910" 47 48 /** 49 * LIBXML_VERSION_EXTRA: 50 * 51 * extra version information, used to show a CVS compilation 52 */ 53 #define LIBXML_VERSION_EXTRA "" 54 55 /** 56 * LIBXML_TEST_VERSION: 57 * 58 * Macro to check that the libxml version in use is compatible with 59 * the version the software has been compiled against 60 */ 61 #define LIBXML_TEST_VERSION xmlCheckVersion(20910); 62 63 #ifndef VMS 64 #if 0 65 /** 66 * WITH_TRIO: 67 * 68 * defined if the trio support need to be configured in 69 */ 70 #define WITH_TRIO 71 #else 72 /** 73 * WITHOUT_TRIO: 74 * 75 * defined if the trio support should not be configured in 76 */ 77 #define WITHOUT_TRIO 78 #endif 79 #else /* VMS */ 80 /** 81 * WITH_TRIO: 82 * 83 * defined if the trio support need to be configured in 84 */ 85 #define WITH_TRIO 1 86 #endif /* VMS */ 87 88 /** 89 * LIBXML_THREAD_ENABLED: 90 * 91 * Whether the thread support is configured in 92 */ 93 #if 0 94 #define LIBXML_THREAD_ENABLED 95 #endif 96 97 /** 98 * LIBXML_THREAD_ALLOC_ENABLED: 99 * 100 * Whether the allocation hooks are per-thread 101 */ 102 #if 0 103 #define LIBXML_THREAD_ALLOC_ENABLED 104 #endif 105 106 /** 107 * LIBXML_TREE_ENABLED: 108 * 109 * Whether the DOM like tree manipulation API support is configured in 110 */ 111 #if 1 112 #define LIBXML_TREE_ENABLED 113 #endif 114 115 /** 116 * LIBXML_OUTPUT_ENABLED: 117 * 118 * Whether the serialization/saving support is configured in 119 */ 120 #if 1 121 #define LIBXML_OUTPUT_ENABLED 122 #endif 123 124 /** 125 * LIBXML_PUSH_ENABLED: 126 * 127 * Whether the push parsing interfaces are configured in 128 */ 129 #if 1 130 #define LIBXML_PUSH_ENABLED 131 #endif 132 133 /** 134 * LIBXML_READER_ENABLED: 135 * 136 * Whether the xmlReader parsing interface is configured in 137 */ 138 #if 1 139 #define LIBXML_READER_ENABLED 140 #endif 141 142 /** 143 * LIBXML_PATTERN_ENABLED: 144 * 145 * Whether the xmlPattern node selection interface is configured in 146 */ 147 #if 0 148 #define LIBXML_PATTERN_ENABLED 149 #endif 150 151 /** 152 * LIBXML_WRITER_ENABLED: 153 * 154 * Whether the xmlWriter saving interface is configured in 155 */ 156 #if 1 157 #define LIBXML_WRITER_ENABLED 158 #endif 159 160 /** 161 * LIBXML_SAX1_ENABLED: 162 * 163 * Whether the older SAX1 interface is configured in 164 */ 165 #if 1 166 #define LIBXML_SAX1_ENABLED 167 #endif 168 169 /** 170 * LIBXML_FTP_ENABLED: 171 * 172 * Whether the FTP support is configured in 173 */ 174 #if 0 175 #define LIBXML_FTP_ENABLED 176 #endif 177 178 /** 179 * LIBXML_HTTP_ENABLED: 180 * 181 * Whether the HTTP support is configured in 182 */ 183 #if 0 184 #define LIBXML_HTTP_ENABLED 185 #endif 186 187 /** 188 * LIBXML_VALID_ENABLED: 189 * 190 * Whether the DTD validation support is configured in 191 */ 192 #if 0 193 #define LIBXML_VALID_ENABLED 194 #endif 195 196 /** 197 * LIBXML_HTML_ENABLED: 198 * 199 * Whether the HTML support is configured in 200 */ 201 #if 1 202 #define LIBXML_HTML_ENABLED 203 #endif 204 205 /** 206 * LIBXML_LEGACY_ENABLED: 207 * 208 * Whether the deprecated APIs are compiled in for compatibility 209 */ 210 #if 0 211 #define LIBXML_LEGACY_ENABLED 212 #endif 213 214 /** 215 * LIBXML_C14N_ENABLED: 216 * 217 * Whether the Canonicalization support is configured in 218 */ 219 #if 0 220 #define LIBXML_C14N_ENABLED 221 #endif 222 223 /** 224 * LIBXML_CATALOG_ENABLED: 225 * 226 * Whether the Catalog support is configured in 227 */ 228 #if 0 229 #define LIBXML_CATALOG_ENABLED 230 #endif 231 232 /** 233 * LIBXML_DOCB_ENABLED: 234 * 235 * Whether the SGML Docbook support is configured in 236 */ 237 #if 0 238 #define LIBXML_DOCB_ENABLED 239 #endif 240 241 /** 242 * LIBXML_XPATH_ENABLED: 243 * 244 * Whether XPath is configured in 245 */ 246 #if 1 247 #define LIBXML_XPATH_ENABLED 248 #endif 249 250 /** 251 * LIBXML_XPTR_ENABLED: 252 * 253 * Whether XPointer is configured in 254 */ 255 #if 0 256 #define LIBXML_XPTR_ENABLED 257 #endif 258 259 /** 260 * LIBXML_XINCLUDE_ENABLED: 261 * 262 * Whether XInclude is configured in 263 */ 264 #if 0 265 #define LIBXML_XINCLUDE_ENABLED 266 #endif 267 268 /** 269 * LIBXML_ICONV_ENABLED: 270 * 271 * Whether iconv support is available 272 */ 273 #if 0 274 #define LIBXML_ICONV_ENABLED 275 #endif 276 277 /** 278 * LIBXML_ICU_ENABLED: 279 * 280 * Whether icu support is available 281 */ 282 #if 1 283 #define LIBXML_ICU_ENABLED 284 #endif 285 286 /** 287 * LIBXML_ISO8859X_ENABLED: 288 * 289 * Whether ISO-8859-* support is made available in case iconv is not 290 */ 291 #if 0 292 #define LIBXML_ISO8859X_ENABLED 293 #endif 294 295 /** 296 * LIBXML_DEBUG_ENABLED: 297 * 298 * Whether Debugging module is configured in 299 */ 300 #if 0 301 #define LIBXML_DEBUG_ENABLED 302 #endif 303 304 /** 305 * DEBUG_MEMORY_LOCATION: 306 * 307 * Whether the memory debugging is configured in 308 */ 309 #if 0 310 #define DEBUG_MEMORY_LOCATION 311 #endif 312 313 /** 314 * LIBXML_DEBUG_RUNTIME: 315 * 316 * Whether the runtime debugging is configured in 317 */ 318 #if 0 319 #define LIBXML_DEBUG_RUNTIME 320 #endif 321 322 /** 323 * LIBXML_UNICODE_ENABLED: 324 * 325 * Whether the Unicode related interfaces are compiled in 326 */ 327 #if 0 328 #define LIBXML_UNICODE_ENABLED 329 #endif 330 331 /** 332 * LIBXML_REGEXP_ENABLED: 333 * 334 * Whether the regular expressions interfaces are compiled in 335 */ 336 #if 0 337 #define LIBXML_REGEXP_ENABLED 338 #endif 339 340 /** 341 * LIBXML_AUTOMATA_ENABLED: 342 * 343 * Whether the automata interfaces are compiled in 344 */ 345 #if 0 346 #define LIBXML_AUTOMATA_ENABLED 347 #endif 348 349 /** 350 * LIBXML_EXPR_ENABLED: 351 * 352 * Whether the formal expressions interfaces are compiled in 353 * 354 * This code is unused and disabled unconditionally for now. 355 */ 356 #if 0 357 #define LIBXML_EXPR_ENABLED 358 #endif 359 360 /** 361 * LIBXML_SCHEMAS_ENABLED: 362 * 363 * Whether the Schemas validation interfaces are compiled in 364 */ 365 #if 0 366 #define LIBXML_SCHEMAS_ENABLED 367 #endif 368 369 /** 370 * LIBXML_SCHEMATRON_ENABLED: 371 * 372 * Whether the Schematron validation interfaces are compiled in 373 */ 374 #if 0 375 #define LIBXML_SCHEMATRON_ENABLED 376 #endif 377 378 /** 379 * LIBXML_MODULES_ENABLED: 380 * 381 * Whether the module interfaces are compiled in 382 */ 383 #if 0 384 #define LIBXML_MODULES_ENABLED 385 /** 386 * LIBXML_MODULE_EXTENSION: 387 * 388 * the string suffix used by dynamic modules (usually shared libraries) 389 */ 390 #define LIBXML_MODULE_EXTENSION "" 391 #endif 392 393 /** 394 * LIBXML_ZLIB_ENABLED: 395 * 396 * Whether the Zlib support is compiled in 397 */ 398 #if 0 399 #define LIBXML_ZLIB_ENABLED 400 #endif 401 402 /** 403 * LIBXML_LZMA_ENABLED: 404 * 405 * Whether the Lzma support is compiled in 406 */ 407 #if 0 408 #define LIBXML_LZMA_ENABLED 409 #endif 410 411 #ifdef __GNUC__ 412 413 /** 414 * ATTRIBUTE_UNUSED: 415 * 416 * Macro used to signal to GCC unused function parameters 417 */ 418 419 #ifndef ATTRIBUTE_UNUSED 420 # if ((__GNUC__ > 2) || ((__GNUC__ == 2) && (__GNUC_MINOR__ >= 7))) 421 # define ATTRIBUTE_UNUSED __attribute__((unused)) 422 # else 423 # define ATTRIBUTE_UNUSED 424 # endif 425 #endif 426 427 /** 428 * LIBXML_ATTR_ALLOC_SIZE: 429 * 430 * Macro used to indicate to GCC this is an allocator function 431 */ 432 433 #ifndef LIBXML_ATTR_ALLOC_SIZE 434 # if (!defined(__clang__) && ((__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 3)))) 435 # define LIBXML_ATTR_ALLOC_SIZE(x) __attribute__((alloc_size(x))) 436 # else 437 # define LIBXML_ATTR_ALLOC_SIZE(x) 438 # endif 439 #else 440 # define LIBXML_ATTR_ALLOC_SIZE(x) 441 #endif 442 443 /** 444 * LIBXML_ATTR_FORMAT: 445 * 446 * Macro used to indicate to GCC the parameter are printf like 447 */ 448 449 #ifndef LIBXML_ATTR_FORMAT 450 # if ((__GNUC__ > 3) || ((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3))) 451 # define LIBXML_ATTR_FORMAT(fmt,args) __attribute__((__format__(__printf__,fmt,args))) 452 # else 453 # define LIBXML_ATTR_FORMAT(fmt,args) 454 # endif 455 #else 456 # define LIBXML_ATTR_FORMAT(fmt,args) 457 #endif 458 459 #else /* ! __GNUC__ */ 460 /** 461 * ATTRIBUTE_UNUSED: 462 * 463 * Macro used to signal to GCC unused function parameters 464 */ 465 #define ATTRIBUTE_UNUSED 466 /** 467 * LIBXML_ATTR_ALLOC_SIZE: 468 * 469 * Macro used to indicate to GCC this is an allocator function 470 */ 471 #define LIBXML_ATTR_ALLOC_SIZE(x) 472 /** 473 * LIBXML_ATTR_FORMAT: 474 * 475 * Macro used to indicate to GCC the parameter are printf like 476 */ 477 #define LIBXML_ATTR_FORMAT(fmt,args) 478 #endif /* __GNUC__ */ 479 480 #ifdef __cplusplus 481 } 482 #endif /* __cplusplus */ 483 #endif 484 485 486