Xerces-C++  3.1.3
Xerces_autoconf_config.msvc.hpp
Go to the documentation of this file.
1 /*
2  * Licensed to the Apache Software Foundation (ASF) under one or more
3  * contributor license agreements. See the NOTICE file distributed with
4  * this work for additional information regarding copyright ownership.
5  * The ASF licenses this file to You under the Apache License, Version 2.0
6  * (the "License"); you may not use this file except in compliance with
7  * the License. You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */
17 
18 /*
19  * $Id: Xerces_autoconf_config.msvc.hpp 883299 2009-11-23 10:34:54Z amassari $
20  */
21 
22 #if !defined(XERCESC_INCLUDE_GUARD_XERCES_AUTOCONFIG_CONFIG_HPP)
23 #define XERCESC_INCLUDE_GUARD_XERCES_AUTOCONFIG_CONFIG_HPP
24 
25 //
26 // There are two primary xerces configuration header files:
27 //
28 // Xerces_autoconf_config.hpp
29 //
30 // For configuration of items that must be accessable
31 // through public headers. This file has limited information
32 // and carefully works to avoid collision of macro names, etc.
33 //
34 // This file is included by XercesDefs.h.
35 // This version of the file is specific for Microsoft Visual C++
36 // family of compilers
37 //
38 // config.h
39 //
40 // This file is not used with Microsoft Visual C++; the macros
41 // it would specify are instead hardcoded in the makefiles
42 //
43 
44 #include <basetsd.h>
45 
46 // silence the warning "while compiling class-template member function xxxx : identifier was truncated to '255'
47 // characters in the browser information"
48 #pragma warning( disable: 4786 )
49 
50 // ---------------------------------------------------------------------------
51 // These defines have been hardcoded for the Microsoft Visual C++ compilers
52 // ---------------------------------------------------------------------------
53 #undef XERCES_AUTOCONF
54 #undef XERCES_HAVE_SYS_TYPES_H
55 #undef XERCES_HAVE_INTTYPES_H
56 
57 #define XERCES_S16BIT_INT signed short
58 #define XERCES_U16BIT_INT unsigned short
59 #define XERCES_S32BIT_INT INT32
60 #define XERCES_U32BIT_INT UINT32
61 
62 // While VC6 has 64-bit int, there is no support in the libraries
63 // (e.g., iostream). So we are going to stick to 32-bit ints.
64 //
65 #if (_MSC_VER >= 1300)
66 # define XERCES_S64BIT_INT INT64
67 # define XERCES_U64BIT_INT UINT64
68 #else
69 # define XERCES_S64BIT_INT INT32
70 # define XERCES_U64BIT_INT UINT32
71 #endif
72 
73 #ifdef _NATIVE_WCHAR_T_DEFINED
74 # define XERCES_XMLCH_T wchar_t
75 #else
76 # define XERCES_XMLCH_T unsigned short
77 #endif
78 
79 #define XERCES_SIZE_T SIZE_T
80 #define XERCES_SSIZE_T SSIZE_T
81 
82 #define XERCES_HAS_CPP_NAMESPACE 1
83 #define XERCES_STD_NAMESPACE 1
84 #define XERCES_NEW_IOSTREAMS 1
85 #undef XERCES_NO_NATIVE_BOOL
86 #define XERCES_LSTRSUPPORT 1
87 
88 #ifdef XERCES_STATIC_LIBRARY
89 # define XERCES_PLATFORM_EXPORT
90 # define XERCES_PLATFORM_IMPORT
91 #else
92 # define XERCES_PLATFORM_EXPORT __declspec(dllexport)
93 # define XERCES_PLATFORM_IMPORT __declspec(dllimport)
94 # define DLL_EXPORT
95 #endif
96 
97 #define XERCES_MFC_SUPPORT
98 
99 #if (_MSC_VER >= 1400)
100 # define XERCES_HAVE_INTRIN_H 1
101 # define XERCES_HAVE_EMMINTRIN_H 1
102 # define XERCES_HAVE_CPUID_INTRINSIC
103 # define XERCES_HAVE_SSE2_INTRINSIC
104 #endif
105 
106 // ---------------------------------------------------------------------------
107 // XMLSize_t is the unsigned integral type.
108 // ---------------------------------------------------------------------------
111 
112 // ---------------------------------------------------------------------------
113 // Define our version of the XML character
114 // ---------------------------------------------------------------------------
116 
117 // ---------------------------------------------------------------------------
118 // Define unsigned 16, 32, and 64 bit integers
119 // ---------------------------------------------------------------------------
123 
124 // ---------------------------------------------------------------------------
125 // Define signed 16, 32, and 64 bit integers
126 // ---------------------------------------------------------------------------
130 
131 // ---------------------------------------------------------------------------
132 // XMLFilePos is the type used to represent a file position.
133 // ---------------------------------------------------------------------------
135 
136 // ---------------------------------------------------------------------------
137 // XMLFileLoc is the type used to represent a file location (line/column).
138 // ---------------------------------------------------------------------------
140 
141 // ---------------------------------------------------------------------------
142 // Force on the Xerces debug token if it is on in the build environment
143 // ---------------------------------------------------------------------------
144 #if defined(_DEBUG)
145 # define XERCES_DEBUG
146 #endif
147 
148 #endif
SIZE_T XMLSize_t
Definition: Xerces_autoconf_config.msvc.hpp:109
#define XERCES_SSIZE_T
Definition: Xerces_autoconf_config.msvc.hpp:80
UINT64 XMLUInt64
Definition: Xerces_autoconf_config.borland.hpp:99
#define XERCES_XMLCH_T
Definition: Xerces_autoconf_config.msvc.hpp:76
#define XERCES_U16BIT_INT
Definition: Xerces_autoconf_config.msvc.hpp:58
signed short XMLInt16
Definition: Xerces_autoconf_config.msvc.hpp:127
XMLUInt64 XMLFileLoc
Definition: Xerces_autoconf_config.msvc.hpp:139
INT32 XMLInt32
Definition: Xerces_autoconf_config.msvc.hpp:128
#define XERCES_S64BIT_INT
Definition: Xerces_autoconf_config.msvc.hpp:69
#define XERCES_S16BIT_INT
Definition: Xerces_autoconf_config.msvc.hpp:57
unsigned short XMLCh
Definition: Xerces_autoconf_config.msvc.hpp:115
XMLUInt64 XMLFilePos
Definition: Xerces_autoconf_config.msvc.hpp:134
#define XERCES_SIZE_T
Definition: Xerces_autoconf_config.msvc.hpp:79
#define XERCES_U64BIT_INT
Definition: Xerces_autoconf_config.msvc.hpp:70
UINT32 XMLUInt64
Definition: Xerces_autoconf_config.msvc.hpp:122
SSIZE_T XMLSSize_t
Definition: Xerces_autoconf_config.msvc.hpp:110
INT32 XMLInt64
Definition: Xerces_autoconf_config.msvc.hpp:129
UINT32 XMLUInt32
Definition: Xerces_autoconf_config.msvc.hpp:121
#define XERCES_U32BIT_INT
Definition: Xerces_autoconf_config.msvc.hpp:60
unsigned short XMLUInt16
Definition: Xerces_autoconf_config.msvc.hpp:120
#define XERCES_S32BIT_INT
Definition: Xerces_autoconf_config.msvc.hpp:59