/home/ntakagi/work/STLport-5.1.5/stlport/stl/config/_dm.hGo to the documentation of this file.00001 // STLport configuration file for Digital Mars C++ 00002 00003 //#define _STLP_VERBOSE 00004 00005 #define _STLP_COMPILER "DMC" 00006 00007 #if defined (_STLP_VERBOSE) 00008 # pragma message __DMC_VERSION_STRING__ 00009 #endif 00010 00011 #if (__DMC__ < 0x846) 00012 # error "Digital Mars C++ versions prior to 8.46 are not supported!" 00013 #endif 00014 00015 #ifndef _CPPUNWIND 00016 # define _STLP_NO_EXCEPTIONS 00017 #endif 00018 #define _STLP_VENDOR_GLOBAL_CSTD 00019 00020 //DMC prefer enum to real static const variable because it do not consider 00021 //static const as const enough to be used in switch declaration... 00022 #define _STLP_STATIC_CONST_INIT_BUG 00023 00024 #if !defined (_WIN32) 00025 // it's not fully supported on non-Win32 platforms 00026 # define _STLP_NO_NATIVE_WIDE_FUNCTIONS 00027 #endif 00028 00029 /* _STLP_NO_OWN_NAMESPACE is defined because Digital Mars' linker and libarian 00030 appear to have problems with STLport namespaces. Summary of the issues: 00031 00032 STATIC: Digital Mars' librarian (lib.exe) may fail with "len <= IDMAX" error 00033 if _STLP_DEBUG is defined. This is because Digital Mars' librarian uses 00034 Microsoft OMF format, which limits identifier length to about 512 bytes. 00035 With STLport namespaces, some identifiers such as Category_Map in 00036 src/locale_catalog.cpp may exceed the maximum OMF identifier length. 00037 00038 DYNAMIC: Export issues with cin, cout, cerr, clog in src/iostream.cpp. 00039 Exports in Digital Mars 'def' file must match mangled names in iostream.cpp. 00040 With STLport namespaces, the mangled names in the intermediate files no 00041 longer match these pre-defined exports. To use STLport dynamic libraries 00042 and STLport namespaces with Digital Mars, the pre-defined exports in 00043 src/iostream.cpp and the related Digital Mars 'def' files would need to be 00044 revised. */ 00045 #define _STLP_NO_OWN_NAMESPACE 1 00046 00047 // select threads strategy 00048 #if defined (_MT) && !defined (_NOTHREADS) 00049 # define _REENTRANT 00050 #else 00051 # define _NOTHREADS 00052 #endif 00053 00054 #ifndef _BOOL_DEFINED 00055 # define _STLP_NO_BOOL 00056 #else 00057 # define _STLP_DONT_USE_BOOL_TYPEDEF 00058 #endif 00059 00060 #if _INTEGRAL_MAX_BITS >= 64 00061 # define _STLP_LONG_LONG long long 00062 #endif 00063 00064 #define _STLP_DONT_USE_PRIV_NAMESPACE 00065 #define _STLP_NO_BAD_ALLOC 00066 #define _STLP_THROW_RETURN_BUG 00067 00068 #if !defined (_DLL) 00069 # undef _STLP_NO_UNEXPECTED_EXCEPT_SUPPORT 00070 #endif 00071 00072 #define _STLP_USE_ABBREVS 00073 #define _STLP_NO_CONTAINERS_EXTENSION 00074 #define _STLP_NO_FUNCTION_TMPL_PARTIAL_ORDER 00075 00076 #define _STLP_EXPORT_DECLSPEC __declspec(dllexport) 00077 #define _STLP_IMPORT_DECLSPEC __declspec(dllimport) 00078 00079 #define _STLP_CLASS_EXPORT_DECLSPEC __declspec(dllexport) 00080 #define _STLP_CLASS_IMPORT_DECLSPEC __declspec(dllimport) 00081 00082 #define _STLP_IMPORT_TEMPLATE_KEYWORD __declspec(dllimport) 00083 #define _STLP_EXPORT_TEMPLATE_KEYWORD __declspec(dllexport) 00084 00085 #if defined (_WINDLL) 00086 # define _STLP_DLL 00087 #endif 00088 #if defined (_DLL) 00089 # define _STLP_RUNTIME_DLL 00090 #endif 00091 #include <stl/config/_detect_dll_or_lib.h> 00092 #undef _STLP_RUNTIME_DLL 00093 #undef _STLP_DLL 00094 00095 #if defined (_STLP_USE_DYNAMIC_LIB) 00096 # define _STLP_USE_DECLSPEC 1 00097 # if defined (__BUILDING_STLPORT) 00098 # define _STLP_CALL __export 00099 # else 00100 # define _STLP_CALL 00101 # endif 00102 #else 00103 # define _STLP_CALL 00104 #endif 00105 00106 #include <stl/config/_auto_link.h> 00107 00108 # undef __SC__ 00109
Generated on Mon Mar 10 15:32:46 2008 by ![]() |