epoc32/include/stdapis/stlport/config/stl_mwerks.h
author William Roberts <williamr@symbian.org>
Wed, 31 Mar 2010 12:33:34 +0100 (2010-03-31)
branchSymbian3
changeset 4 837f303aceeb
parent 2 2fe1408b6811
permissions -rw-r--r--
Current Symbian^3 public API header files (from PDK 3.0.h)
This is the epoc32/include tree with the "platform" subtrees removed, and
all but a selected few mbg and rsg files removed.
williamr@2
     1
// STLport configuration file
williamr@2
     2
// It is internal STLport header - DO NOT include it directly
williamr@2
     3
williamr@2
     4
// Bring in definition of __MSL__ and related items
williamr@2
     5
#include <mslGlobals.h>
williamr@2
     6
#include <ansi_parms.h>
williamr@2
     7
williamr@2
     8
//
williamr@2
     9
//  Compiler features
williamr@2
    10
//
williamr@2
    11
williamr@2
    12
williamr@2
    13
// *** CodeWarrior Compiler Common Features ***
williamr@2
    14
#  if __option(longlong)
williamr@2
    15
#   define _STLP_LONG_LONG	long long
williamr@2
    16
#  endif
williamr@2
    17
williamr@2
    18
#  define _STLP_USE_UNIX_EMULATION_IO	1
williamr@2
    19
#  define _STLP_USE_AUTO_PTR_CONVERSIONS	1
williamr@2
    20
williamr@4
    21
#ifdef __SYMBIAN32__
williamr@4
    22
#   define _STLP_LITTLE_ENDIAN
williamr@4
    23
#else
williamr@2
    24
# ifdef __INTEL__
williamr@2
    25
#  define _STLP_LITTLE_ENDIAN
williamr@2
    26
# else
williamr@2
    27
#  define _STLP_BIG_ENDIAN
williamr@4
    28
# endif//__INTEL__
williamr@4
    29
#endif//__SYMBIAN32__
williamr@2
    30
williamr@2
    31
#if defined(_MSL_NO_LOCALE)
williamr@2
    32
#define _STLP_NO_IMPORT_LOCALE
williamr@2
    33
#endif
williamr@2
    34
#if !__option( wchar_type )
williamr@2
    35
# define _STLP_WCHAR_T_IS_USHORT
williamr@2
    36
#endif
williamr@2
    37
williamr@2
    38
// *** CodeWarrior Compiler Common Bugs ***
williamr@2
    39
#  define __MSL_FIX_ITERATORS__(myType)		// Some MSL headers rely on this
williamr@2
    40
#  define _STLP_NO_FRIEND_TEMPLATES 1	// Bug mysteriously reintroduced in this version.
williamr@2
    41
#  define _STLP_THROW_RETURN_BUG	1
williamr@2
    42
williamr@2
    43
//  *** Version-specific settings ***
williamr@2
    44
williamr@2
    45
#  if __MWERKS__ >= 0x2405
williamr@2
    46
#   define _STLP_HAS_NATIVE_FLOAT_ABS
williamr@2
    47
#  endif
williamr@2
    48
williamr@2
    49
#  if __MWERKS__ < 0x2405
williamr@2
    50
#   define _STLP_STATIC_CONST_INIT_BUG
williamr@2
    51
#  endif
williamr@2
    52
williamr@2
    53
#  if __MWERKS__ <= 0x2303
williamr@2
    54
#   define _STLP_NO_TEMPLATE_CONVERSIONS	1
williamr@2
    55
#   define _STLP_NO_MEMBER_TEMPLATE_KEYWORD	1
williamr@2
    56
#  endif
williamr@2
    57
williamr@2
    58
#  if __MWERKS__ < 0x2301
williamr@2
    59
#   define _STLP_MEMBER_SPECIALIZATION_BUG	1
williamr@2
    60
#  endif
williamr@2
    61
williamr@2
    62
#  if __MWERKS__ < 0x2300		// CW Pro5 features
williamr@2
    63
#   define _STLP_INLINE_MEMBER_TEMPLATES 1
williamr@2
    64
#   define _STLP_RELOPS_IN_STD_BUG	 1
williamr@2
    65
#   define _STLP_DEFAULT_CONSTRUCTOR_BUG 1
williamr@2
    66
#   define _STLP_NO_TYPENAME_ON_RETURN_TYPE
williamr@2
    67
#  endif
williamr@2
    68
williamr@2
    69
#  if __MWERKS__ < 0x2200		// CW Pro4 features
williamr@2
    70
#   define _STLP_BROKEN_USING_DIRECTIVE	1
williamr@2
    71
#   define _STLP_NO_MEMBER_TEMPLATES 1
williamr@2
    72
#   define _STLP_NO_MEMBER_TEMPLATE_CLASSES 1
williamr@2
    73
