1.1 --- a/epoc32/include/stdapis/stlport/config/stl_winscw.h Tue Nov 24 13:55:44 2009 +0000
1.2 +++ b/epoc32/include/stdapis/stlport/config/stl_winscw.h Tue Mar 16 16:12:26 2010 +0000
1.3 @@ -1,1 +1,236 @@
1.4 -stl_winscw.h
1.5 +/*
1.6 +* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). All rights reserved.
1.7 +
1.8 +* Redistribution and use in source and binary forms, with or without
1.9 +* modification, are permitted provided that the following conditions are met:
1.10 +
1.11 +* Redistributions of source code must retain the above copyright notice, this
1.12 +* list of conditions and the following disclaimer.
1.13 +* Redistributions in binary form must reproduce the above copyright notice,
1.14 +* this list of conditions and the following disclaimer in the documentation
1.15 +* and/or other materials provided with the distribution.
1.16 +* Neither the name of Nokia Corporation nor the names of its contributors
1.17 +* may be used to endorse or promote products derived from this software
1.18 +* without specific prior written permission.
1.19 +
1.20 +* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
1.21 +* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
1.22 +* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
1.23 +* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
1.24 +* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
1.25 +* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
1.26 +* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
1.27 +* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
1.28 +* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
1.29 +* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
1.30 +*
1.31 +* Description:
1.32 +*
1.33 +*/
1.34 +
1.35 +// =============================================================================
1.36 +// stl_winscw.h
1.37 +// This is a list of settings for STLport specific to the Metrowerks
1.38 +// CodeWarrior for Symbian compiler. Do not include this file directly.
1.39 +// =============================================================================
1.40 +
1.41 +#ifndef _STLP_WINSCW
1.42 +# define _STLP_WINSCW
1.43 +
1.44 +// -----------------------------------------------------------------------------
1.45 +// iostreams
1.46 +// No support for these in Symbian.
1.47 +// -----------------------------------------------------------------------------
1.48 +/*
1.49 +# ifndef _STLP_NO_IOSTREAMS
1.50 +# define _STLP_NO_IOSTREAMS
1.51 +# endif
1.52 +
1.53 +# ifdef _STLP_OWN_IOSTREAMS
1.54 +# undef _STLP_OWN_IOSTREAMS
1.55 +# endif
1.56 +*/
1.57 +//# define _STLP_NO_NATIVE_MBSTATE_T 1
1.58 +//# define _NOTHREADS 1
1.59 +//# define _STLP_NO_TYPEINFO 1
1.60 +
1.61 +
1.62 +# ifndef __PLACEMENT_NEW_INLINE
1.63 +# ifndef __E32STD_H__
1.64 +# ifdef __cplusplus
1.65 + inline void * operator new(unsigned int, void *_P) throw(){ return (_P); }
1.66 + inline void operator delete(void* /*aPtr*/, void* /*aBase*/) __NO_THROW {}
1.67 +# endif
1.68 +# define __PLACEMENT_NEW_INLINE
1.69 +# endif // E32STD_H
1.70 +# endif
1.71 +
1.72 +//# undef _STLP_OWN_IOSTREAMS
1.73 +//#define _STLP_OWN_IOSTREAMS
1.74 +#define _STLP_USE_NEW_IOSTREAMS
1.75 +
1.76 +
1.77 +//==========================================================
1.78 +
1.79 +// the values choosen here as defaults try to give
1.80 +// maximum functionality on the most conservative settings
1.81 +
1.82 +// Mostly correct guess, change it for Alpha (and other environments
1.83 +// that has 64-bit "long")
1.84 +# define _STLP_UINT32_T unsigned long
1.85 +
1.86 +
1.87 +// Define if wchar_t is not a unique type, and is actually a typedef to unsigned short.
1.88 +// # define _STLP_WCHAR_T_IS_USHORT 1
1.89 +
1.90 +// Uncomment if long long is available
1.91 +# define _STLP_LONG_LONG long long
1.92 +
1.93 +// Uncomment if long double is not available
1.94 +// # define _STLP_NO_LONG_DOUBLE 1
1.95 +
1.96 +// Uncomment this if your compiler does not support namespaces
1.97 +//# define _STLP_HAS_NO_NAMESPACES 1
1.98 +
1.99 +// Uncomment if "using" keyword does not work with template types
1.100 +// # define _STLP_BROKEN_USING_DIRECTIVE 1
1.101 +
1.102 +// Uncomment this if your compiler does not support exceptions
1.103 +//# define _STLP_HAS_NO_EXCEPTIONS 1
1.104 +//# define _STLP_USE_TRAP_LEAVE 1
1.105 +
1.106 +// Header <new> that comes with the compiler
1.107 +// does not define bad_alloc exception
1.108 +//# if defined(__WINS__)
1.109 +// Possibly required ???
1.110 +# define _STLP_NO_BAD_ALLOC 1
1.111 +//# endif
1.112 +
1.113 +// Uncomment if member template methods are not available
1.114 +// # define _STLP_NO_MEMBER_TEMPLATES 1
1.115 +
1.116 +// Uncomment if member template classes are not available
1.117 +# if defined(__WINS__)
1.118 +//# define _STLP_NO_MEMBER_TEMPLATE_CLASSES 1
1.119 +# endif
1.120 +
1.121 +// Uncomment if friend member templates are not available
1.122 +#if defined(__WINS__)
1.123 +// Possibly required ???
1.124 +//# define _STLP_NO_FRIEND_TEMPLATES 1
1.125 +#endif
1.126 +
1.127 +// Compiler does not accept friend declaration qualified with namespace name.
1.128 +// # define _STLP_NO_QUALIFIED_FRIENDS 1
1.129 +
1.130 +// Uncomment if partial specialization is not available
1.131 +# if defined(__WINS__)
1.132 +//# define _STLP_NO_CLASS_PARTIAL_SPECIALIZATION 1
1.133 +# endif
1.134 +
1.135 +// Define if class being partially specialized require full name (template parameters)
1.136 +// of itself for method declarations
1.137 +// # define _STLP_PARTIAL_SPEC_NEEDS_TEMPLATE_ARGS
1.138 +
1.139 +// Compiler has problems specializing members of partially
1.140 +// specialized class
1.141 +// # define _STLP_MEMBER_SPECIALIZATION_BUG
1.142 +
1.143 +// Compiler requires typename keyword on outline method definition
1.144 +// explicitly taking nested types/typedefs
1.145 +// #define _STLP_TYPENAME_ON_RETURN_TYPE
1.146 +
1.147 +// * _STLP_STATIC_CONST_INIT_BUG: defined if the compiler can't handle a
1.148 +// constant-initializer in the declaration of a static const data member
1.149 +// of integer type. (See section 9.4.2, paragraph 4, of the C++ standard.)
1.150 +#if defined(__WINS__)
1.151 +//# define _STLP_STATIC_CONST_INIT_BUG
1.152 +#endif
1.153 +
1.154 +// Define if default constructor for builtin integer type fails to initialize it to 0
1.155 +// # define _STLP_DEFAULT_CONSTRUCTOR_BUG 1
1.156 +
1.157 +// Defined if constructor
1.158 +// required to explicitly call member's default constructors for const objects
1.159 +// # define _STLP_CONST_CONSTRUCTOR_BUG 1
1.160 +
1.161 +// Define this if compiler lacks <exception> header
1.162 +# define _STLP_NO_EXCEPTION_HEADER 1
1.163 +
1.164 +// Uncomment if native new-style C library headers lile <cstddef>, etc are not available.
1.165 +# define _STLP_HAS_NO_NEW_C_HEADERS 1
1.166 +
1.167 +// uncomment if new-style headers <new> is available
1.168 +// # define _STLP_HAS_NEW_NEW_HEADER 1
1.169 +
1.170 +// uncomment this if <iostream> and other STD headers put their stuff in ::namespace,
1.171 +// not std::
1.172 +// # define _STLP_VENDOR_GLOBAL_STD
1.173 +
1.174 +// uncomment this if <cstdio> and the like put stuff in ::namespace,
1.175 +// not std::
1.176 +# define _STLP_VENDOR_GLOBAL_CSTD
1.177 +/*
1.178 +# ifdef _PTHREADS
1.179 +# undef _PTHREADS
1.180 +# endif
1.181 +# ifdef _STLP_PTHREADS
1.182 +# undef _STLP_PTHREADS
1.183 +# endif
1.184 +# ifdef _STLP_THREADS
1.185 +# undef _STLP_THREADS
1.186 +# endif
1.187 +*/
1.188 +# define _STLP_NATIVE_INCLUDE_PATH
1.189 +# define _STLP_NATIVE_C_INCLUTE_PATH
1.190 +
1.191 +# define _STLP_NO_NEW_HEADER
1.192 +# define _STLP_NO_THREADS
1.193 +
1.194 +# define _STLP_NO_EXCEPTIONS
1.195 +
1.196 +# define _STLP_USE_NEWALLOC
1.197 +//# define _STLP_NO_NODE_ALLOC
1.198 +# define _STLP_NO_LONG_DOUBLE
1.199 +# define _STLP_BIG_ENDIAN
1.200 +// this one causes recursive abs() calls
1.201 +# define _STLP_LABS
1.202 +# define _STLP_LDIV
1.203 +# define _STLP_CONST_CONSTRUCTOR_BUG
1.204 +// # define _STLP_HAS_NAMESPACES
1.205 +
1.206 +#ifdef _STLP_USE_NEW_C_HEADERS
1.207 +#undef _STLP_USE_NEW_C_HEADERS
1.208 +#endif
1.209 +
1.210 +#undef _STLP_NATIVE_C_HEADER
1.211 +#ifndef __SYMBIAN32__
1.212 +#define _STLP_NATIVE_C_HEADER(x) <libc/##x>
1.213 +#endif
1.214 +#define _STLP_NATIVE_HEADER(x) <x>
1.215 +
1.216 +// -----------------------------------------------------------------------------
1.217 +// wstring support
1.218 +// This is a bit confusing.
1.219 +// * _STLP_NO_WCHAR_T inhibits the standard C wchar functions (Symbian doesn't
1.220 +// have them).
1.221 +// * _STLP_HAS_WCHAR_T triggers the typedef of wstring. It's based on wint_t,
1.222 +// which isn't typedef's elsewhere, so we take care of it here.
1.223 +// -----------------------------------------------------------------------------
1.224 +//# define _STLP_NO_WCHAR_T 1
1.225 +# define _STLP_HAS_WCHAR_T 1
1.226 +# define _STLP_WCHAR_T_IS_USHORT 1
1.227 +# include <wchar.h>
1.228 +
1.229 +#define _STLP_COMPLEX_SPECIALIZATION_BUG
1.230 +#define _STLP_USE_EXCEPTIONS
1.231 +#define _STLP_EXTERN_RANGE_ERRORS
1.232 +//#define _STLP_NO_FORCE_INSTANTIATE
1.233 +//#define __BUILDING_STLPORT
1.234 +//# define _STLP_USE_STDIO_IO
1.235 +# define _STLP_NO_NEW_NEW_HEADER
1.236 +# define _STLP_USE_DECLSPEC
1.237 +#define __LIBSTD_CPP_SYMBIAN32_WSD__
1.238 +
1.239 +//==========================================================
1.240 +#endif // _STLP_WINSCW