Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygenhost.h
Go to the documentation of this file.
00001 /* 00002 * This file defines site configuration. 00003 */ 00004 00005 /* 00006 * _STLP_NO_THREADS: if defined, STLport don't use any 00007 * multithreading support. Synonym is _NOTHREADS 00008 */ 00009 /* 00010 #define _NOTHREADS 00011 #define _STLP_NO_THREADS 00012 */ 00013 00014 /* _PTHREADS: if defined, use POSIX threads for multithreading support. */ 00015 /* 00016 #define _PTHREADS 00017 */ 00018 00019 /* compatibility section 00020 */ 00021 00022 #if (defined (_STLP_NOTHREADS) || defined (_STLP_NO_THREADS) || defined (NOTHREADS)) 00023 # if !defined (_NOTHREADS) 00024 # define _NOTHREADS 00025 # endif 00026 # if !defined (_STLP_NO_THREADS) 00027 # define _STLP_NO_THREADS 00028 # endif 00029 #endif 00030 00031 #if !defined(_STLP_USE_DYNAMIC_LIB) && !defined(_STLP_USE_STATIC_LIB) 00032 /* 00033 * Turn _STLP_USE_DYNAMIC_LIB to enforce use of .dll version of STLport library. 00034 * NOTE: please do that only if you know what you are doing! 00035 * Changing default will require you to change makefiles in "build" accordingly 00036 * and to rebuild STLPort library! 00037 * On UNIX, this has no effect, see build/lib/README for make tags. 00038 * See STLport configuration file (build/lib/configure.bat) for help in building 00039 * the require library versions. 00040 */ 00041 /* 00042 #define _STLP_USE_DYNAMIC_LIB 00043 */ 00044 /* 00045 * Turn _STLP_USE_STATIC_LIB to enforce use of static version of STLport library. 00046 * NOTE: please do that only if you know what you are doing! 00047 * Changing default will require you to change makefile in "build" accordingly 00048 * and to rebuild STLPort library! 00049 * On UNIX, this has no effect, see build/lib/README for make tags. 00050 * See STLport configuration file (build/lib/configure.bat) for help in building 00051 * the require library versions. 00052 */ 00053 00054 #define _STLP_USE_STATIC_LIB 00055 00056 #endif 00057 00058 /* 00059 * Edit relative path below (or put full path) to get native 00060 * compiler vendor's headers included. Default is "../include" 00061 * for _STLP_NATIVE_INCLUDE_PATH, default for other macros is 00062 * _STLP_NATIVE_INCLUDE_PATH. 00063 * Hint: never install STLport in the directory that ends with "include" 00064 */ 00065 /* 00066 #undef _STLP_NATIVE_INCLUDE_PATH 00067 #define _STLP_NATIVE_INCLUDE_PATH ../include 00068 */ 00069 /* same for C library headers like <cstring> */ 00070 /* 00071 #undef _STLP_NATIVE_CPP_C_INCLUDE_PATH 00072 #define _STLP_NATIVE_CPP_C_INCLUDE_PATH _STLP_NATIVE_INCLUDE_PATH 00073 */ 00074 /* same for C headers like <string.h> */ 00075 /* 00076 #undef _STLP_NATIVE_C_INCLUDE_PATH 00077 #define _STLP_NATIVE_C_INCLUDE_PATH _STLP_NATIVE_INCLUDE_PATH 00078 */ 00079 /* Some compilers locate basic C++ runtime support headers (<new>, <typeinfo>, <exception>) in separate directory */ 00080 /* 00081 #undef _STLP_NATIVE_CPP_RUNTIME_INCLUDE_PATH 00082 #define _STLP_NATIVE_CPP_RUNTIME_INCLUDE_PATH _STLP_NATIVE_INCLUDE_PATH 00083 */ 00084 00085 /* 00086 * If namespases available, STLport use own namespace (and masquerade 00087 * it as std). Disable own namespace may cause undefined behaviour. 00088 */ 00089 /* 00090 #define _STLP_NO_OWN_NAMESPACE 1 00091 */ 00092 00093 /* 00094 * Uncomment _STLP_LEAKS_PEDANTIC to force deallocation of ALL allocated 00095 * memory chunks. Normally not required. But if you worry about quazi-leaks 00096 * (may be reported by some leaks detection tools), use 00097 * _STLP_LEAKS_PEDANTIC. It should be used with _STLP_USE_NEWALLOC or 00098 * _STLP_USE_MALLOC (see below), the default node_alloc allocator also clean 00099 * its internal memory pool but only if STLport is used as a dynamic library 00100 * under Win32 (using MSVC like compilers). 00101 */ 00102 /* 00103 #define _STLP_LEAKS_PEDANTIC 1 00104 */ 00105 00106 /* 00107 * Uncomment _STLP_USE_NEWALLOC to force allocator<T> to use plain "new" 00108 * instead of STLport optimized node allocator engine. 00109 */ 00110 /* 00111 #define _STLP_USE_NEWALLOC 1 00112 */ 00113 00114 /* 00115 * Uncomment _STLP_USE_MALLOC to force allocator<T> to use plain "malloc" 00116 * instead of STLport optimized node allocator engine. 00117 * 00118 * This is default allocator for glibc 2.3.x and later, if not mentioned other 00119 */ 00120 /* 00121 #define _STLP_USE_MALLOC 1 00122 */ 00123 00124 /* 00125 * Uncomment _STLP_USE_PERTHREAD_ALLOC to force allocator<T> to use 00126 * a specific implementation targetting the massively multi-threaded 00127 * environment. The implementation is based on the POSIX pthread 00128 * interface. 00129 */ 00130 /* 00131 #define _STLP_USE_PERTHREAD_ALLOC 1 00132 */ 00133 00134 /* 00135 * Uncomment _STLP_USE_NODE_ALLOC if you want to force allocator<T> to use 00136 * "node_alloc" allocator (this is default allocator for STLport, if not 00137 * used other above, except glibc 2.3.x and later, where default is 00138 * "malloc", due to better results) 00139 */ 00140 /* 00141 #define _STLP_USE_NODE_ALLOC 1 00142 */ 00143 00144 /* 00145 * Set _STLP_DEBUG_ALLOC to use allocators that perform memory debugging, 00146 * such as padding/checking for memory consistency 00147 */ 00148 /* 00149 #define _STLP_DEBUG_ALLOC 1 00150 */ 00151 00152 /* 00153 * For compiler not supporting partial template specialization or ordering of 00154 * template functions STLport implement a workaround based on inheritance 00155 * detection. This inheritance can introduce trouble in client code when 00156 * a user class derived a STL container (which is not advised as STL containers 00157 * do not have virtual destructors). To disable this workaround turn this macro on: 00158 */ 00159 /* 00160 #define _STLP_DONT_USE_PARTIAL_SPEC_WRKD 1 00161 */ 00162 00163 /* 00164 * Uncomment this to force all debug diagnostic to be directed through a 00165 * user-defined global function: 00166 * void __stl_debug_message(const char * format_str, ...) 00167 * instead of predefined STLport routine. 00168 * This allows you to take control of debug message output. 00169 * Default routine calls fprintf(stderr,...) 00170 * Note : If you set this macro, you must supply __stl_debug_message 00171 * function definition somewhere. 00172 */ 00173 /* 00174 #define _STLP_DEBUG_MESSAGE 1 00175 */ 00176 00177 /* 00178 * Uncomment this to force all failed assertions to be executed through 00179 * user-defined global function: 00180 * void __stl_debug_terminate(void). This allows 00181 * you to take control of assertion behaviour for debugging purposes. 00182 * Default routine calls _STLP_ABORT(). 00183 * Note : If you set this macro, you must supply __stl_debug_terminate 00184 * function definition somewhere. 00185 */ 00186 /* 00187 #define _STLP_DEBUG_TERMINATE 1 00188 */ 00189 00190 /* 00191 * Uncomment that to disable exception handling code 00192 */ 00193 /* 00194 #define _STLP_DONT_USE_EXCEPTIONS 1 00195 */ 00196 00197 /* 00198 * _STLP_NO_NAMESPACES: if defined, don't put the library in namespace 00199 * stlport:: or std::, even if the compiler supports namespaces 00200 */ 00201 /* 00202 #define _STLP_NO_NAMESPACES 1 00203 */ 00204 00205 /*========================================================== 00206 * Compatibility section 00207 *==========================================================*/ 00208 00209 /* 00210 * Use abbreviated class names for linker benefit (don't affect interface). 00211 * This option is obsolete, but should work in this release. 00212 * 00213 */ 00214 /* 00215 #define _STLP_USE_ABBREVS 00216 */ 00217 00218 /* 00219 * This definition precludes STLport reverse_iterator to be compatible with 00220 * other parts of MSVC library. (With partial specialization, it just 00221 * has no effect). 00222 * Use it _ONLY_ if you use SGI-style reverse_iterator<> template explicitly 00223 */ 00224 /* 00225 #define _STLP_NO_MSVC50_COMPATIBILITY 1 00226 */ 00227 00228 /* 00229 * Use obsolete overloaded template functions iterator_category(), value_type(), distance_type() 00230 * for querying iterator properties. Please note those names are non-standard and are not guaranteed 00231 * to be used by every implementation. However, this setting is on by default when partial specialization 00232 * is not implemented in the compiler and cannot be simulated (only if _STLP_NO_ANACHRONISMS is not set). 00233 * Use of those interfaces for user-defined iterators is strongly discouraged: 00234 * please use public inheritance from iterator<> template to achieve desired effect. 00235 * Second form is to disable old-style queries in any case. 00236 */ 00237 /* 00238 #define _STLP_USE_OLD_HP_ITERATOR_QUERIES 00239 #define _STLP_NO_OLD_HP_ITERATOR_QUERIES 00240 */ 00241 00242 00243 /* 00244 * On systems with support of large files (_LARGEFILE_SOURCE, 00245 * _LARGEFILE64_SOURCE defined) we will use 64-bit file offset, even if 00246 * __USE_FILE_OFFSET64 or _FILE_OFFSET_BITS not defined or _FILE_OFFSET_BITS 00247 * less than 64. In the last case sizeof(std::streamoff) may not be equal to 00248 * sizeof(off_t); if you want to force equal size of off_t and streamoff, 00249 * uncomment macro below. But pay attention, this has influence on libstlport 00250 * and in future usage it may cause conflict with defined _FILE_OFFSET_BITS macro. 00251 */ 00252 00253 /* 00254 #define _STLP_USE_DEFAULT_FILE_OFFSET 00255 */ 00256 00257 /* 00258 * _STLP_USE_STDIO_IO, _STLP_USE_UNIX_IO: force selection of stdio calls 00259 * (fopen/flose/fread/fwrite) under fstream buffers or unistd calls 00260 * (open/close/read/write + mmap). On systems that have both (i.e. most Unixes) 00261 * _STLP_USE_UNIX_IO is used. 00262 * 00263 * There is a third variant for Windows: _STLP_USE_WIN32_IO, that based 00264 * on Windows calls (CreateFile/CloseHandle/ReadFile/WriteFile + CreateFileMapping, 00265 * MapViewOfFile) 00266 * 00267 * Uncomment only one define here! 00268 */ 00269 /* 00270 #define _STLP_USE_UNIX_IO 00271 */ 00272 #define _STLP_USE_STDIO_IO 00273 /* 00274 #define _STLP_USE_WIN32_IO 00275 */ 00276 00277 /*==========================================================================*/ 00278 00279 /* This section contains swithes which should be off by default, 00280 * but so few compilers would have it undefined, so that we set them here, 00281 * with the option to be turned off later in compiler-specific file 00282 */ 00283 00284 #define _STLP_NO_UNCAUGHT_EXCEPT_SUPPORT 00285 #define _STLP_NO_UNEXPECTED_EXCEPT_SUPPORT 00286 00287 /*==========================================================================*/ 00288 00289 #if defined(__sun) && defined(__GNUC__) 00290 /* __SunOS_5_x is not defined in headers, and there is no way to derive it from headers only; 00291 * nevertheless this macro defined automagically by SunPro compilers family; 00292 * 00293 * gcc know nothing about it, but defining it with -D on compiler command line 00294 * is a bad idea from one side, and this info still useful when we want to use 00295 * (or don't use) some Solaris version-specific features from other side. 00296 * Of course, the best way is to define it in spec file, but this is beyond our scope. 00297 * 00298 * Uncomment ONE of the following, depends on what Solaris version you use. 00299 */ 00300 00301 /* 00302 #define __SunOS_5_5_1 00303 */ 00304 /* 00305 #define __SunOS_5_6 00306 */ 00307 /* 00308 #define __SunOS_5_7 00309 */ 00310 /* 00311 #define __SunOS_5_8 00312 */ 00313 /* 00314 #define __SunOS_5_9 00315 */ 00316 /* 00317 #define __SunOS_5_10 00318 */ 00319 #endif 00320 00321 #if defined(__sun) 00322 /* With following patches Solaris 8 and 9 will have *l and *f (long double and float) 00323 * variants of math functions: 00324 * SunOS 5.8 patch 111721-04 (May/08/2003) 00325 * <http://sunsolve.sun.com/search/document.do?assetkey=1-21-111721-04-1> 00326 * SunOS 5.9 patch 111722-04 (May/08/2003) 00327 * <http://sunsolve.sun.com/search/document.do?assetkey=1-21-111722-04-1> 00328 * Solaris 10 has this functions from box. 00329 */ 00330 /* 00331 #define _STLP_SOLARIS_MATH_PATCH 00332 */ 00333 #endif 00334 00335 /* 00336 Local Variables: 00337 mode:C++ 00338 End: 00339 */ Generated on Fri May 25 2012 04:16:09 for ReactOS by
1.7.6.1
|