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