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