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