• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 #if !defined(PIC) && !defined(NOLIBTOOL)
94 #  define LIBXML_STATIC
95 #endif
96 #endif /* ! __XML_LIBXML_H__ */
97