|
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 /* STLport configuration file |
|
18 * It is internal STLport header - DO NOT include it directly |
|
19 */ |
|
20 |
|
21 #define _STLP_COMPILER "gcc" |
|
22 |
|
23 /* Systems having GLIBC installed have different traits */ |
|
24 #if defined (__linux__) |
|
25 # ifndef _STLP_USE_GLIBC |
|
26 # define _STLP_USE_GLIBC 1 |
|
27 # endif |
|
28 # if defined (__UCLIBC__) && !defined (_STLP_USE_UCLIBC) |
|
29 # define _STLP_USE_UCLIBC 1 |
|
30 # endif |
|
31 #endif |
|
32 |
|
33 #if defined (__CYGWIN__) && \ |
|
34 (__GNUC__ >= 3) && (__GNUC_MINOR__ >= 3) && !defined (_GLIBCPP_USE_C99) |
|
35 # define _STLP_NO_VENDOR_MATH_L |
|
36 # define _STLP_NO_VENDOR_STDLIB_L |
|
37 #endif |
|
38 |
|
39 #if (__GNUC__ < 3) |
|
40 # define _STLP_NO_VENDOR_STDLIB_L |
|
41 #endif |
|
42 |
|
43 #if defined (__SYMBIAN32__) && !defined (_STLP_NO_VENDOR_STDLIB_L) |
|
44 //The following macro is defined so that the vendor's APIs dont get picked. Rather the ones from PIPS are used. |
|
45 # define _STLP_NO_VENDOR_STDLIB_L |
|
46 #endif // (__SYMBIAN32__) && !defined (_STLP_NO_VENDOR_STDLIB_L) |
|
47 |
|
48 /* We guess if we are using the cygwin distrib that has a special include schema. |
|
49 * There is no way to distinguish a cygwin distrib used in no-cygwin mode from a |
|
50 * mingw install. We are forced to use a configuration option |
|
51 */ |
|
52 #if !defined (_STLP_NATIVE_INCLUDE_PATH) && \ |
|
53 (defined (__CYGWIN__) || defined (__MINGW32__) && defined (_STLP_NO_CYGWIN)) |
|
54 # if (__GNUC__ > 3) || ((__GNUC__ == 3) && (__GNUC_MINOR__ > 3)) |
|
55 # define _STLP_NATIVE_INCLUDE_PATH ../../../__GNUC__.__GNUC_MINOR__.__GNUC_PATCHLEVEL__/include/c++ |
|
56 # elif defined (_STLP_NO_CYGWIN) |
|
57 # define _STLP_NATIVE_INCLUDE_PATH ../mingw |
|
58 /*# else |
|
59 * Before version gcc 3.4, the cygwin package include path was conform to the |
|
60 * GNU convention which is set later in this file. |
|
61 */ |
|
62 # endif |
|
63 #endif |
|
64 |
|
65 #if (__GNUC__ < 3) || ((__GNUC__ == 3) && (__GNUC_MINOR__ < 4)) |
|
66 /* define for gcc versions before 3.4.0. */ |
|
67 # define _STLP_NO_MEMBER_TEMPLATE_KEYWORD |
|
68 #endif |
|
69 |
|
70 /* azov: gcc on lynx have a bug that causes internal |
|
71 * compiler errors when compiling STLport with namespaces turned on. |
|
72 * When the compiler gets better - comment out _STLP_HAS_NO_NAMESPACES |
|
73 */ |
|
74 #if defined (__Lynx__) && (__GNUC__ < 3) |
|
75 # define _STLP_HAS_NO_NAMESPACES 1 |
|
76 # define _STLP_NO_STATIC_TEMPLATE_DATA 1 |
|
77 /* turn off useless warning about including system headers */ |
|
78 # define __NO_INCLUDE_WARN__ 1 |
|
79 #endif |
|
80 |
|
81 /* Tru64 Unix, AIX, HP : gcc there by default uses native ld and hence cannot auto-instantiate |
|
82 static template data. If you are using GNU ld, please say so in user_config.h header */ |
|
83 #if (__GNUC__ < 3) && !defined(_STLP_GCC_USES_GNU_LD) && \ |
|
84 ((defined (__osf__) && defined (__alpha__)) || defined (_AIX) || defined (__hpux) || defined(__amigaos__) ) |
|
85 # define _STLP_NO_STATIC_TEMPLATE_DATA |
|
86 #endif |
|
87 |
|
88 #if !defined (_REENTRANT) && (defined (_THREAD_SAFE) || \ |
|
89 (defined (__OpenBSD__) && defined (_POSIX_THREADS)) || \ |
|
90 (defined (__MINGW32__) && defined (_MT))) |
|
91 # define _REENTRANT |
|
92 #endif |
|
93 |
|
94 #if defined (__DJGPP) |
|
95 # define _STLP_RAND48 1 |
|
96 # define _NOTHREADS 1 |
|
97 # undef _PTHREADS |
|
98 # define _STLP_LITTLE_ENDIAN |
|
99 #endif |
|
100 |
|
101 #ifdef __SYMBIAN32__ |
|
102 # if !defined(_STLP_LITTLE_ENDIAN) |
|
103 # define _STLP_LITTLE_ENDIAN |
|
104 # endif |
|
105 #endif |
|
106 #if defined (__MINGW32__) && !defined (__SYMBIAN32__) |
|
107 /* Mingw32, egcs compiler using the Microsoft C runtime */ |
|
108 # define _STLP_VENDOR_GLOBAL_CSTD |
|
109 # undef _STLP_NO_DRAND48 |
|
110 # define _STLP_NO_DRAND48 |
|
111 # define _STLP_CALL |
|
112 |
|
113 # if defined (_STLP_NEW_PLATFORM_SDK) |
|
114 /* For the moment the Windows SDK coming with Mingw still mimik the old platform SDK. */ |
|
115 # undef _STLP_NEW_PLATFORM_SDK |
|
116 # endif |
|
117 #endif /* __MINGW32__ */ |
|
118 |
|
119 #if defined (__CYGWIN__) || defined (__MINGW32__) && !defined(__SYMBIAN32__) |
|
120 # if !defined (_STLP_USE_STATIC_LIB) |
|
121 # define _STLP_USE_DECLSPEC 1 |
|
122 # if !defined (_STLP_USE_DYNAMIC_LIB) |
|
123 # define _STLP_USE_DYNAMIC_LIB |
|
124 # endif |
|
125 # define _STLP_EXPORT_DECLSPEC __declspec(dllexport) |
|
126 # define _STLP_CLASS_EXPORT_DECLSPEC __declspec(dllexport) |
|
127 # define _STLP_CLASS_IMPORT_DECLSPEC __declspec(dllimport) |
|
128 # endif |
|
129 /* The following is defined independently of _STLP_USE_STATIC_LIB because it is also |
|
130 * used to import symbols from PSDK under MinGW |
|
131 */ |
|
132 # define _STLP_IMPORT_DECLSPEC __declspec(dllimport) |
|
133 #endif |
|
134 |
|
135 #if !defined (__SYMBIAN32__) && (defined (__CYGWIN__) || defined (__MINGW32__) || !(defined (_STLP_USE_GLIBC) || defined (__sun) || defined(__APPLE__))) |
|
136 # if !defined (__MINGW32__) && !defined (__CYGWIN__) |
|
137 # define _STLP_NO_NATIVE_MBSTATE_T 1 |
|
138 # endif |
|
139 # if !defined (__MINGW32__) || (__GNUC__ < 3) || (__GNUC__ == 3) && (__GNUC_MINOR__ < 4) |
|
140 # define _STLP_NO_NATIVE_WIDE_FUNCTIONS 1 |
|
141 # endif |
|
142 # define _STLP_NO_NATIVE_WIDE_STREAMS 1 |
|
143 #endif |
|
144 |
|
145 #define _STLP_NORETURN_FUNCTION __attribute__((noreturn)) |
|
146 |
|
147 /* Mac OS X is a little different with namespaces and cannot instantiate |
|
148 * static data members in template classes */ |
|
149 #if defined (__APPLE__) |
|
150 # if ((__GNUC__ < 3) || ((__GNUC__ == 3) && (__GNUC_MINOR__ < 3))) |
|
151 /* Mac OS X is missing a required typedef and standard macro */ |
|
152 typedef unsigned int wint_t; |
|
153 # endif |
|
154 |
|
155 # define __unix |
|
156 |
|
157 # if (__GNUC__ < 3) |
|
158 |
|
159 /* Mac OS X needs one and only one source file to initialize all static data |
|
160 * members in template classes. Only one source file in an executable or |
|
161 * library can declare instances for such data members, otherwise duplicate |
|
162 * symbols will be generated. */ |
|
163 |
|
164 # define _STLP_NO_STATIC_TEMPLATE_DATA |
|
165 # define _STLP_STATIC_CONST_INIT_BUG 1 |
|
166 # define _STLP_STATIC_TEMPLATE_DATA 0 |
|
167 # define _STLP_WEAK_ATTRIBUTE 1 |
|
168 /* Workaround for the broken Mac OS X C++ preprocessor which cannot handle |
|
169 * parameterized macros in #include statements */ |
|
170 # define _STLP_NATIVE_HEADER(header) <../g++/##header##> |
|
171 # define _STLP_NATIVE_C_HEADER(header) <../include/##header##> |
|
172 # define _STLP_NATIVE_CPP_C_HEADER(header) <../g++/##header##> |
|
173 # define _STLP_NATIVE_OLD_STREAMS_HEADER(header) <../g++/##header##> |
|
174 # define _STLP_NATIVE_CPP_RUNTIME_HEADER(header) <../g++/##header##> |
|
175 # endif /* __GNUC__ < 3 */ |
|
176 |
|
177 # define _STLP_NO_LONG_DOUBLE |
|
178 |
|
179 /* Mac OS X needs all "::" scope references to be "std::" */ |
|
180 # define _STLP_USE_NEW_C_HEADERS |
|
181 |
|
182 # define _STLP_NO_VENDOR_STDLIB_L |
|
183 |
|
184 #endif /* __APPLE__ */ |
|
185 |
|
186 |
|
187 #if defined(__BEOS__) && defined(__INTEL__) |
|
188 # define _STLP_NATIVE_HEADER(header) <../stlport/beos/##header##> |
|
189 # define _STLP_NATIVE_C_HEADER(header) <../stlport/beos/##header##> |
|
190 # define _STLP_NATIVE_CPP_C_HEADER(header) <../stlport/beos/##header##> |
|
191 # define _STLP_NATIVE_OLD_STREAMS_HEADER(header) <../stlport/beos/##header##> |
|
192 # define _STLP_NATIVE_CPP_RUNTIME_HEADER(header) <../stlport/beos/##header##> |
|
193 # define _STLP_NO_NATIVE_WIDE_FUNCTIONS 1 |
|
194 # define _STLP_NO_NATIVE_WIDE_STREAMS 1 |
|
195 /* |
|
196 # define _NOTHREADS 1 |
|
197 */ |
|
198 # ifdef _PTHREADS |
|
199 # undef _PTHREADS |
|
200 # endif |
|
201 # ifdef _STLP_PTHREADS |
|
202 # undef _STLP_PTHREADS |
|
203 # endif |
|
204 # define _STLP_USE_STDIO_IO 1 |
|
205 # define _STLP_USE_GLIBC 1 |
|
206 #endif |
|
207 |
|
208 /* g++ 2.7.x and above */ |
|
209 #define _STLP_LONG_LONG long long |
|
210 |
|
211 #ifdef _STLP_USE_UCLIBC |
|
212 /* |
|
213 # ifndef __DO_C99_MATH__ |
|
214 */ |
|
215 /* No *f math fuctions variants (i.e. sqrtf, fabsf, etc.) */ |
|
216 # define _STLP_NO_VENDOR_MATH_F |
|
217 /* No *l math fuctions variants (i.e. sqrtl, fabsl, etc.) */ |
|
218 # define _STLP_NO_VENDOR_MATH_L |
|
219 # define _STLP_NO_LONG_DOUBLE |
|
220 /* |
|
221 # endif |
|
222 */ |
|
223 #endif |
|
224 |
|
225 #if defined (__OpenBSD__) || defined (__FreeBSD__) |
|
226 # define _STLP_NO_VENDOR_MATH_L |
|
227 # define _STLP_NO_VENDOR_STDLIB_L /* no llabs */ |
|
228 # ifndef __unix |
|
229 # define __unix |
|
230 # endif |
|
231 #endif |
|
232 |
|
233 #if defined (__alpha__) |
|
234 # define _STLP_NO_VENDOR_MATH_L |
|
235 # define _STLP_NO_IEC559_SUPPORT |
|
236 #endif |
|
237 |
|
238 #if defined (__hpux) |
|
239 # define _STLP_NO_VENDOR_STDLIB_L /* no llabs */ |
|
240 /* No *f math fuctions variants (i.e. sqrtf, fabsf, etc.) */ |
|
241 # define _STLP_NO_VENDOR_MATH_F |
|
242 #endif |
|
243 |
|
244 #if (__GNUC__ >= 3) |
|
245 # ifndef _STLP_HAS_NO_NEW_C_HEADERS |
|
246 /* |
|
247 # ifndef _STLP_USE_UCLIBC |
|
248 */ |
|
249 # define _STLP_HAS_NATIVE_FLOAT_ABS |
|
250 /* |
|
251 # endif |
|
252 */ |
|
253 # else |
|
254 # ifdef _STLP_USE_GLIBC |
|
255 # define _STLP_VENDOR_LONG_DOUBLE_MATH 1 |
|
256 # endif |
|
257 # endif |
|
258 #endif |
|
259 |
|
260 #if (__GNUC__ < 3) |
|
261 # define _STLP_HAS_NO_NEW_C_HEADERS 1 |
|
262 # if !defined(_STLP_VENDOR_GLOBAL_CSTD) |
|
263 # define _STLP_VENDOR_GLOBAL_CSTD 1 |
|
264 # endif |
|
265 # define _STLP_DONT_USE_PTHREAD_SPINLOCK 1 |
|
266 # ifndef __HONOR_STD |
|
267 # define _STLP_VENDOR_GLOBAL_EXCEPT_STD 1 |
|
268 # endif |
|
269 /* egcs fails to initialize builtin types in expr. like this : new(p) char(); */ |
|
270 # define _STLP_DEF_CONST_PLCT_NEW_BUG 1 |
|
271 #endif |
|
272 |
|
273 /* |
|
274 #define _STLP_VENDOR_GLOBAL_CSTD 1 |
|
275 */ |
|
276 |
|
277 #if (__GNUC__ == 2) && (__GNUC_MINOR__ < 95) |
|
278 # define _STLP_NO_UNCAUGHT_EXCEPT_SUPPORT |
|
279 # define _STLP_NO_UNEXPECTED_EXCEPT_SUPPORT |
|
280 # define _STLP_DEF_CONST_DEF_PARAM_BUG 1 |
|
281 #else |
|
282 # undef _STLP_NO_UNCAUGHT_EXCEPT_SUPPORT |
|
283 # undef _STLP_NO_UNEXPECTED_EXCEPT_SUPPORT |
|
284 #endif |
|
285 |
|
286 #if (__GNUC_MINOR__ < 9) && (__GNUC__ < 3) && !(defined (__SYMBIAN32__) && defined (__GCCXML__))/* gcc 2.8 */ |
|
287 # define _STLP_NO_TEMPLATE_CONVERSIONS |
|
288 # define _STLP_NO_MEMBER_TEMPLATE_CLASSES 1 |
|
289 # define _STLP_NO_FUNCTION_TMPL_PARTIAL_ORDER 1 |
|
290 # define _STLP_NO_FRIEND_TEMPLATES 1 |
|
291 # define _STLP_HAS_NO_NAMESPACES 1 |
|
292 # define _STLP_NO_METHOD_SPECIALIZATION 1 |
|
293 # define _STLP_NO_MEMBER_TEMPLATES 1 |
|
294 # define _STLP_NO_CLASS_PARTIAL_SPECIALIZATION 1 |
|
295 # define _STLP_DONT_SIMULATE_PARTIAL_SPEC_FOR_TYPE_TRAITS |
|
296 /* DJGPP doesn't seem to implement it in 2.8.x */ |
|
297 # ifdef DJGPP |
|
298 # define _STLP_NO_STATIC_TEMPLATE_DATA 1 |
|
299 # endif |
|
300 #endif |
|
301 |
|
302 #if __GNUC__ <= 2 && __GNUC_MINOR__ <= 7 && !defined (__CYGWIN32__) && !(defined (__SYMBIAN32__) && defined (__GCCXML__)) |
|
303 /* Will it work with 2.6 ? I doubt it. */ |
|
304 # if ( __GNUC_MINOR__ < 6 ) |
|
305 __GIVE_UP_WITH_STL(GCC_272); |
|
306 # endif |
|
307 |
|
308 # define _STLP_NO_RELOPS_NAMESPACE |
|
309 # define _STLP_NON_TYPE_TMPL_PARAM_BUG |
|
310 # define _STLP_LIMITED_DEFAULT_TEMPLATES 1 |
|
311 # define _STLP_DEFAULT_TYPE_PARAM 1 |
|
312 # define _STLP_NO_BAD_ALLOC |
|
313 # define _STLP_NO_ARROW_OPERATOR 1 |
|
314 # ifndef _STLP_NO_STATIC_TEMPLATE_DATA |
|
315 # define _STLP_NO_STATIC_TEMPLATE_DATA |
|
316 # endif |
|
317 # define _STLP_STATIC_CONST_INIT_BUG 1 |
|
318 # define _STLP_NO_METHOD_SPECIALIZATION 1 |
|
319 |
|
320 # if !defined (__CYGWIN32__) |
|
321 # define _STLP_NESTED_TYPE_PARAM_BUG 1 |
|
322 # define _STLP_BASE_MATCH_BUG 1 |
|
323 /* unused operators are required (forward) */ |
|
324 # define _STLP_CONST_CONSTRUCTOR_BUG |
|
325 # define _STLP_NO_DEFAULT_NON_TYPE_PARAM |
|
326 # endif |
|
327 # define _STLP_NO_PARTIAL_SPECIALIZATION_SYNTAX 1 |
|
328 # define _STLP_NO_EXPLICIT_FUNCTION_TMPL_ARGS 1 |
|
329 # if !(defined (__SYMBIAN32__) && defined (__GCCXML__)) |
|
330 # define _STLP_NO_EXCEPTION_HEADER 1 |
|
331 # endif |
|
332 #else /* ! <= 2.7.* */ |
|
333 #endif /* ! <= 2.7.* */ |
|
334 |
|
335 /* static template data members workaround strategy for gcc tries |
|
336 * to use weak symbols. |
|
337 * if you don't want to use that, #define _STLP_WEAK_ATTRIBUTE=0 ( you'll |
|
338 * have to put "#define __PUT_STATIC_DATA_MEMBERS_HERE" line in one of your |
|
339 * compilation unit ( or CFLAGS for it ) _before_ including any STL header ). |
|
340 */ |
|
341 #if defined (_STLP_NO_STATIC_TEMPLATE_DATA) && ! defined (_STLP_WEAK_ATTRIBUTE ) |
|
342 /* systems using GNU ld or format that supports weak symbols |
|
343 may use "weak" attribute |
|
344 Linux & Solaris ( x86 & SPARC ) are being auto-recognized here */ |
|
345 # if defined(_STLP_GNU_LD) || defined(__ELF__) || defined (__CYGWIN__) || \ |
|
346 (( defined (__SVR4) || defined ( __svr4__ )) && \ |
|
347 ( defined (sun) || defined ( __sun__ ))) |
|
348 # define _STLP_WEAK_ATTRIBUTE 1 |
|
349 # endif |
|
350 #endif /* _STLP_WEAK_ATTRIBUTE */ |
|
351 |
|
352 |
|
353 /* strict ANSI prohibits "long long" ( gcc) */ |
|
354 #if defined ( __STRICT_ANSI__ ) |
|
355 # undef _STLP_LONG_LONG |
|
356 /* |
|
357 # define _STLP_STRICT_ANSI 1 |
|
358 */ |
|
359 #endif |
|
360 |
|
361 /* |
|
362 #if !defined (__STRICT_ANSI__) || defined (__BUILDING_STLPORT) |
|
363 # define _STLP_USE_TEMPLATE_EXPORT |
|
364 # define _STLP_EXPORT_TEMPLATE_KEYWORD extern |
|
365 # define _STLP_IMPORT_TEMPLATE_KEYWORD extern |
|
366 #endif |
|
367 */ |
|
368 |
|
369 #ifndef __EXCEPTIONS |
|
370 # undef _STLP_DONT_USE_EXCEPTIONS |
|
371 # define _STLP_DONT_USE_EXCEPTIONS 1 |
|
372 #endif |
|
373 |
|
374 #if (__GNUC__ >= 3) |
|
375 |
|
376 # if !defined (_STLP_NATIVE_INCLUDE_PATH) |
|
377 # if ( (__GNUC__ == 3 ) && ((__GNUC_MINOR__ == 0) || ((__GNUC_MINOR__ < 3) && defined(__APPLE_CC__)))) |
|
378 # define _STLP_NATIVE_INCLUDE_PATH ../g++-v3 |
|
379 # else |
|
380 # if ( ((__GNUC__ == 4 ) || (__GNUC_MINOR__ >= 3)) && defined(__APPLE_CC__)) |
|
381 # define _STLP_NATIVE_INCLUDE_PATH ../c++ |
|
382 /* |
|
383 * Before version 3.4.0 the 0 patch level was not part of the include path: |
|
384 */ |
|
385 # elif defined (__GNUC_PATCHLEVEL__) && ((__GNUC_PATCHLEVEL__ > 0) || \ |
|
386 (__GNUC__ == 3 && __GNUC_MINOR__ >= 4) || \ |
|
387 (__GNUC__ > 3)) |
|
388 # define _STLP_NATIVE_INCLUDE_PATH ../__GNUC__.__GNUC_MINOR__.__GNUC_PATCHLEVEL__ |
|
389 # else |
|
390 # define _STLP_NATIVE_INCLUDE_PATH ../__GNUC__.__GNUC_MINOR__ |
|
391 # endif |
|
392 # endif |
|
393 # endif |
|
394 |
|
395 /* Instantiation scheme that used (default) in gcc 3 made void of sense explicit |
|
396 instantiation within library: nothing except increased library size. - ptr |
|
397 */ |
|
398 # define _STLP_NO_FORCE_INSTANTIATE |
|
399 |
|
400 #elif (__GNUC_MINOR__ < 8) |
|
401 |
|
402 # if !defined (_STLP_NATIVE_INCLUDE_PATH) |
|
403 # if !defined (__SYMBIAN32__) |
|
404 # define _STLP_NATIVE_INCLUDE_PATH ../g++-include |
|
405 # endif |
|
406 # endif |
|
407 |
|
408 /* tuning of static template data members workaround */ |
|
409 # if ( _STLP_STATIC_TEMPLATE_DATA < 1 ) |
|
410 # if ( _STLP_WEAK_ATTRIBUTE > 0 ) |
|
411 # define _STLP_WEAK __attribute__ (( weak )) |
|
412 # else |
|
413 # define _STLP_WEAK |
|
414 # endif /* _STLP_WEAK_ATTRIBUTE */ |
|
415 |
|
416 # ifdef __PUT_STATIC_DATA_MEMBERS_HERE |
|
417 # define __DECLARE_INSTANCE(type,item,init) type item _STLP_WEAK init |
|
418 # else |
|
419 # define __DECLARE_INSTANCE(type,item,init) |
|
420 # endif /* __PUT_STATIC_DATA_MEMBERS_HERE */ |
|
421 # endif /* _STLP_STATIC_TEMPLATE_DATA */ |
|
422 |
|
423 #else |
|
424 |
|
425 /* gcc-2.95.0 used to use "g++-3" directory which has been changed to "g++" in |
|
426 * system-dependent "include" for 2.95.2 except for Cygwin and Mingw packages. |
|
427 * I expect "g++-3" not being used in later releases. |
|
428 * If your installation use "g++-3" include directory for any reason (pre-2.95.2 or Win binary kit), |
|
429 * please change the macro below to point to your directory. |
|
430 */ |
|
431 |
|
432 # if !defined (_STLP_NATIVE_INCLUDE_PATH) |
|
433 # if defined(__DJGPP) |
|
434 # define _STLP_NATIVE_INCLUDE_PATH ../lang/cxx |
|
435 # elif (__GNUC__ >= 3) || (__GNUC_MINOR__ >= 97) |
|
436 # define _STLP_NATIVE_INCLUDE_PATH ../include/g++-v3 |
|
437 # elif ((__GNUC_MINOR__ >= 95 && __GNUC_MINOR__ < 97) && \ |
|
438 !( defined (__FreeBSD__) || defined (__NetBSD__) || defined(__sgi) || defined (__OS2__) ) ) |
|
439 # define _STLP_NATIVE_INCLUDE_PATH ../g++-3 |
|
440 # elif (__GNUC_MINOR__ > 8) && (__GNUC_MINOR__ < 95) && (__GNUC__ < 3) && !defined( __Lynx__ ) |
|
441 /* this really sucks, as GNUpro does not really identifies itself, so we have to guess |
|
442 * depending on a platform |
|
443 */ |
|
444 # ifdef __hpux |
|
445 # define _STLP_NATIVE_INCLUDE_PATH ../g++-3 |
|
446 # else |
|
447 # define _STLP_NATIVE_INCLUDE_PATH ../g++-2 |
|
448 # endif |
|
449 # else |
|
450 # define _STLP_NATIVE_INCLUDE_PATH g++ |
|
451 # endif |
|
452 # endif |
|
453 |
|
454 /* <exception> et al */ |
|
455 # ifdef __FreeBSD__ |
|
456 # if (__GNUC__ > 2) || (__GNUC__ == 2 && __GNUC_MINOR__ > 95) |
|
457 # define _STLP_NATIVE_CPP_RUNTIME_INCLUDE_PATH ../include |
|
458 # endif |
|
459 # else |
|
460 /* azov */ |
|
461 # ifndef __Lynx__ |
|
462 # if (__GNUC__ > 2) || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97) |
|
463 /* |
|
464 # define _STLP_NATIVE_CPP_RUNTIME_INCLUDE_PATH ../g++-v3 |
|
465 */ |
|
466 # else |
|
467 # define _STLP_NATIVE_CPP_RUNTIME_INCLUDE_PATH ../include |
|
468 # endif |
|
469 # endif |
|
470 # endif |
|
471 |
|
472 #endif /* GNUC_MINOR < 8 */ |
|
473 |
|
474 #if !defined (_STLP_NATIVE_C_INCLUDE_PATH) |
|
475 # define _STLP_NATIVE_C_INCLUDE_PATH ../include |
|
476 #endif |
|
477 |
|
478 /* Tune settings for the case where static template data members are not |
|
479 * instaniated by default |
|
480 */ |
|
481 #if defined ( _STLP_NO_STATIC_TEMPLATE_DATA ) |
|
482 # define _STLP_STATIC_TEMPLATE_DATA 0 |
|
483 # if !defined ( _STLP_WEAK_ATTRIBUTE ) |
|
484 # define _STLP_WEAK_ATTRIBUTE 0 |
|
485 # endif |
|
486 # ifdef __PUT_STATIC_DATA_MEMBERS_HERE |
|
487 # define __DECLARE_INSTANCE(type,item,init) type item init |
|
488 # else |
|
489 # define __DECLARE_INSTANCE(type,item,init) |
|
490 # endif |
|
491 #else |
|
492 # define _STLP_STATIC_TEMPLATE_DATA 1 |
|
493 #endif |
|
494 |
|
495 |