Revert 45697:
[reactos.git] / lib / 3rdparty / libxml2 / libxml.h
1 /*
2 * libxml.h: internal header only used during the compilation of libxml
3 *
4 * See COPYRIGHT for the status of this software
5 *
6 * Author: breese@users.sourceforge.net
7 */
8
9 #ifndef __XML_LIBXML_H__
10 #define __XML_LIBXML_H__
11
12 #ifndef NO_LARGEFILE_SOURCE
13 #ifndef _LARGEFILE_SOURCE
14 #define _LARGEFILE_SOURCE
15 #endif
16 #ifndef _FILE_OFFSET_BITS
17 #define _FILE_OFFSET_BITS 64
18 #endif
19 #endif
20
21 #if defined(macintosh)
22 #include "config-mac.h"
23 #elif defined(_WIN32_WCE)
24 /*
25 * Windows CE compatibility definitions and functions
26 * This is needed to compile libxml2 for Windows CE.
27 * At least I tested it with WinCE 5.0 for Emulator and WinCE 4.2/SH4 target
28 */
29 #include <win32config.h>
30 #include <libxml/xmlversion.h>
31 #else
32 #include "config.h"
33 #include <libxml/xmlversion.h>
34 #endif
35
36 #if defined(__Lynx__)
37 #include <stdio.h> /* pull definition of size_t */
38 #include <varargs.h>
39 int snprintf(char *, size_t, const char *, ...);
40 int vfprintf(FILE *, const char *, va_list);
41 #endif
42
43 #ifndef WITH_TRIO
44 #include <stdio.h>
45 #else
46 /**
47 * TRIO_REPLACE_STDIO:
48 *
49 * This macro is defined if teh trio string formatting functions are to
50 * be used instead of the default stdio ones.
51 */
52 #define TRIO_REPLACE_STDIO
53 #include "trio.h"
54 #endif
55
56 /*
57 * Internal variable indicating if a callback has been registered for
58 * node creation/destruction. It avoids spending a lot of time in locking
59 * function while checking if the callback exists.
60 */
61 extern int __xmlRegisterCallbacks;
62 /*
63 * internal error reporting routines, shared but not partof the API.
64 */
65 void __xmlIOErr(int domain, int code, const char *extra);
66 void __xmlLoaderErr(void *ctx, const char *msg, const char *filename);
67 #ifdef LIBXML_HTML_ENABLED
68 /*
69 * internal function of HTML parser needed for xmlParseInNodeContext
70 * but not part of the API
71 */
72 void __htmlParseContent(void *ctx);
73 #endif
74
75 /*
76 * internal global initialization critical section routines.
77 */
78 void __xmlGlobalInitMutexLock(void);
79 void __xmlGlobalInitMutexUnlock(void);
80 void __xmlGlobalInitMutexDestroy(void);
81
82 #ifdef IN_LIBXML
83 #ifdef __GNUC__
84 #ifdef PIC
85 #ifdef linux
86 #if (__GNUC__ == 3 && __GNUC_MINOR__ >= 3) || (__GNUC__ > 3)
87 #include "elfgcchack.h"
88 #endif
89 #endif
90 #endif
91 #endif
92 #endif
93 #endif /* ! __XML_LIBXML_H__ */