source: NonGTP/Xerces/xerces-c_2_8_0/include/xercesc/util/Compilers/SunKaiDefs.hpp @ 2674

Revision 2674, 5.2 KB checked in by mattausch, 16 years ago (diff)
Line 
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: SunKaiDefs.hpp 568078 2007-08-21 11:43:25Z amassari $
20 */
21
22#if !defined(SUNKAIDEFS_HPP)
23#define SUNKAIDEFS_HPP
24
25
26// ---------------------------------------------------------------------------
27//  Include some runtime files that will be needed product wide
28// ---------------------------------------------------------------------------
29#include <memory.h>
30#include <strings.h>
31#include <sys/types.h>  // for size_t and ssize_t
32#include <limits.h>  // for MAX of size_t and ssize_t
33
34// ---------------------------------------------------------------------------
35//  A define in the build for each project is also used to control whether
36//  the export keyword is from the project's viewpoint or the client's.
37//  These defines provide the platform specific keywords that they need
38//  to do this.
39// ---------------------------------------------------------------------------
40#define PLATFORM_EXPORT
41#define PLATFORM_IMPORT
42
43// ---------------------------------------------------------------------------
44//  Indicate that we do not support native bools
45//  If the compiler can handle boolean itself, do not define it
46// ---------------------------------------------------------------------------
47// #define NO_NATIVE_BOOL
48
49// ---------------------------------------------------------------------------
50//  Each compiler might support L"" prefixed constants. There are places
51//  where it is advantageous to use the L"" where it supported, to avoid
52//  unnecessary transcoding.
53//  If your compiler does not support it, don't define this.
54// ---------------------------------------------------------------------------
55// #define XML_LSTRSUPPORT
56
57// ---------------------------------------------------------------------------
58//  Indicate that we support C++ namespace
59//  Do not define it if the compile cannot handle C++ namespace
60// ---------------------------------------------------------------------------
61// #define XERCES_HAS_CPP_NAMESPACE
62
63// ---------------------------------------------------------------------------
64//  Define our version of the XML character
65// ---------------------------------------------------------------------------
66typedef unsigned short XMLCh;
67
68// ---------------------------------------------------------------------------
69//  Define unsigned 16 and 32 bits integers
70// ---------------------------------------------------------------------------
71typedef unsigned short  XMLUInt16;
72typedef unsigned int    XMLUInt32;
73
74// ---------------------------------------------------------------------------
75//  Define signed 32 bits integers
76// ---------------------------------------------------------------------------
77typedef int             XMLInt32;
78
79// ---------------------------------------------------------------------------
80//  XMLSize_t is the unsigned integral type.
81// ---------------------------------------------------------------------------
82#if defined(_SIZE_T) && defined(SIZE_MAX) && defined(_SSIZE_T) && defined(SSIZE_MAX)
83    typedef size_t              XMLSize_t;
84    #define XML_SIZE_MAX        SIZE_MAX
85    typedef ssize_t             XMLSSize_t;
86    #define XML_SSIZE_MAX       SSIZE_MAX
87#else
88    typedef unsigned long       XMLSize_t;
89    #define XML_SIZE_MAX        ULONG_MAX
90    typedef long                XMLSSize_t;
91    #define XML_SSIZE_MAX       LONG_MAX
92#endif
93
94
95// ---------------------------------------------------------------------------
96//  Force on the Xerces debug token if it was on in the build environment
97// ---------------------------------------------------------------------------
98#if defined(_DEBUG)
99#define XERCES_DEBUG
100#endif
101
102// ---------------------------------------------------------------------------
103//  The name of the DLL that is built by the system.
104//  We append a previously defined token which holds the DLL
105//  versioning string. This is defined in XercesDefs.hpp which is what this
106//  file is included into.
107// ---------------------------------------------------------------------------
108const char* const Xerces_DLLName = "KAIXERCESC" Xerces_DLLVersionStr;
109
110// ---------------------------------------------------------------------------
111//  Provide prototypes for some string functions that are not provided on all
112//  platforms.
113// ---------------------------------------------------------------------------
114int stricmp(const char* const str1, const char* const  str2);
115int strnicmp(const char* const str1, const char* const  str2, const unsigned int count);
116
117#endif //SUNKAIDEFS_HPP
Note: See TracBrowser for help on using the repository browser.