ReactOS 0.4.15-dev-7924-g5949c20
_system.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 1997
3 * Moscow Center for SPARC Technology
4 *
5 * Copyright (c) 1999
6 * Boris Fomitchev
7 *
8 * This material is provided "as is", with absolutely no warranty expressed
9 * or implied. Any use is at your own risk.
10 *
11 * Permission to use or copy this software for any purpose is hereby granted
12 * without fee, provided the above notices are retained on all copies.
13 * Permission to modify the code and to distribute modified code is granted,
14 * provided the above notices are retained, and a notice that the code was
15 * modified is included with the above copyright notice.
16 *
17 */
18
19/*
20 * Purpose of this file :
21 *
22 * To hold COMPILER-SPECIFIC portion of STLport settings.
23 * In general, user should not edit this file unless
24 * using the compiler not recognized below.
25 *
26 * If your compiler is not being recognized yet,
27 * please look for definitions of macros in stl_mycomp.h,
28 * copy stl_mycomp.h to stl_YOUR_COMPILER_NAME,
29 * adjust flags for your compiler, and add <include config/stl_YOUR_COMPILER_NAME>
30 * to the secton controlled by unique macro defined internaly by your compiler.
31 *
32 * To change user-definable settings, please edit <user_config.h>
33 *
34 */
35
36#ifndef __stl_config__system_h
37#define __stl_config__system_h
38
39#if defined (__REACTOS__)
40# include <stl/config/_reactos.h>
41#elif defined (__sun)
42# include <stl/config/_solaris.h>
43# if defined (__GNUC__)
44# include <stl/config/_gcc.h>
45# elif defined (__SUNPRO_CC) || defined (__SUNPRO_C)
46# include <stl/config/_sunprocc.h>
47/*
48# ifdef __KCC
49# include <stl/config/_kai.h>
50# endif
51*/
52# elif defined (__APOGEE__) /* Apogee 4.x */
53# include <stl/config/_apcc.h>
54# elif defined (__FCC_VERSION) /* Fujitsu Compiler, v4.0 assumed */
55# include <stl/config/_fujitsu.h>
56# endif
57#elif defined (__hpux)
58# include <stl/config/_hpux.h>
59# if defined (__GNUC__)
60# include <stl/config/_gcc.h>
61# elif defined (__HP_aCC)
62# include <stl/config/_hpacc.h>
63# endif
64#elif defined (linux) || defined (__linux__)
65# include <stl/config/_linux.h>
66# if defined (__BORLANDC__)
67# include <stl/config/_bc.h> /* Borland C++ 0x570 */
68/* Intel's icc define __GNUC__! */
69# elif defined (__INTEL_COMPILER)
70# include <stl/config/_icc.h>
71# elif defined (__GNUC__)
72# include <stl/config/_gcc.h>
73# endif
74/*
75# ifdef __KCC
76# include <stl/config/_kai.h>
77# endif
78*/
79#elif defined (__FreeBSD__)
80# include <stl/config/_freebsd.h>
81# if defined (__GNUC__)
82# include <stl/config/_gcc.h>
83# endif
84#elif defined (__OpenBSD__)
85# include <stl/config/_openbsd.h>
86# if defined (__GNUC__)
87# include <stl/config/_gcc.h>
88# endif
89#elif defined (__sgi) /* IRIX? */
90# define _STLP_PLATFORM "SGI Irix"
91# if defined (__GNUC__)
92# include <stl/config/_gcc.h>
93# else
94# include <stl/config/_sgi.h>
95# endif
96#elif defined (__OS400__) /* AS/400 C++ */
97# define _STLP_PLATFORM "OS 400"
98# if defined (__GNUC__)
99# include <stl/config/_gcc.h>
100# else
101# include <stl/config/_as400.h>
102# endif
103#elif defined (_AIX)
104# include <stl/config/_aix.h>
105# if defined (__xlC__) || defined (__IBMC__) || defined ( __IBMCPP__ )
106 /* AIX xlC, Visual Age C++ , OS-390 C++ */
107# include <stl/config/_ibm.h>
108# endif
109#elif defined (_CRAY) /* Cray C++ 3.4 or 3.5 */
110# define _STLP_PLATFORM "Cray"
111# include <config/_cray.h>
112#elif defined (__DECCXX) || defined (__DECC)
113# define _STLP_PLATFORM "DECC"
114# ifdef __vms
115# include <stl/config/_dec_vms.h>
116# else
117# include <stl/config/_dec.h>
118# endif
119#elif defined (macintosh) || defined (_MAC)
120# include <stl/config/_mac.h>
121# if defined (__MWERKS__)
122# include <stl/config/_mwerks.h>
123# endif
124#elif defined (__APPLE__)
125# include <stl/config/_macosx.h>
126# ifdef __GNUC__
127# include <stl/config/_gcc.h>
128# endif
129#elif defined (__CYGWIN__)
130# include <stl/config/_cygwin.h>
131# if defined (__GNUC__)
132# include <stl/config/_gcc.h>
133# endif
134#elif defined (__MINGW32__)
135# define _STLP_PLATFORM "MinGW"
136# if defined (__GNUC__)
137# include <stl/config/_gcc.h>
138# endif
139# include <stl/config/_windows.h>
140#elif defined (_WIN32) || defined (__WIN32) || defined (WIN32) || defined (__WIN32__) || \
141 defined (__WIN16) || defined (WIN16) || defined (_WIN16)
142# if defined ( __BORLANDC__ ) /* Borland C++ / CodeGear C++ */
143# include <stl/config/_bc.h>
144# elif defined (__WATCOM_CPLUSPLUS__) || defined (__WATCOMC__) /* Watcom C++ */
145# include <stl/config/_watcom.h>
146# elif defined (__COMO__) || defined (__COMO_VERSION_)
147# include <stl/config/_como.h>
148# elif defined (__DMC__) /* Digital Mars C++ */
149# include <stl/config/_dm.h>
150# elif defined (__ICL) /* Intel reference compiler for Win */
151# include <stl/config/_intel.h>
152# elif defined (__MWERKS__)
153# include <stl/config/_mwerks.h>
154# elif defined (_MSC_VER) && (_MSC_VER >= 1200) && defined (UNDER_CE)
155 /* Microsoft eMbedded Visual C++ 3.0, 4.0 (.NET) */
156# include <stl/config/_evc.h>
157# elif defined (_MSC_VER)
158 /* Microsoft Visual C++ 6.0, 7.0, 7.1, 8.0 */
159# include <stl/config/_msvc.h>
160# endif
161
162# include <stl/config/_windows.h>
163#else
164# error Unknown platform !!
165#endif
166
167#if !defined (_STLP_COMPILER)
168/* Unable to identify the compiler, issue error diagnostic.
169 * Edit <config/stl_mycomp.h> to set STLport up for your compiler. */
170# include <stl/config/stl_mycomp.h>
171#endif
172
173#endif /* __stl_config__system_h */