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