VTK
vtkConfigure.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkConfigure.h.in
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
15 #ifndef vtkConfigure_h
16 #define vtkConfigure_h
17 
18 /* This header is configured by VTK's build process. */
19 
20 /*--------------------------------------------------------------------------*/
21 /* Platform Features */
22 
23 /* Byte order. */
24 /* All compilers that support Mac OS X define either __BIG_ENDIAN__ or
25  __LITTLE_ENDIAN__ to match the endianness of the architecture being
26  compiled for. This is not necessarily the same as the architecture of the
27  machine doing the building. In order to support Universal Binaries on
28  Mac OS X, we prefer those defines to decide the endianness.
29  On other platforms we use the result of the TRY_RUN. */
30 #if !defined(__APPLE__)
31 /* #undef VTK_WORDS_BIGENDIAN */
32 #elif defined(__BIG_ENDIAN__)
33 # define VTK_WORDS_BIGENDIAN
34 #endif
35 
36 /* Threading system. */
37 #define VTK_USE_PTHREADS
38 /* #undef VTK_USE_SPROC */
39 /* #undef VTK_HP_PTHREADS */
40 /* #undef VTK_USE_WIN32_THREADS */
41 # define VTK_MAX_THREADS 64
42 
43 /* Atomic operations */
44 #define VTK_HAVE_SYNC_BUILTINS
45 #if defined(WIN32)
46 /* #undef VTK_HAS_INTERLOCKEDADD */
47 #endif
48 
49 /* Size of fundamental data types. */
50 /* Mac OS X uses two data models, ILP32 (in which integers, long integers,
51  and pointers are 32-bit quantities) and LP64 (in which integers are 32-bit
52  quantities and long integers and pointers are 64-bit quantities). In order
53  to support Universal Binaries on Mac OS X, we rely on this knowledge
54  instead of testing the sizes of the building machine.
55  On other platforms we use the result of the TRY_RUN. */
56 #if !defined(__APPLE__)
57 # define VTK_SIZEOF_CHAR 1
58 # define VTK_SIZEOF_SHORT 2
59 # define VTK_SIZEOF_INT 4
60 # define VTK_SIZEOF_LONG 8
61 # define VTK_SIZEOF_FLOAT 4
62 # define VTK_SIZEOF_DOUBLE 8
63 # define VTK_SIZEOF_VOID_P 8
64 #else
65 # define VTK_SIZEOF_CHAR 1
66 # define VTK_SIZEOF_SHORT 2
67 # define VTK_SIZEOF_INT 4
68 # if defined(__LP64__) && __LP64__
69 # define VTK_SIZEOF_LONG 8
70 # define VTK_SIZEOF_VOID_P 8
71 # else
72 # define VTK_SIZEOF_LONG 4
73 # define VTK_SIZEOF_VOID_P 4
74 # endif
75 # define VTK_SIZEOF_FLOAT 4
76 # define VTK_SIZEOF_DOUBLE 8
77 #endif
78 
79 /* Define size of long long and/or __int64 bit integer type only if the type
80  exists. */
81 #if !defined(__APPLE__)
82  #define VTK_SIZEOF_LONG_LONG 8
83 #else
84  #define VTK_SIZEOF_LONG_LONG 8
85 #endif
86 /* #undef VTK_SIZEOF___INT64 */
87 
88 /* Whether types "long long" and "__int64" are enabled. If a type is
89  enabled then it is a unique fundamental type. */
90 #define VTK_TYPE_USE_LONG_LONG
91 /* #undef VTK_TYPE_USE___INT64 */
92 
93 /* Some properties of the available types. */
94 /* #undef VTK_TYPE_SAME_LONG_AND___INT64 */
95 /* #undef VTK_TYPE_SAME_LONG_LONG_AND___INT64 */
96 /* #undef VTK_TYPE_CONVERT_UI64_TO_DOUBLE */
97 
98 /* Whether type "char" is signed (it may be signed or unsigned). */
99 #define VTK_TYPE_CHAR_IS_SIGNED 1
100 
101 /* Compiler features. */
102 /* #undef VTK_NO_EXPLICIT_TEMPLATE_INSTANTIATION */
103 /* #undef VTK_NO_FULL_TEMPLATE_SPECIALIZATION */
104 /* #undef VTK_NO_ANSI_STRING_STREAM */
105 #define VTK_ISTREAM_SUPPORTS_LONG_LONG
106 #define VTK_OSTREAM_SUPPORTS_LONG_LONG
107 #define VTK_STREAM_EOF_SEVERITY 1
108 #define VTK_HAVE_GETSOCKNAME_WITH_SOCKLEN_T
109 #define VTK_HAVE_SO_REUSEADDR
110 
111 /* Whether we require large files support. */
112 #define VTK_REQUIRE_LARGE_FILE_SUPPORT
113 
114 /* Whether reverse const iterator's have comparison operators. */
115 #define VTK_CONST_REVERSE_ITERATOR_COMPARISON
116 
117 /*--------------------------------------------------------------------------*/
118 /* VTK Platform Configuration */
119 
120 /* Whether the target platform supports shared libraries. */
121 /* #undef VTK_TARGET_SUPPORTS_SHARED_LIBS */
122 
123 /* Whether we are building shared libraries. */
124 #define VTK_BUILD_SHARED_LIBS
125 
126 /* Whether vtkIdType is a 64-bit integer type (or a 32-bit integer type). */
127 #define VTK_USE_64BIT_IDS
128 
129 #include "vtkVersionMacros.h" // removed by VTK_LEGACY_REMOVE
130 
131 /* C++ compiler used. */
132 #define VTK_CXX_COMPILER "/usr/lib64/ccache/c++"
133 
134 /* Compatibility settings. */
135 /* #undef VTK_LEGACY_REMOVE */
136 /* #undef VTK_LEGACY_SILENT */
137 
138 /* Debug leaks support. */
139 /* #undef VTK_DEBUG_LEAKS */
140 
141 /* Should all New methods use the object factory override. */
142 /* #undef VTK_ALL_NEW_OBJECT_FACTORY */
143 
144 /*--------------------------------------------------------------------------*/
145 /* Setup VTK based on platform features and configuration. */
146 
147 /* We now always use standard streams. */
148 #ifndef VTK_LEGACY_REMOVE
149 # define VTK_USE_ANSI_STDLIB
150 #endif
151 
152 /* Setup vtkstd, a portable namespace for std. */
153 #ifndef VTK_LEGACY_REMOVE
154 # define vtkstd std
155 #endif
156 
157 /* Define a "vtkstd_bool" for backwards compatibility. Only use bool
158  if this file is included by a c++ file. */
159 #ifndef VTK_LEGACY_REMOVE
160 # if defined(__cplusplus)
161  typedef bool vtkstd_bool;
162 # else
163  typedef int vtkstd_bool;
164 # endif
165 #endif
166 
167 /* Define a macro to help define template specializations. Skip if
168  compiling a windows resource file because the resource compiler
169  warns about truncating the long symbol. */
170 #if !defined(RC_INVOKED)
171 # if defined(VTK_NO_FULL_TEMPLATE_SPECIALIZATION)
172 # define VTK_TEMPLATE_SPECIALIZE
173 # else
174 # define VTK_TEMPLATE_SPECIALIZE template <>
175 # endif
176 #endif
177 
178 /* Provide missing streaming operators. */
179 #if defined(VTK_SIZEOF_LONG_LONG)
180 # if !defined(VTK_OSTREAM_SUPPORTS_LONG_LONG)
181 # define VTK_IOSTREAM_NEED_OPERATORS_LL
182 # elif !defined(VTK_ISTREAM_SUPPORTS_LONG_LONG)
183 # define VTK_IOSTREAM_NEED_OPERATORS_LL
184 # endif
185 # if defined(VTK_IOSTREAM_NEED_OPERATORS_LL)
186  typedef long long vtkIOStreamSLL;
187  typedef unsigned long long vtkIOStreamULL;
188 # endif
189 #endif
190 
191 /* The maximum length of a file name in bytes including the
192  * terminating null.
193  */
194 #if defined(PATH_MAX) // Usually defined on Windows
195 # define VTK_MAXPATH PATH_MAX
196 #elif defined(MAXPATHLEN) // Usually defined on linux
197 # define VTK_MAXPATH MAXPATHLEN
198 #else
199 # define VTK_MAXPATH 32767 // Possible with Windows "extended paths"
200 #endif
201 
202 #endif
int vtkstd_bool
Definition: vtkConfigure.h:163