home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / stlpt453.zip / STLport-4.5.3 / stlport / config / stl_sunpro.h < prev    next >
C/C++ Source or Header  |  2002-02-08  |  6KB  |  174 lines

  1. // STLport configuration file
  2. // It is internal STLport header - DO NOT include it directly
  3.  
  4. #  define _STLP_LONG_LONG  long long
  5. #  define _STLP_LINK_TIME_INSTANTIATION 1
  6.  
  7. # if ! defined(_BOOL)
  8. #  define _STLP_NO_BOOL 1
  9. # endif
  10.  
  11. #  if (__SUNPRO_CC >= 0x500 ) && (!defined (__SUNPRO_CC_COMPAT) || (__SUNPRO_CC_COMPAT == 5 )) \
  12.     && defined (_STLP_NO_OWN_IOSTREAMS) && ! defined (_STLP_HAS_NO_NEW_IOSTREAMS)
  13. #    error "The wrapper (_STLP_NO_OWN_IOSTREAMS) mode does not work well without _STLP_HAS_NO_NEW_IOSTREAMS. Please set this flag. You will also have to use -liostream option on link phase."
  14. // #   define _STLP_HAS_NO_NEW_IOSTREAMS
  15. #  endif
  16.  
  17. // compatibility mode stuff
  18. # if (__SUNPRO_CC >= 0x510) && (!defined (__SUNPRO_CC_COMPAT) || (__SUNPRO_CC_COMPAT == 5 ))
  19. #  define _STLP_NATIVE_INCLUDE_PATH ../CC/Cstd
  20. #  define _STLP_NATIVE_CPP_RUNTIME_INCLUDE_PATH ../CC
  21. # elif (__SUNPRO_CC >= 0x500) && (!defined (__SUNPRO_CC_COMPAT) || (__SUNPRO_CC_COMPAT == 5 ))
  22. #  define _STLP_NATIVE_INCLUDE_PATH ../CC
  23. # elif (defined (__SUNPRO_CC_COMPAT) && __SUNPRO_CC_COMPAT == 4)
  24. #  define _STLP_NATIVE_INCLUDE_PATH ../CC4
  25. # else
  26. #  define _STLP_NATIVE_INCLUDE_PATH ../CC
  27. # endif
  28.  
  29. #  if (__SUNPRO_CC >= 0x500 ) && ( defined (_STLP_NO_NEW_IOSTREAMS) || defined (_STLP_HAS_NO_NEW_IOSTREAMS) )
  30. // if the project is set up to use libiostream (_STLP_NO_NEW_IOSTREAMS should be defined then),
  31. // use classic iostreams
  32. #   define _STLP_NATIVE_OLD_STREAMS_INCLUDE_PATH ../CCios
  33. #  endif
  34.  
  35. #  define _STLP_STATIC_CONST_INIT_BUG 1
  36.  
  37. # if (__SUNPRO_CC < 0x530)
  38. // those are tested and proved not to work...
  39. #  define _STLP_STATIC_ARRAY_BUG 1
  40. #  define _STLP_NO_CLASS_PARTIAL_SPECIALIZATION 1
  41. #  define _STLP_NO_MEMBER_TEMPLATE_CLASSES 1
  42. #  define _STLP_USE_OLD_HP_ITERATOR_QUERIES
  43. # endif 
  44.  
  45.  
  46. # if defined (_STLP_OWN_IOSTREAMS)
  47. //#  if ! defined (_STLP_NO_OWN_NAMESPACE)
  48. //#   define _STLP_NO_OWN_NAMESPACE
  49. //#  endif
  50. # else
  51. #  define _STLP_HAS_NO_NEW_C_HEADERS 1
  52. # endif
  53.  
  54. // those do not depend on compatibility
  55. # if (__SUNPRO_CC < 0x510)
  56. #  define _STLP_NO_TYPENAME_ON_RETURN_TYPE 1 
  57. #  define _STLP_NONTEMPL_BASE_MATCH_BUG 1
  58. # endif
  59.  
  60. # if (__SUNPRO_CC < 0x510) || (defined (__SUNPRO_CC_COMPAT) && (__SUNPRO_CC_COMPAT < 5))
  61.  
  62. #  define _STLP_NO_QUALIFIED_FRIENDS 1
  63.  
  64. // no partial , just for explicit one
  65. #  define _STLP_PARTIAL_SPEC_NEEDS_TEMPLATE_ARGS
  66. #  define _STLP_NON_TYPE_TMPL_PARAM_BUG 1
  67.  
  68. #  define _STLP_NO_MEMBER_TEMPLATES 1
  69. #  define _STLP_NO_FRIEND_TEMPLATES 1
  70.  
  71. #  define _STLP_NO_FUNCTION_TMPL_PARTIAL_ORDER 1
  72. #  define _STLP_NO_EXPLICIT_FUNCTION_TMPL_ARGS
  73. #  define _STLP_NO_MEMBER_TEMPLATE_KEYWORD 1
  74. # endif
  75.  
  76. // Features that depend on compatibility switch
  77. # if ( __SUNPRO_CC < 0x500 ) || (defined (__SUNPRO_CC_COMPAT) && (__SUNPRO_CC_COMPAT < 5))
  78.  
  79. #  ifndef _STLP_HAS_NO_NEW_IOSTREAMS
  80. #   define _STLP_HAS_NO_NEW_IOSTREAMS 1
  81. #  endif
  82. #  define _STLP_NO_NEW_NEW_HEADER 1
  83. // #  define _STLP_NO_RELOPS_NAMESPACE
  84. #  define _STLP_HAS_NO_NAMESPACES 1
  85. #  define _STLP_NEED_MUTABLE  1
  86. #  define _STLP_NO_BAD_ALLOC 1
  87. #  define _STLP_NO_EXCEPTION_HEADER 1
  88. #  define _STLP_NATIVE_C_INCLUDE_PATH ../include
  89. # elif (__SUNPRO_CC < 0x510)
  90. // #  define _STLP_NATIVE_C_HEADER(header) <../CC/##header##.SUNWCCh>
  91. #  define _STLP_NATIVE_CPP_C_HEADER(header) <../CC/##header##.SUNWCCh>
  92. #  define _STLP_NATIVE_C_INCLUDE_PATH /usr/include
  93. # elif defined( __SunOS_5_5_1 ) || defined( __SunOS_5_6 ) || defined( __SunOS_5_7 )
  94. #  define _STLP_NATIVE_C_INCLUDE_PATH ../CC/std
  95. #  define _STLP_NATIVE_CPP_C_INCLUDE_PATH ../CC/std
  96. # else
  97. #  define _STLP_NATIVE_C_INCLUDE_PATH /usr/include
  98. #  define _STLP_NATIVE_CPP_C_INCLUDE_PATH ../CC/std
  99. # endif
  100.  
  101.  
  102.  
  103. #  if ( __SUNPRO_CC < 0x500 )
  104.  
  105. # undef _STLP_NATIVE_C_HEADER
  106. # undef _STLP_NATIVE_CPP_C_HEADER
  107.  
  108. #   define wint_t __wint_t 
  109. // famous CC 4.2 bug
  110. #   define _STLP_INLINE_STRING_LITERAL_BUG 1
  111. // /usr/include
  112. #   define _STLP_NATIVE_C_INCLUDE_PATH ../include
  113.  
  114. // 4.2 cannot handle iterator_traits<_Tp>::iterator_category as a return type ;(
  115. #  define _STLP_USE_OLD_HP_ITERATOR_QUERIES
  116.  
  117. // 4.2 does not like it
  118. #  undef  _STLP_PARTIAL_SPEC_NEEDS_TEMPLATE_ARGS
  119.  
  120. #  define _STLP_LIMITED_DEFAULT_TEMPLATES 1
  121.  
  122. #  define _STLP_NEED_TYPENAME 1
  123. #  define _STLP_NEED_EXPLICIT 1
  124. #  define _STLP_UNINITIALIZABLE_PRIVATE 1
  125. #  define _STLP_NO_BAD_ALLOC 1
  126. #  define _STLP_NO_ARROW_OPERATOR 1
  127.  
  128. #  define _STLP_DEFAULT_CONSTRUCTOR_BUG 1
  129. #  define _STLP_GLOBAL_NESTED_RETURN_TYPE_PARAM_BUG 1
  130. #  undef  _STLP_HAS_NO_NEW_C_HEADERS
  131. #  define _STLP_HAS_NO_NEW_C_HEADERS 1
  132. // #  define _STLP_DONT_SIMULATE_PARTIAL_SPEC_FOR_TYPE_TRAITS
  133.  
  134. #   if ( __SUNPRO_CC < 0x420 )
  135. #    define _STLP_NO_PARTIAL_SPECIALIZATION_SYNTAX 1
  136. #    define _STLP_NO_NEW_STYLE_CASTS 1
  137. #    define _STLP_NO_METHOD_SPECIALIZATION 1
  138. #    if ( __SUNPRO_CC > 0x401 )
  139. #     if (__SUNPRO_CC==0x410)
  140. #      define _STLP_BASE_TYPEDEF_OUTSIDE_BUG  1
  141. #     endif
  142. #    else
  143.    // SUNPro C++ 4.0.1
  144. #     define _STLP_BASE_MATCH_BUG          1
  145. #     define _STLP_BASE_TYPEDEF_BUG        1
  146. #      if ( __SUNPRO_CC < 0x401 )
  147.         __GIVE_UP_WITH_STL(SUNPRO_401)
  148. #      endif
  149. #    endif /* 4.0.1 */
  150. #   endif /* 4.2 */
  151.  
  152. #  endif /* <  5.0 */
  153.  
  154. # include <config/stl_solaris.h>
  155.  
  156. #ifndef _MBSTATET_H
  157. #   define _MBSTATET_H
  158. #   undef _MBSTATE_T
  159. #   define _MBSTATE_T
  160.     typedef struct __mbstate_t {
  161.       #if defined(_LP64)
  162.         long    __filler[4];
  163.       #else
  164.         int     __filler[6];
  165.       #endif
  166.     } __mbstate_t;
  167. # ifndef _STLP_HAS_NO_NAMESPACES
  168.     namespace std {
  169.         typedef __mbstate_t     mbstate_t;
  170.     }
  171.     using std::mbstate_t;
  172. # endif
  173. #endif  /* __MBSTATET_H */
  174.