|
1 /* |
|
2 * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). |
|
3 * All rights reserved. |
|
4 * This component and the accompanying materials are made available |
|
5 * under the terms of "Eclipse Public License v1.0" |
|
6 * which accompanies this distribution, and is available |
|
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
|
8 * |
|
9 * Initial Contributors: |
|
10 * Nokia Corporation - initial contribution. |
|
11 * |
|
12 * Contributors: |
|
13 * |
|
14 * Description: |
|
15 * |
|
16 */ |
|
17 /* |
|
18 * This file defines site configuration. |
|
19 */ |
|
20 |
|
21 /* |
|
22 * _STLP_NO_THREADS: if defined, STLport don't use any |
|
23 * multithreading support. Synonym is _NOTHREADS |
|
24 */ |
|
25 /* |
|
26 #define _NOTHREADS |
|
27 #define _STLP_NO_THREADS |
|
28 */ |
|
29 |
|
30 /* _PTHREADS: if defined, use POSIX threads for multithreading support. */ |
|
31 /* |
|
32 #define _PTHREADS |
|
33 */ |
|
34 |
|
35 /* compatibility section |
|
36 */ |
|
37 |
|
38 #if (defined (_STLP_NOTHREADS) || defined (_STLP_NO_THREADS) || defined (NOTHREADS)) |
|
39 # if !defined (_NOTHREADS) |
|
40 # define _NOTHREADS |
|
41 # endif |
|
42 # if !defined (_STLP_NO_THREADS) |
|
43 # define _STLP_NO_THREADS |
|
44 # endif |
|
45 #endif |
|
46 |
|
47 #if !defined(_STLP_USE_DYNAMIC_LIB) && !defined(_STLP_USE_STATIC_LIB) |
|
48 /* |
|
49 * Turn _STLP_USE_DYNAMIC_LIB to enforce use of .dll version of STLport library. |
|
50 * NOTE: please do that only if you know what you are doing! |
|
51 * Changing default will require you to change makefiles in "build" accordingly |
|
52 * and to rebuild STLPort library! |
|
53 * On UNIX, this has no effect, see build/lib/README for make tags. |
|
54 * See STLport configuration file (build/lib/configure.bat) for help in building |
|
55 * the require library versions. |
|
56 */ |
|
57 /* |
|
58 #define _STLP_USE_DYNAMIC_LIB |
|
59 */ |
|
60 |
|
61 /* |
|
62 * Turn _STLP_USE_STATIC_LIB to enforce use of static version of STLport library. |
|
63 * NOTE: please do that only if you know what you are doing! |
|
64 * Changing default will require you to change makefile in "build" accordingly |
|
65 * and to rebuild STLPort library! |
|
66 * On UNIX, this has no effect, see build/lib/README for make tags. |
|
67 * See STLport configuration file (build/lib/configure.bat) for help in building |
|
68 * the require library versions. |
|
69 */ |
|
70 /* |
|
71 #define _STLP_USE_STATIC_LIB |
|
72 */ |
|
73 #endif |
|
74 |
|
75 /* |
|
76 * Signal STLport that we are using the cygwin distrib with the -mno-cygwin option. |
|
77 * This is similar to a mingw environment except that relative path to native headers |
|
78 * is different, this is why we need this macro. |
|
79 */ |
|
80 /* |
|
81 #define _STLP_NO_CYGWIN |
|
82 */ |
|
83 |
|
84 /* |
|
85 * Edit relative path below (or put full path) to get native |
|
86 * compiler vendor's headers included. Default is "../include" |
|
87 * for _STLP_NATIVE_INCLUDE_PATH, default for other macros is |
|
88 * _STLP_NATIVE_INCLUDE_PATH. |
|
89 * Hint: never install STLport in the directory that ends with "include" |
|
90 */ |
|
91 /* |
|
92 #undef _STLP_NATIVE_INCLUDE_PATH |
|
93 #define _STLP_NATIVE_INCLUDE_PATH ../include |
|
94 */ |
|
95 /* same for C library headers like <cstring> */ |
|
96 /* |
|
97 #undef _STLP_NATIVE_CPP_C_INCLUDE_PATH |
|
98 #define _STLP_NATIVE_CPP_C_INCLUDE_PATH _STLP_NATIVE_INCLUDE_PATH |
|
99 */ |
|
100 /* same for C headers like <string.h> */ |
|
101 /* |
|
102 #undef _STLP_NATIVE_C_INCLUDE_PATH |
|
103 #define _STLP_NATIVE_C_INCLUDE_PATH _STLP_NATIVE_INCLUDE_PATH |
|
104 */ |
|
105 /* Some compilers locate basic C++ runtime support headers (<new>, <typeinfo>, <exception>) in separate directory */ |
|
106 /* |
|
107 #undef _STLP_NATIVE_CPP_RUNTIME_INCLUDE_PATH |
|
108 #define _STLP_NATIVE_CPP_RUNTIME_INCLUDE_PATH _STLP_NATIVE_INCLUDE_PATH |
|
109 */ |
|
110 |
|
111 /* |
|
112 * If namespases available, STLport use own namespace (and masquerade |
|
113 * it as std). Disable own namespace may cause undefined behaviour. |
|
114 */ |
|
115 /* |
|
116 #define _STLP_NO_OWN_NAMESPACE 1 |
|
117 */ |
|
118 |
|
119 /* |
|
120 * Uncomment _STLP_LEAKS_PEDANTIC to force deallocation of ALL allocated |
|
121 * memory chunks. Normally not required. But if you worry about quazi-leaks |
|
122 * (may be reported by some leaks detection tools), use |
|
123 * _STLP_LEAKS_PEDANTIC. It should be used with _STLP_USE_NEWALLOC or |
|
124 * _STLP_USE_MALLOC (see below), the default node_alloc allocator also clean |
|
125 * its internal memory pool but only if STLport is used as a dynamic library |
|
126 * under Win32 (using MSVC like compilers). |
|
127 */ |
|
128 /* |
|
129 #define _STLP_LEAKS_PEDANTIC 1 |
|
130 */ |
|
131 |
|
132 /* |
|
133 * Uncomment _STLP_USE_NEWALLOC to force allocator<T> to use plain "new" |
|
134 * instead of STLport optimized node allocator engine. |
|
135 */ |
|
136 /* |
|
137 #define _STLP_USE_NEWALLOC 1 |
|
138 */ |
|
139 |
|
140 /* |
|
141 * Uncomment _STLP_USE_MALLOC to force allocator<T> to use plain "malloc" |
|
142 * instead of STLport optimized node allocator engine. |
|
143 */ |
|
144 /* |
|
145 #define _STLP_USE_MALLOC 1 |
|
146 */ |
|
147 |
|
148 /* |
|
149 * Uncomment _STLP_USE_PERTHREAD_ALLOC to force allocator<T> to use |
|
150 * a specific implementation targetting the massively multi-threaded |
|
151 * environment. The implementation is based on the POSIX pthread |
|
152 * interface. |
|
153 */ |
|
154 /* |
|
155 #define _STLP_USE_PERTHREAD_ALLOC 1 |
|
156 */ |
|
157 |
|
158 /* |
|
159 * Set _STLP_DEBUG_ALLOC to use allocators that perform memory debugging, |
|
160 * such as padding/checking for memory consistency |
|
161 */ |
|
162 /* |
|
163 #define _STLP_DEBUG_ALLOC 1 |
|
164 */ |
|
165 |
|
166 /* |
|
167 * For compiler not supporting partial template specialization or ordering of |
|
168 * template functions STLport implement a workaround based on inheritance |
|
169 * detection. This inheritance can introduce trouble in client code when |
|
170 * a user class derived a STL container (which is not advised as STL containers |
|
171 * do not have virtual destructors). To disable this workaround turn this macro on: |
|
172 */ |
|
173 /* |
|
174 #define _STLP_DONT_USE_PARTIAL_SPEC_WRKD 1 |
|
175 */ |
|
176 |
|
177 /* |
|
178 * Uncomment this to force all debug diagnostic to be directed through a |
|
179 * user-defined global function: |
|
180 * void __stl_debug_message(const char * format_str, ...) |
|
181 * instead of predefined STLport routine. |
|
182 * This allows you to take control of debug message output. |
|
183 * Default routine calls fprintf(stderr,...) |
|
184 * Note : If you set this macro, you must supply __stl_debug_message |
|
185 * function definition somewhere. |
|
186 */ |
|
187 /* |
|
188 #define _STLP_DEBUG_MESSAGE 1 |
|
189 */ |
|
190 |
|
191 /* |
|
192 * Uncomment this to force all failed assertions to be executed through |
|
193 * user-defined global function: |
|
194 * void __stl_debug_terminate(void). This allows |
|
195 * you to take control of assertion behaviour for debugging purposes. |
|
196 * Default routine calls _STLP_ABORT(). |
|
197 * Note : If you set this macro, you must supply __stl_debug_terminate |
|
198 * function definition somewhere. |
|
199 */ |
|
200 /* |
|
201 #define _STLP_DEBUG_TERMINATE 1 |
|
202 */ |
|
203 |
|
204 /* |
|
205 * Uncomment that to disable exception handling code |
|
206 */ |
|
207 /* |
|
208 #define _STLP_DONT_USE_EXCEPTIONS 1 |
|
209 */ |
|
210 |
|
211 /* |
|
212 * _STLP_NO_NAMESPACES: if defined, don't put the library in namespace |
|
213 * stlport:: or std::, even if the compiler supports namespaces |
|
214 */ |
|
215 /* |
|
216 #define _STLP_NO_NAMESPACES 1 |
|
217 */ |
|
218 |
|
219 /*========================================================== |
|
220 * Compatibility section |
|
221 *==========================================================*/ |
|
222 |
|
223 /* |
|
224 * Use abbreviated class names for linker benefit (don't affect interface). |
|
225 * This option is obsolete, but should work in this release. |
|
226 * |
|
227 */ |
|
228 /* |
|
229 #define _STLP_USE_ABBREVS |
|
230 */ |
|
231 |
|
232 /* |
|
233 * This definition precludes STLport reverse_iterator to be compatible with |
|
234 * other parts of MSVC library. (With partial specialization, it just |
|
235 * has no effect). |
|
236 * Use it _ONLY_ if you use SGI-style reverse_iterator<> template explicitly |
|
237 */ |
|
238 /* |
|
239 #define _STLP_NO_MSVC50_COMPATIBILITY 1 |
|
240 */ |
|
241 |
|
242 /* |
|
243 * _STLP_USE_RAW_SGI_ALLOCATORS is a hook so that users can disable use of |
|
244 * allocator<T> as default parameter for containers, and use SGI |
|
245 * raw allocators as default ones, without having to edit library headers. |
|
246 * Use of this macro is strongly discouraged. |
|
247 */ |
|
248 /* |
|
249 #define _STLP_USE_RAW_SGI_ALLOCATORS 1 |
|
250 */ |
|
251 |
|
252 /* |
|
253 * Use obsolete overloaded template functions iterator_category(), value_type(), distance_type() |
|
254 * for querying iterator properties. Please note those names are non-standard and are not guaranteed |
|
255 * to be used by every implementation. However, this setting is on by default when partial specialization |
|
256 * is not implemented in the compiler and cannot be simulated (only if _STLP_NO_ANACHRONISMS is not set). |
|
257 * Use of those interfaces for user-defined iterators is strongly discouraged: |
|
258 * please use public inheritance from iterator<> template to achieve desired effect. |
|
259 * Second form is to disable old-style queries in any case. |
|
260 */ |
|
261 /* |
|
262 #define _STLP_USE_OLD_HP_ITERATOR_QUERIES |
|
263 #define _STLP_NO_OLD_HP_ITERATOR_QUERIES |
|
264 */ |
|
265 |
|
266 |
|
267 /* |
|
268 * On systems with support of large files (_LARGEFILE_SOURCE, |
|
269 * _LARGEFILE64_SOURCE defined) we will use 64-bit file offset, even if |
|
270 * __USE_FILE_OFFSET64 or _FILE_OFFSET_BITS not defined or _FILE_OFFSET_BITS |
|
271 * less than 64. In the last case sizeof(std::streamoff) may not be equal to |
|
272 * sizeof(off_t), if you want to force equal size of off_t and streamoff, |
|
273 * uncomment macro below. But pay attention, this has influence on libstlport |
|
274 * and in future usage it may cause conflict with defined _FILE_OFFSET_BITS macro. |
|
275 */ |
|
276 |
|
277 /* |
|
278 #define _STLP_USE_DEFAULT_FILE_OFFSET |
|
279 */ |
|
280 |
|
281 /*==========================================================================*/ |
|
282 |
|
283 /* This section contains swithes which should be off by default, |
|
284 * but so few compilers would have it undefined, so that we set them here, |
|
285 * with the option to be turned off later in compiler-specific file |
|
286 */ |
|
287 |
|
288 #define _STLP_NO_UNCAUGHT_EXCEPT_SUPPORT |
|
289 #define _STLP_NO_UNEXPECTED_EXCEPT_SUPPORT |
|
290 |
|
291 /* |
|
292 Local Variables: |
|
293 mode:C++ |
|
294 End: |
|
295 */ |