00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048
00049
00050
00051
00052
00053
00054
00055
00056
00057
00058 #ifndef __included_cc_platform_detect_h
00059 #define __included_cc_platform_detect_h
00060
00061 #undef PROCESSOR_DETECTED
00062 #undef COMPILER_DETECTED
00063 #undef OS_DETECTED
00064
00065
00066
00067
00068
00069
00070 #if defined (TARGET_CPU_PPC)
00071 #define PROCESSOR_DETECTED
00072 #endif
00073
00074
00075 #if !defined (PROCESSOR_DETECTED)
00076 #if defined (__arm__)
00077 #define PROCESSOR_DETECTED
00078 #define TARGET_CPU_ARM
00079 #endif
00080 #endif
00081
00082
00083 #if !defined (PROCESSOR_DETECTED)
00084 #if defined (__alpha) || defined (__alpha__)
00085 #define PROCESSOR_DETECTED
00086 #define TARGET_CPU_ALPHA
00087 #endif
00088 #endif
00089
00090
00091 #if !defined (PROCESSOR_DETECTED)
00092 #if defined (__sparc) || defined (__sparc__)
00093 #define PROCESSOR_DETECTED
00094 #define TARGET_CPU_SPARC
00095 #endif
00096 #endif
00097
00098
00099 #if !defined (PROCESSOR_DETECTED)
00100 #if defined (__MIPSEL__)
00101 #define PROCESSOR_DETECTED
00102 #define TARGET_CPU_MIPS
00103 #elif defined (__mips__)
00104 #define PROCESSOR_DETECTED
00105 #define TARGET_CPU_MIPS
00106 #endif
00107 #endif
00108
00109
00110 #if !defined (PROCESSOR_DETECTED)
00111 #if defined (_ARCH_PPC) || defined (__ppc__) || defined (__ppc64__) || defined (__PPC) || defined (powerpc) || defined (__PPC__) || defined (__powerpc64__) || defined (__powerpc64)
00112 #define PROCESSOR_DETECTED
00113 #define TARGET_BIG_ENDIAN
00114 #endif
00115 #endif
00116
00117
00118 #if !defined (PROCESSOR_DETECTED)
00119 #if defined (__x86_64__) || defined (__x86_64) || defined (__amd64) || defined (__amd64__) || defined (_AMD64_) || defined (_M_X64)
00120 #define PROCESSOR_DETECTED
00121 #define TARGET_CPU_X64
00122 #define TARGET_CPU_X86_64
00123 #endif
00124 #endif
00125
00126
00127 #if !defined (PROCESSOR_DETECTED)
00128 #if defined (__i386__) || defined (__i386) || defined (i386) || defined (_X86_) || defined (_M_IX86)
00129 #define PROCESSOR_DETECTED
00130 #define TARGET_CPU_X86
00131 #endif
00132 #endif
00133
00134
00135 #if !defined (PROCESSOR_DETECTED)
00136 #if defined (__ia64__) || defined (_IA64) || defined (__ia64) || defined (_M_IA64)
00137 #define PROCESSOR_DETECTED
00138 #define TARGET_CPU_IA64
00139 #define TARGET_LITTLE_ENDIAN
00140 #endif
00141 #endif
00142
00143
00144
00145
00146
00147 #if !defined (COMPILER_DETECTED)
00148 #if defined (__GNUC__)
00149 #define COMPILER_DETECTED
00150 #define TARGET_COMPILER_GCC
00151 #endif
00152 #if defined (__CYGWIN__) || defined (__CYGWIN32__)
00153 #define TARGET_COMPILER_CYGWIN
00154 #endif
00155 #if defined (__MINGW32__)
00156 #define TARGET_COMPILER_MINGW
00157 #endif
00158 #if defined (__DJGPP__)
00159 #define TARGET_COMPILER_DJGPP
00160 #endif
00161 #endif
00162
00163 #if !defined (COMPILER_DETECTED)
00164 #if defined (__INTEL_COMPILER) || defined (__ICL)
00165 #define COMPILER_DETECTED
00166 #define TARGET_COMPILER_ICC
00167 #endif
00168 #endif
00169
00170 #if !defined (COMPILER_DETECTED)
00171 #if defined (_MSC_VER)
00172 #define COMPILER_DETECTED
00173 #define TARGET_COMPILER_VC
00174 #endif
00175 #endif
00176
00177 #if !defined (COMPILER_DETECTED)
00178 #if defined (__BORLANDC__)
00179
00180 #if __BORLANDC__ >= 0x0600
00181 #define COMPILER_DETECTED
00182 #define TARGET_COMPILER_BORLAND
00183 #endif
00184 #endif
00185 #endif
00186
00187
00188
00189
00190
00191 #if !defined (OS_DETECTED)
00192 #if defined (TARGET_COMPILER_VC) || defined (_WIN32) || defined (_WIN64)
00193 #define OS_DETECTED
00194 #define TARGET_OS_WINDOWS
00195 #endif
00196 #endif
00197
00198 #if !defined (OS_DETECTED)
00199 #if defined (__linux__) || defined (linux) || defined (__linux) || defined (__gnu_linux__) || defined (__CYGWIN__)
00200 #define OS_DETECTED
00201 #define TARGET_OS_LINUX
00202 #endif
00203 #endif
00204
00205 #if !defined (OS_DETECTED)
00206 #if defined (TARGET_CPU_ARM)
00207 #define OS_DETECTED
00208 #define TARGET_OS_NDSFIRMWARE
00209 #endif
00210 #endif
00211
00212 #if !defined (OS_DETECTED)
00213 #if defined (MSDOS) || defined (__DOS__) || defined (__DJGPP__)
00214 #define OS_DETECTED
00215 #define TARGET_OS_DOS
00216 #endif
00217 #endif
00218
00219 #if !defined (OS_DETECTED)
00220 #if defined (__sun__)
00221 #define OS_DETECTED
00222 #define TARGET_OS_SOLARIS
00223 #endif
00224 #endif
00225
00226 #if !defined (OS_DETECTED)
00227 #if defined (__FreeBSD__)
00228 #define OS_DETECTED
00229 #define TARGET_OS_FREEBSD
00230 #endif
00231 #endif
00232
00233 #if !defined (OS_DETECTED)
00234 #if defined (__NetBSD__)
00235 #define OS_DETECTED
00236 #define TARGET_OS_NETBSD
00237 #endif
00238 #endif
00239
00240 #if !defined (OS_DETECTED)
00241 #if defined (__OpenBSD__)
00242 #define OS_DETECTED
00243 #define TARGET_OS_OPENBSD
00244 #endif
00245 #endif
00246
00247 #if !defined (OS_DETECTED)
00248 #if defined (__APPLE__)
00249 #define OS_DETECTED
00250 #define TARGET_OS_MACOSX
00251 #endif
00252 #endif
00253
00254 #if !defined (OS_DETECTED)
00255 #if defined (__hurd__)
00256 #define OS_DETECTED
00257 #define TARGET_OS_HURD
00258 #endif
00259 #endif
00260
00261
00262
00263
00264
00265
00266
00267
00268
00269 #if !defined (OS_DETECTED)
00270 #define TARGET_OS_UNKNOWN
00271
00272 #endif
00273
00274
00275 #ifdef TARGET_OS_WINDOWS
00276 #ifdef TARGET_COMPILER_ICC
00277 #define TARGET_COMPILER_VC
00278 #endif
00279 #endif
00280
00281 #endif