Home | History | Annotate | Download | only in config
      1 // STLport configuration file
      2 // It is internal STLport header - DO NOT include it directly
      3 
      4 #define _STLP_COMPILER "Metrowerk Codewarrior"
      5 
      6 // Bring in definition of __MSL__ and related items
      7 #include <mslGlobals.h>
      8 #include <ansi_parms.h>
      9 
     10 //
     11 //  Compiler features
     12 //
     13 
     14 
     15 // *** CodeWarrior Compiler Common Features ***
     16 #  if __option(longlong)
     17 #   define _STLP_LONG_LONG  long long
     18 #  endif
     19 
     20 #  define _STLP_USE_UNIX_EMULATION_IO  1
     21 
     22 #  define _STLP_USE_AUTO_PTR_CONVERSIONS  1
     23 
     24 # ifdef __INTEL__
     25 #  define _STLP_LITTLE_ENDIAN
     26 # else
     27 #  define _STLP_BIG_ENDIAN
     28 # endif
     29 
     30 #if defined(_MSL_NO_LOCALE)
     31 #define _STLP_NO_IMPORT_LOCALE
     32 #endif
     33 #if !__option( wchar_type )
     34 # define _STLP_WCHAR_T_IS_USHORT
     35 #endif
     36 
     37 #  if __MWERKS__ < 0x3000
     38 // *** CodeWarrior Compiler Common Bugs ***
     39 #   define __MSL_FIX_ITERATORS__(myType)    // Some MSL headers rely on this
     40 #   define _STLP_THROW_RETURN_BUG  1
     41 #  endif
     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_DEF_CONST_PLCT_NEW_BUG 1
     66 #   define _STLP_DEF_CONST_DEF_PARAM_BUG 1
     67 #   define _STLP_NO_TYPENAME_ON_RETURN_TYPE
     68 #  endif
     69 
     70 #  if __MWERKS__ < 0x2200    // CW Pro4 features
     71 #   define _STLP_BROKEN_USING_DIRECTIVE  1
     72 #   define _STLP_NO_MEMBER_TEMPLATES 1
     73 #   define _STLP_NO_MEMBER_TEMPLATE_CLASSES 1
     74 #   define _STLP_NO_MEMBER_TEMPLATE_KEYWORD 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 #  endif
     99 
    100 #  if __MWERKS__ < 0x1900                 // dwa 8/19/97 - 1.9 Compiler feature defines
    101 #   define _STLP_LIMITED_DEFAULT_TEMPLATES 1
    102 #   define _STLP_BASE_TYPEDEF_BUG        1
    103 #   define _STLP_BASE_MATCH_BUG   1
    104 #   define _STLP_NONTEMPL_BASE_MATCH_BUG 1
    105 #   define _STLP_DEFAULT_TYPE_PARAM  1      // More limited template parameters
    106 
    107 #   if __MWERKS__ < 0x1800
    108     __GIVE_UP_WITH_STL(CW_18)
    109 #   endif
    110 
    111 #  endif
    112 
    113 
    114 // fixes to native inclusion wrappers.
    115 # if __MWERKS__ >= 0x2300  // CWPro5 changes paths - dwa 2/28/99
    116 #  define _STLP_NATIVE_INCLUDE_PATH  ../include
    117 #  define _STLP_NATIVE_C_INCLUDE_PATH  ../include
    118 #  define _STLP_NATIVE_HEADER(header)     <../include/##header>
    119 #  define _STLP_NATIVE_CPP_C_HEADER(header)     <../include/##header>
    120 #  define _STLP_NATIVE_C_HEADER(header)     <../include/##header>
    121 #  define _STLP_NATIVE_CPP_RUNTIME_HEADER(header) <../include/##header>
    122 # else
    123 
    124 #  define _STLP_NATIVE_INCLUDE_PATH  Macintosh HD:Codewarrior Pro 4:Metrowerks CodeWarrior:Metrowerks Standard Library:MSL C++:Include
    125 #  define _STLP_NATIVE_C_INCLUDE_PATH  Macintosh HD:Codewarrior Pro 4:Metrowerks CodeWarrior:Metrowerks Standard Library:MSL C:MSL Common:Public Includes
    126 #  define _STLP_NATIVE_HEADER(header)     <Macintosh HD:Codewarrior Pro 4:Metrowerks CodeWarrior:Metrowerks Standard Library:MSL C++:Include:##header>
    127 #  define _STLP_NATIVE_CPP_C_HEADER(header)     <Macintosh HD:Codewarrior Pro 4:Metrowerks CodeWarrior:Metrowerks Standard Library:MSL C++:Include:##header>
    128 #  define _STLP_NATIVE_C_HEADER(header)     <Macintosh HD:Codewarrior Pro 4:Metrowerks CodeWarrior:Metrowerks Standard Library:MSL C:MSL Common:Public Includes:##header>
    129 #  define _STLP_NATIVE_CPP_RUNTIME_HEADER(header) <Macintosh HD:Codewarrior Pro 4:Metrowerks CodeWarrior:Metrowerks Standard Library:MSL C:MSL Common:Public Includes:##header>
    130 
    131 # endif
    132 
    133 //Following block come from boost intrinsics.hpp file:
    134 #if defined (__MSL_CPP__) && (__MSL_CPP__ >= 0x8000)
    135     // Metrowerks compiler is acquiring intrinsic type traits support
    136     // post version 8.  We hook into the published interface to pick up
    137     // user defined specializations as well as compiler intrinsics as
    138     // and when they become available:
    139 #   include <msl_utility>
    140 #   define _STLP_HAS_TRIVIAL_CONSTRUCTOR(T) Metrowerks::has_trivial_default_ctor<T>::value
    141 #   define _STLP_HAS_TRIVIAL_COPY(T) Metrowerks::has_trivial_copy_ctor<T>::value
    142 #   define _STLP_HAS_TRIVIAL_ASSIGN(T) Metrowerks::has_trivial_assignment<T>::value
    143 #   define _STLP_HAS_TRIVIAL_DESTRUCTOR(T) Metrowerks::has_trivial_dtor<T>::value
    144 #   define _STLP_IS_POD(T) Metrowerks::is_POD<T>::value
    145 #   define _STLP_HAS_TYPE_TRAITS_INTRINSICS
    146 #endif
    147 
    148 // fbp
    149 # if !defined( __MSL_CPP__ ) || __MSL_CPP__ <= 0x4105
    150 #   define _STLP_NO_NATIVE_WIDE_STREAMS 1
    151 #  endif
    152 
    153 # if defined(__MACH__)
    154 #  define _STLP_MAC
    155 #  define O_BINARY 0
    156 # elif defined(macintosh)
    157 #  define _NOTHREADS
    158 # endif
    159 # define _STLP_DLLEXPORT_NEEDS_PREDECLARATION 1
    160