1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/epoc32/include/stdapis/stlportv5/stl/config/_gcc.h Wed Mar 31 12:33:34 2010 +0100
1.3 @@ -0,0 +1,485 @@
1.4 +/* STLport configuration file
1.5 + * It is internal STLport header - DO NOT include it directly
1.6 + */
1.7 +
1.8 +#define _STLP_COMPILER "gcc"
1.9 +
1.10 +/* Systems having GLIBC installed have different traits */
1.11 +#if defined (__linux__)
1.12 +# ifndef _STLP_USE_GLIBC
1.13 +# define _STLP_USE_GLIBC 1
1.14 +# endif
1.15 +# if defined (__UCLIBC__) && !defined (_STLP_USE_UCLIBC)
1.16 +# define _STLP_USE_UCLIBC 1
1.17 +# endif
1.18 +#endif
1.19 +
1.20 +#if defined (__CYGWIN__) && \
1.21 + (__GNUC__ >= 3) && (__GNUC_MINOR__ >= 3) && !defined (_GLIBCPP_USE_C99)
1.22 +# define _STLP_NO_VENDOR_MATH_L
1.23 +# define _STLP_NO_VENDOR_STDLIB_L
1.24 +#endif
1.25 +
1.26 +#if (__GNUC__ < 3)
1.27 +# define _STLP_NO_VENDOR_STDLIB_L
1.28 +#endif
1.29 +
1.30 +#if defined (__SYMBIAN32__) && !defined (_STLP_NO_VENDOR_STDLIB_L)
1.31 +//The following macro is defined so that the vendor's APIs dont get picked. Rather the ones from PIPS are used.
1.32 +# define _STLP_NO_VENDOR_STDLIB_L
1.33 +#endif // (__SYMBIAN32__) && !defined (_STLP_NO_VENDOR_STDLIB_L)
1.34 +
1.35 +/* We guess if we are using the cygwin distrib that has a special include schema.
1.36 + * There is no way to distinguish a cygwin distrib used in no-cygwin mode from a
1.37 + * mingw install. We are forced to use a configuration option
1.38 + */
1.39 +#if !defined (_STLP_NATIVE_INCLUDE_PATH) && \
1.40 + (defined (__CYGWIN__) || defined (__MINGW32__) && defined (_STLP_NO_CYGWIN))
1.41 +# if (__GNUC__ > 3) || ((__GNUC__ == 3) && (__GNUC_MINOR__ > 3))
1.42 +# define _STLP_NATIVE_INCLUDE_PATH ../../../__GNUC__.__GNUC_MINOR__.__GNUC_PATCHLEVEL__/include/c++
1.43 +# elif defined (_STLP_NO_CYGWIN)
1.44 +# define _STLP_NATIVE_INCLUDE_PATH ../mingw
1.45 +/*# else
1.46 + * Before version gcc 3.4, the cygwin package include path was conform to the
1.47 + * GNU convention which is set later in this file.
1.48 + */
1.49 +# endif
1.50 +#endif
1.51 +
1.52 +#if (__GNUC__ < 3) || ((__GNUC__ == 3) && (__GNUC_MINOR__ < 4))
1.53 +/* define for gcc versions before 3.4.0. */
1.54 +# define _STLP_NO_MEMBER_TEMPLATE_KEYWORD
1.55 +#endif
1.56 +
1.57 +/* azov: gcc on lynx have a bug that causes internal
1.58 + * compiler errors when compiling STLport with namespaces turned on.
1.59 + * When the compiler gets better - comment out _STLP_HAS_NO_NAMESPACES
1.60 + */
1.61 +#if defined (__Lynx__) && (__GNUC__ < 3)
1.62 +# define _STLP_HAS_NO_NAMESPACES 1
1.63 +# define _STLP_NO_STATIC_TEMPLATE_DATA 1
1.64 +/* turn off useless warning about including system headers */
1.65 +# define __NO_INCLUDE_WARN__ 1
1.66 +#endif
1.67 +
1.68 +/* Tru64 Unix, AIX, HP : gcc there by default uses native ld and hence cannot auto-instantiate
1.69 + static template data. If you are using GNU ld, please say so in user_config.h header */
1.70 +#if (__GNUC__ < 3) && !defined(_STLP_GCC_USES_GNU_LD) && \
1.71 + ((defined (__osf__) && defined (__alpha__)) || defined (_AIX) || defined (__hpux) || defined(__amigaos__) )
1.72 +# define _STLP_NO_STATIC_TEMPLATE_DATA
1.73 +#endif
1.74 +
1.75 +#if !defined (_REENTRANT) && (defined (_THREAD_SAFE) || \
1.76 + (defined (__OpenBSD__) && defined (_POSIX_THREADS)) || \
1.77 + (defined (__MINGW32__) && defined (_MT)))
1.78 +# define _REENTRANT
1.79 +#endif
1.80 +
1.81 +#if defined (__DJGPP)
1.82 +# define _STLP_RAND48 1
1.83 +# define _NOTHREADS 1
1.84 +# undef _PTHREADS
1.85 +# define _STLP_LITTLE_ENDIAN
1.86 +#endif
1.87 +
1.88 +#ifdef __SYMBIAN32__
1.89 +# if !defined(_STLP_LITTLE_ENDIAN)
1.90 +# define _STLP_LITTLE_ENDIAN
1.91 +# endif
1.92 +#endif
1.93 +#if defined (__MINGW32__)
1.94 +/* Mingw32, egcs compiler using the Microsoft C runtime */
1.95 +# define _STLP_VENDOR_GLOBAL_CSTD
1.96 +# undef _STLP_NO_DRAND48
1.97 +# define _STLP_NO_DRAND48
1.98 +# define _STLP_CALL
1.99 +
1.100 +# if defined (_STLP_NEW_PLATFORM_SDK)
1.101 +/* For the moment the Windows SDK coming with Mingw still mimik the old platform SDK. */
1.102 +# undef _STLP_NEW_PLATFORM_SDK
1.103 +# endif
1.104 +#endif /* __MINGW32__ */
1.105 +
1.106 +#if defined (__CYGWIN__) || defined (__MINGW32__)
1.107 +# if !defined (_STLP_USE_STATIC_LIB)
1.108 +# define _STLP_USE_DECLSPEC 1
1.109 +# if !defined (_STLP_USE_DYNAMIC_LIB)
1.110 +# define _STLP_USE_DYNAMIC_LIB
1.111 +# endif
1.112 +# define _STLP_EXPORT_DECLSPEC __declspec(dllexport)
1.113 +# define _STLP_CLASS_EXPORT_DECLSPEC __declspec(dllexport)
1.114 +# define _STLP_CLASS_IMPORT_DECLSPEC __declspec(dllimport)
1.115 +# endif
1.116 +/* The following is defined independently of _STLP_USE_STATIC_LIB because it is also
1.117 + * used to import symbols from PSDK under MinGW
1.118 + */
1.119 +# define _STLP_IMPORT_DECLSPEC __declspec(dllimport)
1.120 +#endif
1.121 +
1.122 +#if !defined (__SYMBIAN32__) && (defined (__CYGWIN__) || defined (__MINGW32__) || !(defined (_STLP_USE_GLIBC) || defined (__sun) || defined(__APPLE__)))
1.123 +# if !defined (__MINGW32__) && !defined (__CYGWIN__)
1.124 +# define _STLP_NO_NATIVE_MBSTATE_T 1
1.125 +# endif
1.126 +# if !defined (__MINGW32__) || (__GNUC__ < 3) || (__GNUC__ == 3) && (__GNUC_MINOR__ < 4)
1.127 +# define _STLP_NO_NATIVE_WIDE_FUNCTIONS 1
1.128 +# endif
1.129 +# define _STLP_NO_NATIVE_WIDE_STREAMS 1
1.130 +#endif
1.131 +
1.132 +#define _STLP_NORETURN_FUNCTION __attribute__((noreturn))
1.133 +
1.134 +/* Mac OS X is a little different with namespaces and cannot instantiate
1.135 + * static data members in template classes */
1.136 +#if defined (__APPLE__)
1.137 +# if ((__GNUC__ < 3) || ((__GNUC__ == 3) && (__GNUC_MINOR__ < 3)))
1.138 +/* Mac OS X is missing a required typedef and standard macro */
1.139 +typedef unsigned int wint_t;
1.140 +# endif
1.141 +
1.142 +# define __unix
1.143 +
1.144 +# if (__GNUC__ < 3)
1.145 +
1.146 + /* Mac OS X needs one and only one source file to initialize all static data
1.147 + * members in template classes. Only one source file in an executable or
1.148 + * library can declare instances for such data members, otherwise duplicate
1.149 + * symbols will be generated. */
1.150 +
1.151 +# define _STLP_NO_STATIC_TEMPLATE_DATA
1.152 +# define _STLP_STATIC_CONST_INIT_BUG 1
1.153 +# define _STLP_STATIC_TEMPLATE_DATA 0
1.154 +# define _STLP_WEAK_ATTRIBUTE 1
1.155 + /* Workaround for the broken Mac OS X C++ preprocessor which cannot handle
1.156 + * parameterized macros in #include statements */
1.157 +# define _STLP_NATIVE_HEADER(header) <../g++/##header##>
1.158 +# define _STLP_NATIVE_C_HEADER(header) <../include/##header##>
1.159 +# define _STLP_NATIVE_CPP_C_HEADER(header) <../g++/##header##>
1.160 +# define _STLP_NATIVE_OLD_STREAMS_HEADER(header) <../g++/##header##>
1.161 +# define _STLP_NATIVE_CPP_RUNTIME_HEADER(header) <../g++/##header##>
1.162 +# endif /* __GNUC__ < 3 */
1.163 +
1.164 +# define _STLP_NO_LONG_DOUBLE
1.165 +
1.166 +/* Mac OS X needs all "::" scope references to be "std::" */
1.167 +# define _STLP_USE_NEW_C_HEADERS
1.168 +
1.169 +# define _STLP_NO_VENDOR_STDLIB_L
1.170 +
1.171 +#endif /* __APPLE__ */
1.172 +
1.173 +
1.174 +#if defined(__BEOS__) && defined(__INTEL__)
1.175 +# define _STLP_NATIVE_HEADER(header) <../stlport/beos/##header##>
1.176 +# define _STLP_NATIVE_C_HEADER(header) <../stlport/beos/##header##>
1.177 +# define _STLP_NATIVE_CPP_C_HEADER(header) <../stlport/beos/##header##>
1.178 +# define _STLP_NATIVE_OLD_STREAMS_HEADER(header) <../stlport/beos/##header##>
1.179 +# define _STLP_NATIVE_CPP_RUNTIME_HEADER(header) <../stlport/beos/##header##>
1.180 +# define _STLP_NO_NATIVE_WIDE_FUNCTIONS 1
1.181 +# define _STLP_NO_NATIVE_WIDE_STREAMS 1
1.182 +/*
1.183 +# define _NOTHREADS 1
1.184 +*/
1.185 +# ifdef _PTHREADS
1.186 +# undef _PTHREADS
1.187 +# endif
1.188 +# ifdef _STLP_PTHREADS
1.189 +# undef _STLP_PTHREADS
1.190 +# endif
1.191 +# define _STLP_USE_STDIO_IO 1
1.192 +# define _STLP_USE_GLIBC 1
1.193 +#endif
1.194 +
1.195 +/* g++ 2.7.x and above */
1.196 +#define _STLP_LONG_LONG long long
1.197 +
1.198 +#ifdef _STLP_USE_UCLIBC
1.199 +/*
1.200 +# ifndef __DO_C99_MATH__
1.201 +*/
1.202 + /* No *f math fuctions variants (i.e. sqrtf, fabsf, etc.) */
1.203 +# define _STLP_NO_VENDOR_MATH_F
1.204 + /* No *l math fuctions variants (i.e. sqrtl, fabsl, etc.) */
1.205 +# define _STLP_NO_VENDOR_MATH_L
1.206 +# define _STLP_NO_LONG_DOUBLE
1.207 +/*
1.208 +# endif
1.209 +*/
1.210 +#endif
1.211 +
1.212 +#if defined (__OpenBSD__) || defined (__FreeBSD__)
1.213 +# define _STLP_NO_VENDOR_MATH_L
1.214 +# define _STLP_NO_VENDOR_STDLIB_L /* no llabs */
1.215 +# ifndef __unix
1.216 +# define __unix
1.217 +# endif
1.218 +#endif
1.219 +
1.220 +#if defined (__alpha__)
1.221 +# define _STLP_NO_VENDOR_MATH_L
1.222 +# define _STLP_NO_IEC559_SUPPORT
1.223 +#endif
1.224 +
1.225 +#if defined (__hpux)
1.226 +# define _STLP_NO_VENDOR_STDLIB_L /* no llabs */
1.227 + /* No *f math fuctions variants (i.e. sqrtf, fabsf, etc.) */
1.228 +# define _STLP_NO_VENDOR_MATH_F
1.229 +#endif
1.230 +
1.231 +#if (__GNUC__ >= 3)
1.232 +# ifndef _STLP_HAS_NO_NEW_C_HEADERS
1.233 +/*
1.234 +# ifndef _STLP_USE_UCLIBC
1.235 +*/
1.236 +# define _STLP_HAS_NATIVE_FLOAT_ABS
1.237 +/*
1.238 +# endif
1.239 +*/
1.240 +# else
1.241 +# ifdef _STLP_USE_GLIBC
1.242 +# define _STLP_VENDOR_LONG_DOUBLE_MATH 1
1.243 +# endif
1.244 +# endif
1.245 +#endif
1.246 +
1.247 +#if (__GNUC__ < 3)
1.248 +# define _STLP_HAS_NO_NEW_C_HEADERS 1
1.249 +# if !defined(_STLP_VENDOR_GLOBAL_CSTD)
1.250 +# define _STLP_VENDOR_GLOBAL_CSTD 1
1.251 +# endif
1.252 +# define _STLP_DONT_USE_PTHREAD_SPINLOCK 1
1.253 +# ifndef __HONOR_STD
1.254 +# define _STLP_VENDOR_GLOBAL_EXCEPT_STD 1
1.255 +# endif
1.256 +/* egcs fails to initialize builtin types in expr. like this : new(p) char(); */
1.257 +# define _STLP_DEF_CONST_PLCT_NEW_BUG 1
1.258 +#endif
1.259 +
1.260 +/*
1.261 +#define _STLP_VENDOR_GLOBAL_CSTD 1
1.262 +*/
1.263 +
1.264 +#if (__GNUC__ == 2) && (__GNUC_MINOR__ < 95)
1.265 +# define _STLP_NO_UNCAUGHT_EXCEPT_SUPPORT
1.266 +# define _STLP_NO_UNEXPECTED_EXCEPT_SUPPORT
1.267 +# define _STLP_DEF_CONST_DEF_PARAM_BUG 1
1.268 +#else
1.269 +# undef _STLP_NO_UNCAUGHT_EXCEPT_SUPPORT
1.270 +# undef _STLP_NO_UNEXPECTED_EXCEPT_SUPPORT
1.271 +#endif
1.272 +
1.273 +#if (__GNUC_MINOR__ < 9) && (__GNUC__ < 3) && !(defined (__SYMBIAN32__) && defined (__GCCXML__))/* gcc 2.8 */
1.274 +# define _STLP_NO_TEMPLATE_CONVERSIONS
1.275 +# define _STLP_NO_MEMBER_TEMPLATE_CLASSES 1
1.276 +# define _STLP_NO_FUNCTION_TMPL_PARTIAL_ORDER 1
1.277 +# define _STLP_NO_FRIEND_TEMPLATES 1
1.278 +# define _STLP_HAS_NO_NAMESPACES 1
1.279 +# define _STLP_NO_METHOD_SPECIALIZATION 1
1.280 +# define _STLP_NO_MEMBER_TEMPLATES 1
1.281 +# define _STLP_NO_CLASS_PARTIAL_SPECIALIZATION 1
1.282 +# define _STLP_DONT_SIMULATE_PARTIAL_SPEC_FOR_TYPE_TRAITS
1.283 +/* DJGPP doesn't seem to implement it in 2.8.x */
1.284 +# ifdef DJGPP
1.285 +# define _STLP_NO_STATIC_TEMPLATE_DATA 1
1.286 +# endif
1.287 +#endif
1.288 +
1.289 +#if __GNUC__ <= 2 && __GNUC_MINOR__ <= 7 && !defined (__CYGWIN32__) && !(defined (__SYMBIAN32__) && defined (__GCCXML__))
1.290 +/* Will it work with 2.6 ? I doubt it. */
1.291 +# if ( __GNUC_MINOR__ < 6 )
1.292 +__GIVE_UP_WITH_STL(GCC_272);
1.293 +# endif
1.294 +
1.295 +# define _STLP_NO_RELOPS_NAMESPACE
1.296 +# define _STLP_NON_TYPE_TMPL_PARAM_BUG
1.297 +# define _STLP_LIMITED_DEFAULT_TEMPLATES 1
1.298 +# define _STLP_DEFAULT_TYPE_PARAM 1
1.299 +# define _STLP_NO_BAD_ALLOC
1.300 +# define _STLP_NO_ARROW_OPERATOR 1
1.301 +# ifndef _STLP_NO_STATIC_TEMPLATE_DATA
1.302 +# define _STLP_NO_STATIC_TEMPLATE_DATA
1.303 +# endif
1.304 +# define _STLP_STATIC_CONST_INIT_BUG 1
1.305 +# define _STLP_NO_METHOD_SPECIALIZATION 1
1.306 +
1.307 +# if !defined (__CYGWIN32__)
1.308 +# define _STLP_NESTED_TYPE_PARAM_BUG 1
1.309 +# define _STLP_BASE_MATCH_BUG 1
1.310 +/* unused operators are required (forward) */
1.311 +# define _STLP_CONST_CONSTRUCTOR_BUG
1.312 +# define _STLP_NO_DEFAULT_NON_TYPE_PARAM
1.313 +# endif
1.314 +# define _STLP_NO_PARTIAL_SPECIALIZATION_SYNTAX 1
1.315 +# define _STLP_NO_EXPLICIT_FUNCTION_TMPL_ARGS 1
1.316 +# if !(defined (__SYMBIAN32__) && defined (__GCCXML__))
1.317 +# define _STLP_NO_EXCEPTION_HEADER 1
1.318 +# endif
1.319 +#else /* ! <= 2.7.* */
1.320 +#endif /* ! <= 2.7.* */
1.321 +
1.322 +/* static template data members workaround strategy for gcc tries
1.323 + * to use weak symbols.
1.324 + * if you don't want to use that, #define _STLP_WEAK_ATTRIBUTE=0 ( you'll
1.325 + * have to put "#define __PUT_STATIC_DATA_MEMBERS_HERE" line in one of your
1.326 + * compilation unit ( or CFLAGS for it ) _before_ including any STL header ).
1.327 + */
1.328 +#if defined (_STLP_NO_STATIC_TEMPLATE_DATA) && ! defined (_STLP_WEAK_ATTRIBUTE )
1.329 +/* systems using GNU ld or format that supports weak symbols
1.330 + may use "weak" attribute
1.331 + Linux & Solaris ( x86 & SPARC ) are being auto-recognized here */
1.332 +# if defined(_STLP_GNU_LD) || defined(__ELF__) || defined (__CYGWIN__) || \
1.333 + (( defined (__SVR4) || defined ( __svr4__ )) && \
1.334 + ( defined (sun) || defined ( __sun__ )))
1.335 +# define _STLP_WEAK_ATTRIBUTE 1
1.336 +# endif
1.337 +#endif /* _STLP_WEAK_ATTRIBUTE */
1.338 +
1.339 +
1.340 +/* strict ANSI prohibits "long long" ( gcc) */
1.341 +#if defined ( __STRICT_ANSI__ )
1.342 +# undef _STLP_LONG_LONG
1.343 +/*
1.344 +# define _STLP_STRICT_ANSI 1
1.345 +*/
1.346 +#endif
1.347 +
1.348 +/*
1.349 +#if !defined (__STRICT_ANSI__) || defined (__BUILDING_STLPORT)
1.350 +# define _STLP_USE_TEMPLATE_EXPORT
1.351 +# define _STLP_EXPORT_TEMPLATE_KEYWORD extern
1.352 +# define _STLP_IMPORT_TEMPLATE_KEYWORD extern
1.353 +#endif
1.354 +*/
1.355 +
1.356 +#ifndef __EXCEPTIONS
1.357 +# undef _STLP_DONT_USE_EXCEPTIONS
1.358 +# define _STLP_DONT_USE_EXCEPTIONS 1
1.359 +#endif
1.360 +
1.361 +#if (__GNUC__ >= 3)
1.362 +
1.363 +# if !defined (_STLP_NATIVE_INCLUDE_PATH)
1.364 +# if ( (__GNUC__ == 3 ) && ((__GNUC_MINOR__ == 0) || ((__GNUC_MINOR__ < 3) && defined(__APPLE_CC__))))
1.365 +# define _STLP_NATIVE_INCLUDE_PATH ../g++-v3
1.366 +# else
1.367 +# if ( ((__GNUC__ == 4 ) || (__GNUC_MINOR__ >= 3)) && defined(__APPLE_CC__))
1.368 +# define _STLP_NATIVE_INCLUDE_PATH ../c++
1.369 +/*
1.370 +* Before version 3.4.0 the 0 patch level was not part of the include path:
1.371 +*/
1.372 +# elif defined (__GNUC_PATCHLEVEL__) && ((__GNUC_PATCHLEVEL__ > 0) || \
1.373 + (__GNUC__ == 3 && __GNUC_MINOR__ >= 4) || \
1.374 + (__GNUC__ > 3))
1.375 +# define _STLP_NATIVE_INCLUDE_PATH ../__GNUC__.__GNUC_MINOR__.__GNUC_PATCHLEVEL__
1.376 +# else
1.377 +# define _STLP_NATIVE_INCLUDE_PATH ../__GNUC__.__GNUC_MINOR__
1.378 +# endif
1.379 +# endif
1.380 +# endif
1.381 +
1.382 +/* Instantiation scheme that used (default) in gcc 3 made void of sense explicit
1.383 + instantiation within library: nothing except increased library size. - ptr
1.384 + */
1.385 +# define _STLP_NO_FORCE_INSTANTIATE
1.386 +
1.387 +#elif (__GNUC_MINOR__ < 8)
1.388 +
1.389 +# if !defined (_STLP_NATIVE_INCLUDE_PATH)
1.390 +# if !defined (__SYMBIAN32__)
1.391 +# define _STLP_NATIVE_INCLUDE_PATH ../g++-include
1.392 +# endif
1.393 +# endif
1.394 +
1.395 +/* tuning of static template data members workaround */
1.396 +# if ( _STLP_STATIC_TEMPLATE_DATA < 1 )
1.397 +# if ( _STLP_WEAK_ATTRIBUTE > 0 )
1.398 +# define _STLP_WEAK __attribute__ (( weak ))
1.399 +# else
1.400 +# define _STLP_WEAK
1.401 +# endif /* _STLP_WEAK_ATTRIBUTE */
1.402 +
1.403 +# ifdef __PUT_STATIC_DATA_MEMBERS_HERE
1.404 +# define __DECLARE_INSTANCE(type,item,init) type item _STLP_WEAK init
1.405 +# else
1.406 +# define __DECLARE_INSTANCE(type,item,init)
1.407 +# endif /* __PUT_STATIC_DATA_MEMBERS_HERE */
1.408 +# endif /* _STLP_STATIC_TEMPLATE_DATA */
1.409 +
1.410 +#else
1.411 +
1.412 +/* gcc-2.95.0 used to use "g++-3" directory which has been changed to "g++" in
1.413 + * system-dependent "include" for 2.95.2 except for Cygwin and Mingw packages.
1.414 + * I expect "g++-3" not being used in later releases.
1.415 + * If your installation use "g++-3" include directory for any reason (pre-2.95.2 or Win binary kit),
1.416 + * please change the macro below to point to your directory.
1.417 + */
1.418 +
1.419 +# if !defined (_STLP_NATIVE_INCLUDE_PATH)
1.420 +# if defined(__DJGPP)
1.421 +# define _STLP_NATIVE_INCLUDE_PATH ../lang/cxx
1.422 +# elif (__GNUC__ >= 3) || (__GNUC_MINOR__ >= 97)
1.423 +# define _STLP_NATIVE_INCLUDE_PATH ../include/g++-v3
1.424 +# elif ((__GNUC_MINOR__ >= 95 && __GNUC_MINOR__ < 97) && \
1.425 + !( defined (__FreeBSD__) || defined (__NetBSD__) || defined(__sgi) || defined (__OS2__) ) )
1.426 +# define _STLP_NATIVE_INCLUDE_PATH ../g++-3
1.427 +# elif (__GNUC_MINOR__ > 8) && (__GNUC_MINOR__ < 95) && (__GNUC__ < 3) && !defined( __Lynx__ )
1.428 +/* this really sucks, as GNUpro does not really identifies itself, so we have to guess
1.429 + * depending on a platform
1.430 + */
1.431 +# ifdef __hpux
1.432 +# define _STLP_NATIVE_INCLUDE_PATH ../g++-3
1.433 +# else
1.434 +# define _STLP_NATIVE_INCLUDE_PATH ../g++-2
1.435 +# endif
1.436 +# else
1.437 +# define _STLP_NATIVE_INCLUDE_PATH g++
1.438 +# endif
1.439 +# endif
1.440 +
1.441 +/* <exception> et al */
1.442 +# ifdef __FreeBSD__
1.443 +# if (__GNUC__ > 2) || (__GNUC__ == 2 && __GNUC_MINOR__ > 95)
1.444 +# define _STLP_NATIVE_CPP_RUNTIME_INCLUDE_PATH ../include
1.445 +# endif
1.446 +# else
1.447 +/* azov */
1.448 +# ifndef __Lynx__
1.449 +# if (__GNUC__ > 2) || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)
1.450 +/*
1.451 +# define _STLP_NATIVE_CPP_RUNTIME_INCLUDE_PATH ../g++-v3
1.452 +*/
1.453 +# else
1.454 +# define _STLP_NATIVE_CPP_RUNTIME_INCLUDE_PATH ../include
1.455 +# endif
1.456 +# endif
1.457 +# endif
1.458 +
1.459 +#endif /* GNUC_MINOR < 8 */
1.460 +
1.461 +#if !defined (_STLP_NATIVE_C_INCLUDE_PATH)
1.462 +# define _STLP_NATIVE_C_INCLUDE_PATH ../include
1.463 +#endif
1.464 +
1.465 +/* Tune settings for the case where static template data members are not
1.466 + * instaniated by default
1.467 + */
1.468 +#if defined ( _STLP_NO_STATIC_TEMPLATE_DATA )
1.469 +# define _STLP_STATIC_TEMPLATE_DATA 0
1.470 +# if !defined ( _STLP_WEAK_ATTRIBUTE )
1.471 +# define _STLP_WEAK_ATTRIBUTE 0
1.472 +# endif
1.473 +# ifdef __PUT_STATIC_DATA_MEMBERS_HERE
1.474 +# define __DECLARE_INSTANCE(type,item,init) type item init
1.475 +# else
1.476 +# define __DECLARE_INSTANCE(type,item,init)
1.477 +# endif
1.478 +#else
1.479 +# define _STLP_STATIC_TEMPLATE_DATA 1
1.480 +#endif
1.481 +
1.482 +/* Setup GCCXML specific configuration on Symbian.*/
1.483 +#if defined (__SYMBIAN32__) && defined (__GCCXML__)
1.484 +//# define _STLP_NO_CLASS_PARTIAL_SPECIALIZATION 1
1.485 +#define _STLP_SIMULATE_PARTIAL_SPEC_FOR_TYPE_TRAITS 1
1.486 +#define _STLP_NO_TYPEINFO
1.487 +#endif
1.488 +