~uhh-ssd/+junk/humidity_readout

« back to all changes in this revision

Viewing changes to plplot/plplot-5.9.9/language_tests/CXX/CMakeFiles/CompilerIdCXX/CMakeCXXCompilerId.cpp

  • Committer: Joachim Erfle
  • Date: 2013-07-24 13:53:41 UTC
  • Revision ID: joachim.erfle@desy.de-20130724135341-1qojpp701zsn009p
initial commit

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/* This source file must have a .cpp extension so that all C++ compilers
 
2
   recognize the extension without flags.  Borland does not know .cxx for
 
3
   example.  */
 
4
#ifndef __cplusplus
 
5
# error "A C compiler has been selected for C++."
 
6
#endif
 
7
 
 
8
#if defined(__COMO__)
 
9
# define COMPILER_ID "Comeau"
 
10
 
 
11
#elif defined(__INTEL_COMPILER) || defined(__ICC)
 
12
# define COMPILER_ID "Intel"
 
13
 
 
14
#elif defined(__clang__)
 
15
# define COMPILER_ID "Clang"
 
16
 
 
17
#elif defined(__BORLANDC__)
 
18
# define COMPILER_ID "Borland"
 
19
 
 
20
#elif defined(__WATCOMC__)
 
21
# define COMPILER_ID "Watcom"
 
22
 
 
23
#elif defined(__SUNPRO_CC)
 
24
# define COMPILER_ID "SunPro"
 
25
 
 
26
#elif defined(__HP_aCC)
 
27
# define COMPILER_ID "HP"
 
28
 
 
29
#elif defined(__DECCXX)
 
30
# define COMPILER_ID "Compaq"
 
31
 
 
32
#elif defined(__IBMCPP__)
 
33
# if defined(__COMPILER_VER__)
 
34
#  define COMPILER_ID "zOS"
 
35
# elif __IBMCPP__ >= 800
 
36
#  define COMPILER_ID "XL"
 
37
# else
 
38
#  define COMPILER_ID "VisualAge"
 
39
# endif
 
40
 
 
41
#elif defined(__PGI)
 
42
# define COMPILER_ID "PGI"
 
43
 
 
44
#elif defined(__PATHSCALE__)
 
45
# define COMPILER_ID "PathScale"
 
46
 
 
47
#elif defined(_CRAYC)
 
48
# define COMPILER_ID "Cray"
 
49
 
 
50
#elif defined(__TI_COMPILER_VERSION__)
 
51
# define COMPILER_ID "TI_DSP"
 
52
 
 
53
#elif defined(__SCO_VERSION__)
 
54
# define COMPILER_ID "SCO"
 
55
 
 
56
#elif defined(__GNUC__)
 
57
# define COMPILER_ID "GNU"
 
58
 
 
59
#elif defined(_MSC_VER)
 
60
# define COMPILER_ID "MSVC"
 
61
 
 
62
#elif defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__)
 
63
/* Analog Devices C++ compiler for Blackfin, TigerSHARC and
 
64
   SHARC (21000) DSPs */
 
65
# define COMPILER_ID "ADSP"
 
66
 
 
67
#elif defined(_SGI_COMPILER_VERSION) || defined(_COMPILER_VERSION)
 
68
# define COMPILER_ID "MIPSpro"
 
69
 
 
70
/* This compiler is either not known or is too old to define an
 
71
   identification macro.  Try to identify the platform and guess that
 
72
   it is the native compiler.  */
 
73
#elif defined(__sgi)
 
74
# define COMPILER_ID "MIPSpro"
 
75
 
 
76
#elif defined(__hpux) || defined(__hpua)
 
77
# define COMPILER_ID "HP"
 
78
 
 
79
#else /* unknown compiler */
 
80
# define COMPILER_ID ""
 
81
 
 
82
#endif
 
83
 
 
84
/* Construct the string literal in pieces to prevent the source from
 
85
   getting matched.  Store it in a pointer rather than an array
 
86
   because some compilers will just produce instructions to fill the
 
87
   array rather than assigning a pointer to a static array.  */
 
88
char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]";
 
89
 
 
90
/* Identify known platforms by name.  */
 
91
#if defined(__linux) || defined(__linux__) || defined(linux)
 
92
# define PLATFORM_ID "Linux"
 
93
 
 
94
#elif defined(__CYGWIN__)
 
95
# define PLATFORM_ID "Cygwin"
 
96
 
 
97
#elif defined(__MINGW32__)
 
98
# define PLATFORM_ID "MinGW"
 
99
 
 
100
#elif defined(__APPLE__)
 
