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