forked from Kitware/VTK
-
Notifications
You must be signed in to change notification settings - Fork 1
/
vtkConfigure.h.in
248 lines (204 loc) · 8.32 KB
/
vtkConfigure.h.in
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
/*=========================================================================
Program: Visualization Toolkit
Module: vtkConfigure.h.in
Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
All rights reserved.
See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
This software is distributed WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. See the above copyright notice for more information.
=========================================================================*/
#ifndef __vtkConfigure_h
#define __vtkConfigure_h
/* This header is configured by VTK's build process. */
/*--------------------------------------------------------------------------*/
/* Platform Features */
/* Byte order. */
/* All compilers that support Mac OS X define either __BIG_ENDIAN__ or
__LITTLE_ENDIAN__ to match the endianness of the architecture being
compiled for. This is not necessarily the same as the architecture of the
machine doing the building. In order to support Universal Binaries on
Mac OS X, we prefer those defines to decide the endianness.
On other platforms we use the result of the TRY_RUN. */
#if !defined(__APPLE__)
#cmakedefine VTK_WORDS_BIGENDIAN
#elif defined(__BIG_ENDIAN__)
# define VTK_WORDS_BIGENDIAN
#endif
/* Threading system. */
#cmakedefine VTK_USE_PTHREADS
#cmakedefine VTK_USE_SPROC
#cmakedefine VTK_HP_PTHREADS
#cmakedefine VTK_USE_WIN32_THREADS
/* Size of fundamental data types. */
/* Mac OS X uses two data models, ILP32 (in which integers, long integers,
and pointers are 32-bit quantities) and LP64 (in which integers are 32-bit
quantities and long integers and pointers are 64-bit quantities). In order
to support Universal Binaries on Mac OS X, we rely on this knowledge
instead of testing the sizes of the building machine.
On other platforms we use the result of the TRY_RUN. */
#if !defined(__APPLE__)
# define VTK_SIZEOF_CHAR @VTK_SIZEOF_CHAR@
# define VTK_SIZEOF_SHORT @VTK_SIZEOF_SHORT@
# define VTK_SIZEOF_INT @VTK_SIZEOF_INT@
# define VTK_SIZEOF_LONG @VTK_SIZEOF_LONG@
# define VTK_SIZEOF_FLOAT @VTK_SIZEOF_FLOAT@
# define VTK_SIZEOF_DOUBLE @VTK_SIZEOF_DOUBLE@
# define VTK_SIZEOF_VOID_P @VTK_SIZEOF_VOID_P@
#else
# define VTK_SIZEOF_CHAR 1
# define VTK_SIZEOF_SHORT 2
# define VTK_SIZEOF_INT 4
# if defined(__LP64__) && __LP64__
# define VTK_SIZEOF_LONG 8
# define VTK_SIZEOF_VOID_P 8
# else
# define VTK_SIZEOF_LONG 4
# define VTK_SIZEOF_VOID_P 4
# endif
# define VTK_SIZEOF_FLOAT 4
# define VTK_SIZEOF_DOUBLE 8
#endif
/* Define size of long long and/or __int64 bit integer type only if the type
exists. */
#if !defined(__APPLE__)
#cmakedefine VTK_SIZEOF_LONG_LONG @VTK_SIZEOF_LONG_LONG@
#else
#cmakedefine VTK_SIZEOF_LONG_LONG 8
#endif
#cmakedefine VTK_SIZEOF___INT64 @VTK_SIZEOF___INT64@
/* Whether types "long long" and "__int64" are enabled. If a type is
enabled then it is a unique fundamental type. */
#cmakedefine VTK_TYPE_USE_LONG_LONG
#cmakedefine VTK_TYPE_USE___INT64
/* Some properties of the available types. */
#cmakedefine VTK_TYPE_SAME_LONG_AND___INT64
#cmakedefine VTK_TYPE_SAME_LONG_LONG_AND___INT64
#cmakedefine VTK_TYPE_CONVERT_UI64_TO_DOUBLE
/* Whether type "char" is signed (it may be signed or unsigned). */
#define VTK_TYPE_CHAR_IS_SIGNED @VTK_TYPE_CHAR_IS_SIGNED@
/* Compiler features. */
#cmakedefine VTK_NO_EXPLICIT_TEMPLATE_INSTANTIATION
#cmakedefine VTK_NO_FULL_TEMPLATE_SPECIALIZATION
#cmakedefine VTK_NO_ANSI_STRING_STREAM
#cmakedefine VTK_NO_STD_NAMESPACE
#cmakedefine VTK_NO_FOR_SCOPE
#cmakedefine VTK_COMPILER_HAS_BOOL
#cmakedefine VTK_ISTREAM_SUPPORTS_LONG_LONG
#cmakedefine VTK_OSTREAM_SUPPORTS_LONG_LONG
#define VTK_STREAM_EOF_SEVERITY @VTK_STREAM_EOF_SEVERITY@
#cmakedefine VTK_HAVE_GETSOCKNAME_WITH_SOCKLEN_T
#cmakedefine VTK_HAVE_SO_REUSEADDR
/* Whether we require large files support. */
#cmakedefine VTK_REQUIRE_LARGE_FILE_SUPPORT
/*--------------------------------------------------------------------------*/
/* VTK Platform Configuration */
/* Whether the target platform supports shared libraries. */
#cmakedefine VTK_TARGET_SUPPORTS_SHARED_LIBS
/* Whether we are building shared libraries. */
#cmakedefine VTK_BUILD_SHARED_LIBS
/* Whether vtkIdType is a 64-bit integer type (or a 32-bit integer type). */
#cmakedefine VTK_USE_64BIT_IDS
/* Whether we are using ANSI C++ streams (or old-style streams). */
#cmakedefine VTK_USE_ANSI_STDLIB
/* Whether VTK was built to support Carbon or Cocoa on the Mac. */
#cmakedefine VTK_USE_CARBON
#cmakedefine VTK_USE_COCOA
/* Whether we are linking to Tcl/Tk statically. */
#cmakedefine VTK_TCL_TK_STATIC
/* Whether Tk widgets are NOT initialized when vtkRendering loads. */
#cmakedefine VTK_USE_TK
/* Whether the Tcl/Tk support files are copied to the build dir */
#cmakedefine VTK_TCL_TK_COPY_SUPPORT_LIBRARY
/* Configure internal Tk headers. */
#ifdef VTK_USE_CARBON
# define USE_NON_CONST
# define MAC_OSX_TK
#endif
/* Whether the Boost library is being used */
#cmakedefine VTK_USE_BOOST
/* Whether Gnu R can be used */
#cmakedefine VTK_USE_GNU_R
/* Whether the Qt files are available */
#cmakedefine VTK_USE_QT
/* Whether N-way arrays are being used */
#cmakedefine VTK_USE_N_WAY_ARRAYS
/* E.g. on BlueGene and Cray there is no multithreading */
#cmakedefine VTK_NO_PYTHON_THREADS
/* Whether the real python debug library has been provided. */
#cmakedefine VTK_WINDOWS_PYTHON_DEBUGGABLE
/*--------------------------------------------------------------------------*/
/* VTK Versioning */
/* Version number. */
#define VTK_MAJOR_VERSION @VTK_MAJOR_VERSION@
#define VTK_MINOR_VERSION @VTK_MINOR_VERSION@
#define VTK_BUILD_VERSION @VTK_BUILD_VERSION@
#define VTK_VERSION "@VTK_VERSION@"
/* C++ compiler used. */
#define VTK_CXX_COMPILER "@CMAKE_CXX_COMPILER@"
/* Compatibility settings. */
#cmakedefine VTK_LEGACY_REMOVE
#cmakedefine VTK_LEGACY_SILENT
/*--------------------------------------------------------------------------*/
/* Setup VTK based on platform features and configuration. */
/* Setup vtkstd, a portable namespace for std. */
#ifndef VTK_NO_STD_NAMESPACE
# define vtkstd std
#else
# define vtkstd
#endif
/* Define a "vtkstd_bool" type. This should be used as the
return type of comparison operators to keep STL happy on all
platforms. It should not be used elsewhere. Only use bool
if this file is included by a c++ file. */
#if defined(VTK_COMPILER_HAS_BOOL) && defined(__cplusplus)
typedef bool vtkstd_bool;
#else
typedef int vtkstd_bool;
#endif
/* Define a macro to help define template specializations. Skip if
compiling a windows resource file because the resource compiler
warns about truncating the long symbol. */
#if !defined(RC_INVOKED)
# if defined(VTK_NO_FULL_TEMPLATE_SPECIALIZATION)
# define VTK_TEMPLATE_SPECIALIZE
# else
# define VTK_TEMPLATE_SPECIALIZE template <>
# endif
#endif
#cmakedefine VTK_USE_FOR_SCOPE_WORKAROUND
/* Use the common for-scope work-around when compiling a source in VTK. */
/* External Projects can set VTK_USE_FOR_SCOPE_WORKAROUND to get this "fix" */
#if (defined(VTK_IN_VTK) && !defined(VTK_NO_WORKAROUND_FOR_SCOPE)) || defined(VTK_USE_FOR_SCOPE_WORKAROUND)
# define VTK_WORKAROUND_FOR_SCOPE
#endif
#if defined(VTK_NO_FOR_SCOPE) && defined(VTK_WORKAROUND_FOR_SCOPE)
# ifndef for
# define for if(0) {} else for
# if defined(_MSC_VER)
# pragma warning (disable: 4127) /* conditional expression is constant */
# endif
# endif
#endif
/* Provide missing streaming operators. */
#if defined(VTK_SIZEOF_LONG_LONG)
# if !defined(VTK_OSTREAM_SUPPORTS_LONG_LONG)
# define VTK_IOSTREAM_NEED_OPERATORS_LL
# elif !defined(VTK_ISTREAM_SUPPORTS_LONG_LONG)
# define VTK_IOSTREAM_NEED_OPERATORS_LL
# endif
# if defined(VTK_IOSTREAM_NEED_OPERATORS_LL)
typedef long long vtkIOStreamSLL;
typedef unsigned long long vtkIOStreamULL;
# endif
#elif defined(VTK_SIZEOF___INT64)
# if defined(_MSC_VER) && (_MSC_VER < 1300)
# define VTK_IOSTREAM_NEED_OPERATORS_LL
typedef __int64 vtkIOStreamSLL;
typedef unsigned __int64 vtkIOStreamULL;
# endif
#endif
/* Set the whether we have UINTPTR_T defined in support of the GNU R interface */
#cmakedefine HAVE_VTK_UINTPTR_T
#define VTK_R_HOME "@VTK_R_HOME@"
#endif