101
# define PLATFORM_ID "Darwin"
 
102
 
 
103
#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32)
 
104
# define PLATFORM_ID "Windows"
 
105
 
 
106
#elif defined(__FreeBSD__) || defined(__FreeBSD)
 
107
# define PLATFORM_ID "FreeBSD"
 
108
 
 
109
#elif defined(__NetBSD__) || defined(__NetBSD)
 
110
# define PLATFORM_ID "NetBSD"
 
111
 
 
112
#elif defined(__OpenBSD__) || defined(__OPENBSD)
 
113
# define PLATFORM_ID "OpenBSD"
 
114
 
 
115
#elif defined(__sun) || defined(sun)
 
116
# define PLATFORM_ID "SunOS"
 
117
 
 
118
#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__)
 
119
# define PLATFORM_ID "AIX"
 
120
 
 
121
#elif defined(__sgi) || defined(__sgi__) || defined(_SGI)
 
122
# define PLATFORM_ID "IRIX"
 
123
 
 
124
#elif defined(__hpux) || defined(__hpux__)
 
125
# define PLATFORM_ID "HP-UX"
 
126
 
 
127
#elif defined(__HAIKU) || defined(__HAIKU__) || defined(_HAIKU)
 
128
# define PLATFORM_ID "Haiku"
 
129
/* Haiku also defines __BEOS__ so we must 
 
130
   put it prior to the check for __BEOS__
 
131
*/
 
132
 
 
133
#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS)
 
134
# define PLATFORM_ID "BeOS"
 
135
 
 
136
#elif defined(__QNX__) || defined(__QNXNTO__)
 
137
# define PLATFORM_ID "QNX"
 
138
 
 
139
#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__)
 
140
# define PLATFORM_ID "Tru64"
 
141
 
 
142
#elif defined(__riscos) || defined(__riscos__)
 
143
# define PLATFORM_ID "RISCos"
 
144
 
 
145
#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__)
 
146
# define PLATFORM_ID "SINIX"
 
147
 
 
148
#elif defined(__UNIX_SV__)
 
149
# define PLATFORM_ID "UNIX_SV"
 
150
 
 
151
#elif defined(__bsdos__)
 
152
# define PLATFORM_ID "BSDOS"
 
153
 
 
154
#elif defined(_MPRAS) || defined(MPRAS)
 
155
# define PLATFORM_ID "MP-RAS"
 
156
 
 
157
#elif defined(__osf) || defined(__osf__)
 
158
# define PLATFORM_ID "OSF1"
 
159
 
 
160
#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv)
 
161
# define PLATFORM_ID "SCO_SV"
 
162
 
 
163
#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX)
 
164
# define PLATFORM_ID "ULTRIX"
 
165
 
 
166
#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX)
 
167
# define PLATFORM_ID "Xenix"
 
168
 
 
169
#else /* unknown platform */
 
170
# define PLATFORM_ID ""
 
171
 
 
172
#endif
 
173
 
 
174
/* For windows compilers MSVC and Intel we can determine
 
175
   the architecture of the compiler being used.  This is because
 
176
   the compilers do not have flags that can change the architecture,
 
177
   but rather depend on which compiler is being used
 
178
*/
 
179
#if defined(_WIN32) && defined(_MSC_VER)
 
180
# if defined(_M_IA64)
 
181
#  define ARCHITECTURE_ID "IA64"
 
182
 
 
183
# elif defined(_M_X64) || defined(_M_AMD64)
 
184
#  define ARCHITECTURE_ID "x64" 
 
185
 
 
186
# elif defined(_M_IX86)
 
187
#  define ARCHITECTURE_ID "X86"
 
188
 
 
189
# else /* unknown architecture */
 
190
#  define ARCHITECTURE_ID ""
 
191
# endif
 
192
 
 
193
#else
 
194
#  define ARCHITECTURE_ID ""
 
195
#endif
 
196
 
 
197
/* Construct the string literal in pieces to prevent the source from
 
198
   getting matched.  Store it in a pointer rather than an array
 
199
   because some compilers will just produce instructions to fill the
 
200
   array rather than assigning a pointer to a static array.  */
 
201
char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]";
 
202
char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]";
 
203
 
 
204
 
 
205
 
 
206
/*--------------------------------------------------------------------------*/
 
207
 
 
208
int main(int argc, char* argv[])
 
209
{
 
210
  int require = 0;
 
211
  require += info_compiler[argc];
 
212
  require += info_platform[argc];
 
213
  (void)argv;
 
214
  return require;
 
215
}