#   define _STLP_NO_MEMBER_TEMPLATE_KEYWORD 1
williamr@2
    74
#   define _STLP_NO_FRIEND_TEMPLATES 1
williamr@2
    75
#   define _STLP_NO_QUALIFIED_FRIENDS 1
williamr@2
    76
#   define _STLP_NO_FUNCTION_TMPL_PARTIAL_ORDER 1
williamr@2
    77
#  endif
williamr@2
    78
williamr@2
    79
#  if __MWERKS__ < 0x2100			// CW Pro3 features
williamr@2
    80
#   define _STLP_NO_CLASS_PARTIAL_SPECIALIZATION 1
williamr@2
    81
#   define _STLP_HAS_NO_NAMESPACES 1
williamr@2
    82
#   define _STLP_NO_EXPLICIT_FUNCTION_TMPL_ARGS 1
williamr@2
    83
williamr@2
    84
#   define _STLP_NEED_TYPENAME				1
williamr@2
    85
#   define _STLP_NO_ARROW_OPERATOR 1
williamr@2
    86
#   define _STLP_TEMPLATE_PARAM_SUBTYPE_BUG	1
williamr@2
    87
#   define _STLP_FORCED_INLINE_INSTANTIATION_BUG	1
williamr@2
    88
#   define _STLP_MULTI_CONST_TEMPLATE_ARG_BUG	1
williamr@2
    89
#   define _STLP_INLINE_NAME_RESOLUTION_BUG	1
williamr@2
    90
// *** Metrowerks Standard Library Bug ***
williamr@2
    91
#   define _STLP_MSVC50_COMPATIBILITY 1
williamr@2
    92
#  endif
williamr@2
    93
williamr@2
    94
#  if __MWERKS__ < 0x2000			// v. 2.0 features
williamr@2
    95
#   define _STLP_NO_WCHAR_T 1
williamr@2
    96
#   define _STLP_NO_DEFAULT_NON_TYPE_PARAM 1
williamr@2
    97
#   define _STLP_NON_TYPE_TMPL_PARAM_BUG	1	// dwa 8/21/97 - this bug fixed for CWPro2
williamr@2
    98
#   define _STLP_UNINITIALIZABLE_PRIVATE  1		// dwa 10/23/97 - this bug fixed for CWPro2
williamr@2
    99
#  endif
williamr@2
   100
williamr@2
   101
#  if __MWERKS__ < 0x1900         				// dwa 8/19/97 - 1.9 Compiler feature defines
williamr@2
   102
#   define _STLP_LIMITED_DEFAULT_TEMPLATES 1
williamr@2
   103
#   define _STLP_BASE_TYPEDEF_BUG        1
williamr@2
   104
#   define _STLP_BASE_MATCH_BUG   1
williamr@2
   105
#   define _STLP_NONTEMPL_BASE_MATCH_BUG 1
williamr@2
   106
#   define _STLP_DEFAULT_TYPE_PARAM  1			// More limited template parameters
williamr@2
   107
williamr@2
   108
#   if __MWERKS__ < 0x1800
williamr@2
   109
    __GIVE_UP_WITH_STL(CW_18)
williamr@2
   110
#   endif
williamr@2
   111
williamr@2
   112
#  endif
williamr@2
   113
williamr@2
   114
williamr@2
   115
// fixes to native inclusion wrappers. 
williamr@2
   116
# if __MWERKS__ >= 0x2300	// CWPro5 changes paths - dwa 2/28/99
williamr@2
   117
williamr@2
   118
#  define _STLP_NATIVE_INCLUDE_PATH  ../include
williamr@2
   119
#  define _STLP_NATIVE_C_INCLUDE_PATH  ../include
williamr@2
   120
#  define _STLP_NATIVE_HEADER(header)     <../include/##header>  
williamr@2
   121
#  define _STLP_NATIVE_CPP_C_HEADER(header)     <../include/##header>
williamr@2
   122
#  define _STLP_NATIVE_C_HEADER(header)     <../include/##header>
williamr@2
   123
#  define _STLP_NATIVE_CPP_RUNTIME_HEADER(header) <../include/##header>
williamr@2
   124
williamr@2
   125
# else
williamr@2
   126
williamr@2
   127
#  define _STLP_NATIVE_INCLUDE_PATH  Macintosh HD:Codewarrior Pro 4:Metrowerks CodeWarrior:Metrowerks Standard Library:MSL C++:Include
williamr@2
   128
#  define _STLP_NATIVE_C_INCLUDE_PATH  Macintosh HD:Codewarrior Pro 4:Metrowerks CodeWarrior:Metrowerks Standard Library:MSL C:MSL Common:Public Includes
williamr@2
   129
