home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / stlpt453.zip / STLport-4.5.3 / stlport / stl / _site_config.h < prev    next >
Text File  |  2002-01-10  |  7KB  |  195 lines

  1. // 
  2. // This file defines site configuration.
  3. //
  4. //
  5.  
  6. /* 
  7.  * _STLP_NO_THREADS: if defined, STLport don't use any 
  8.  * multithreading support. Synonym is _NOTHREADS
  9.  */
  10. // #define _NOTHREADS
  11. // #define _STLP_NO_THREADS
  12.  
  13. /* _PTHREADS: if defined, use Posix threads for multithreading support. */
  14. // #define _PTHREADS
  15.  
  16. // compatibility section
  17.  
  18. # if defined (_STLP_NO_IOSTREAMS) || defined (_STLP_NO_NEW_IOSTREAMS) && ! defined ( _STLP_NO_OWN_IOSTREAMS )
  19. #  define _STLP_NO_OWN_IOSTREAMS
  20. # endif
  21.  
  22. # if !defined (_STLP_NO_OWN_IOSTREAMS) &&  ! defined (_STLP_OWN_IOSTREAMS)
  23. #  define _STLP_OWN_IOSTREAMS
  24. # endif
  25.  
  26. # if (defined (_STLP_NOTHREADS) || defined (_STLP_NO_THREADS) || defined (NOTHREADS))
  27. #  if ! defined (_NOTHREADS)
  28. #   define _NOTHREADS
  29. #  endif
  30. #  if ! defined (_STLP_NO_THREADS)
  31. #   define _STLP_NO_THREADS
  32. #  endif
  33. # endif
  34.  
  35. /*
  36.  * Turn _STLP_USE_DYNAMIC_LIB to enforce use of .dll version of STLport library.
  37.  * NOTE : please do that only if you know what you are doing !
  38.  * Changing default will require you to change makefile in "src" accordingly
  39.  * and to rebuild STLPort library !
  40.  * On UNIX, this has no effect. 
  41.  *
  42.  */
  43. // # define _STLP_USE_DYNAMIC_LIB
  44.  
  45. /*
  46.  * Turn _STLP_USE_STATIC_LIB to enforce use of static version of STLport library.
  47.  * NOTE : please do that only if you know what you are doing !
  48.  * Changing default will require you to change makefile in "src" accordingly
  49.  * and to rebuild STLPort library !
  50.  * On UNIX, this has no effect. 
  51.  *
  52.  */
  53. // # define _STLP_USE_STATIC_LIB
  54.  
  55.  
  56. /* 
  57.  * Edit relative path below (or put full path) to get native 
  58.  * compiler vendor's headers included. Default is "../include"
  59.  * Hint : never install STLport in the directory that ends with "include"
  60.  */
  61. // #  undef _STLP_NATIVE_INCLUDE_PATH
  62. // #  define _STLP_NATIVE_INCLUDE_PATH ../include
  63. // same for C library headers like <cstring>
  64. // #  undef _STLP_NATIVE_CPP_C_INCLUDE_PATH
  65. // #  define _STLP_NATIVE_CPP_C_INCLUDE_PATH ../include
  66. // same for C headers like <string.h>
  67. // #  undef _STLP_NATIVE_C_INCLUDE_PATH
  68. // #  define _STLP_NATIVE_C_INCLUDE_PATH ../include
  69.  
  70.  
  71. /* 
  72.  * _STLP_USE_OWN_NAMESPACE/_STLP_NO_OWN_NAMESPACE
  73.  * If defined, STLport uses _STL:: namespace, else std::
  74.  * The reason you have to use separate namespace in wrapper mode is that new-style IO
  75.  * compiled library may have its own idea about STL stuff (string, vector, etc.),
  76.  * so redefining them in the same namespace would break ODR and may cause
  77.  * undefined behaviour. Rule of thumb is - if new-style iostreams are
  78.  * available, there WILL be a conflict. Otherwise you should be OK.
  79.  * In STLport iostreams mode, there is no need for this flag other than to facilitate
  80.  * link with third-part libraries compiled with different standard library implementation.
  81.  */
  82. // #  define _STLP_USE_OWN_NAMESPACE 1
  83. // #  define _STLP_NO_OWN_NAMESPACE  1
  84.  
  85.  
  86. /* 
  87.  * Uncomment _STLP_USE_NEWALLOC to force allocator<T> to use plain "new"
  88.  * instead of STLport optimized node allocator engine.
  89.  */
  90. // #define   _STLP_USE_NEWALLOC   1
  91.  
  92. /* 
  93.  * Uncomment _STLP_USE_MALLOC to force allocator<T> to use plain "malloc" 
  94.  * instead of STLport optimized node allocator engine.
  95.  */
  96. // #define   _STLP_USE_MALLOC 1
  97.  
  98. /*
  99.  * Set _STLP_DEBUG_ALLOC to use allocators that perform memory debugging,
  100.  * such as padding/checking for memory consistency 
  101.  */
  102. // #define   _STLP_DEBUG_ALLOC 1
  103.  
  104.  
  105. /*
  106.  * Uncomment this to force all debug diagnostic to be directed through a
  107.  * user-defined global function:
  108.  *    void __stl_debug_message(const char * format_str, ...)
  109.  * instead of predefined STLport routine. 
  110.  * This allows you to take control of debug message output.
  111.  * Default routine calls fprintf(stderr,...)
  112.  * Note : If you set this macro, you must supply __stl_debug_message 
  113.  * function definition somewhere.
  114.  */
  115. //#define _STLP_DEBUG_MESSAGE 1
  116.  
  117. /*
  118.  * Uncomment this to force all failed assertions to be executed through
  119.  * user-defined global function:
  120.  *    void __stl_debug_terminate(void). This allows
  121.  * you to take control of assertion behaviour for debugging purposes.
  122.  * Default routine throws unique exception if _STLP_USE_EXCEPTIONS is set,
  123.  * calls _STLP_ABORT() otherwise.
  124.  * Note : If you set this macro, you must supply __stl_debug_terminate 
  125.  * function definition somewhere.
  126.  */
  127. //#define _STLP_DEBUG_TERMINATE 1
  128.  
  129. /*
  130.  * Comment this out to enable throwing exceptions from default __stl_debug_terminate()
  131.  * instead of calling _STLP_ABORT().
  132.  */
  133. #define   _STLP_NO_DEBUG_EXCEPTIONS 1
  134.  
  135. /* 
  136.  * Uncomment that to disable exception handling code 
  137.  */
  138. // #define   _STLP_NO_EXCEPTIONS 1
  139.  
  140. /*
  141.  * _STLP_NO_NAMESPACES: if defined, don't put the library in namespace
  142.  * stlport:: or std::, even if the compiler supports namespaces
  143.  */
  144.  
  145. // #define   _STLP_NO_NAMESPACES 1
  146.  
  147. //==========================================================
  148. // Compatibility section
  149. //==========================================================
  150.  
  151. /* 
  152.  * Use abbreviated class names for linker benefit (don't affect interface).
  153.  * This option is obsolete, but should work in this release.
  154.  *
  155.  */
  156. // # define _STLP_USE_ABBREVS
  157.  
  158. /* 
  159.  * This definition precludes STLport reverse_iterator to be compatible with
  160.  * other parts of MSVC library. (With partial specialization, it just
  161.  * has no effect).
  162.  * Use it _ONLY_ if you use SGI-style reverse_iterator<> template explicitly
  163.  */
  164. // #    define _STLP_NO_MSVC50_COMPATIBILITY 1
  165.  
  166. /*
  167.  * _STLP_USE_RAW_SGI_ALLOCATORS is a hook so that users can disable use of
  168.  * allocator<T> as default parameter for containers, and use SGI
  169.  * raw allocators as default ones, without having to edit library headers.
  170.  * Use of this macro is strongly discouraged.
  171.  */
  172. // #define   _STLP_USE_RAW_SGI_ALLOCATORS 1
  173.  
  174. /*
  175.  * Use obsolete overloaded template functions iterator_category(), value_type(), distance_type()
  176.  * for querying iterator properties. Please note those names are non-standard and are not guaranteed
  177.  * to be used by every implementation. However, this setting is on by default when partial specialization
  178.  * is not implemented in the compiler and cannot be sumulated (only if _STLP_NO_ANACHRONISMS is not set). 
  179.  * Use of those interfaces for user-defined iterators is strongly discouraged: 
  180.  * please use public inheritance from iterator<> template to achieve desired effect. 
  181.  * Second form is to disable old-style queries in any case.
  182.  */
  183. // # define _STLP_USE_OLD_HP_ITERATOR_QUERIES
  184. // # define _STLP_NO_OLD_HP_ITERATOR_QUERIES
  185.  
  186.  
  187. //==========================================================================
  188.  
  189. // This section contains swithes which should be off by default,
  190. // but so few compilers would have it undefined, so that we set them here,
  191. // with the option to be turned off later in compiler-specific file
  192.  
  193. # define _STLP_INCOMPLETE_EXCEPTION_HEADER
  194.  
  195.