#  define _STLP_NATIVE_HEADER(header)     <Macintosh HD:Codewarrior Pro 4:Metrowerks CodeWarrior:Metrowerks Standard Library:MSL C++:Include:##header>
williamr@2
   130
#  define _STLP_NATIVE_CPP_C_HEADER(header)     <Macintosh HD:Codewarrior Pro 4:Metrowerks CodeWarrior:Metrowerks Standard Library:MSL C++:Include:##header>
williamr@2
   131
#  define _STLP_NATIVE_C_HEADER(header)     <Macintosh HD:Codewarrior Pro 4:Metrowerks CodeWarrior:Metrowerks Standard Library:MSL C:MSL Common:Public Includes:##header>
williamr@2
   132
#   define _STLP_NATIVE_CPP_RUNTIME_HEADER(header) <Macintosh HD:Codewarrior Pro 4:Metrowerks CodeWarrior:Metrowerks Standard Library:MSL C:MSL Common:Public Includes:##header>
williamr@2
   133
williamr@2
   134
# endif
williamr@2
   135
williamr@2
   136
     // fbp
williamr@2
   137
# if !defined( __MSL_CPP__ ) || __MSL_CPP__ <= 0x4105
williamr@2
   138
#   define _STLP_NO_NATIVE_WIDE_STREAMS 1
williamr@2
   139
#  endif
williamr@2
   140
williamr@2
   141
# define _STLP_LIB_BASENAME stlport_mwerks_x86
williamr@2
   142
# define _STLP_DLLEXPORT_NEEDS_PREDECLARATION 1
williamr@2
   143
williamr@2
   144
#if defined (__WINS__)
williamr@2
   145
williamr@2
   146
#  ifdef _PTHREADS
williamr@2
   147
#    undef  _PTHREADS
williamr@2
   148
#  endif
williamr@2
   149
#  ifdef _STLP_PTHREADS
williamr@2
   150
#    undef _STLP_PTHREADS
williamr@2
   151
#  endif
williamr@2
   152
#  ifdef _STLP_THREADS
williamr@2
   153
#    undef _STLP_THREADS
williamr@2
   154
#  endif
williamr@2
   155
williamr@2
   156
#   undef _STLP_NATIVE_C_HEADER
williamr@2
   157
#   define _STLP_NATIVE_C_HEADER(x) <libc/##x>
williamr@2
   158
williamr@2
   159
#   define _STLP_NO_NEW_HEADER
williamr@2
   160
#   define _STLP_HAS_NO_NEW_C_HEADERS 1
williamr@2
   161
#   define _STLP_NO_THREADS
williamr@2
   162
#   define _STLP_NO_EXCEPTION_HEADER
williamr@2
   163
#   define _STLP_NO_WCHAR_T
williamr@2
   164
#   define _STLP_NO_IOSTREAMS
williamr@2
   165
#   define _STLP_NO_OWN_IOSTREAMS
williamr@2
   166
#   undef  _STLP_OWN_IOSTREAMS
williamr@2
   167
#   define _NOTHREADS
williamr@2
   168
#   define _STLP_USE_NEWALLOC
williamr@2
   169
#   define _STLP_NO_NODE_ALLOC
williamr@2
   170
#   define _STLP_LITTLE_ENDIAN
williamr@2
   171
#   define _STLP_NO_LONG_DOUBLE
williamr@2
   172
#   define _STLP_LABS
williamr@2
   173
#   define _STLP_LDIV
williamr@2
   174
//#   define _STLP_NO_NAMESPACES
williamr@2
   175
#   define _STLP_CONST_CONSTRUCTOR_BUG
williamr@2
   176
#   define _STLP_VENDOR_GLOBAL_CSTD
williamr@2
   177
williamr@2
   178
#undef _STLP_IMPORT_VENDOR_CSTD
williamr@2
   179
williamr@2
   180
#ifndef __LEAVE_EQUALS_THROW__
williamr@2
   181
#  define _STLP_NO_EXCEPTIONS
williamr@2
   182
#  define _STLP_USE_TRAP_LEAVE 
williamr@2
   183
#else
williamr@2
   184
#  ifdef _STLP_NO_EXCEPTIONS
williamr@2
   185
#    undef _STLP_NO_EXCEPTIONS
williamr@2
   186
#  endif
williamr@2
   187
#  ifdef _STLP_USE_TRAP_LEAVE
williamr@2
   188
#    undef _STLP_USE_TRAP_LEAVE
williamr@2
   189
#  endif
williamr@2
   190
#endif
williamr@2
   191
williamr@2
   192
// #   define _STLP_MULTI_CONST_TEMPLATE_ARG_BUG
williamr@2
   193
#endif
williamr@2
   194
williamr@2
   195
// # include <config/vc_select_lib.h>
williamr@2
   196
williamr@2
   197