First public contribution.
1 // STLport configuration file for Digital Mars C++
7 #error "Digital Mars C++ versions prior to 8.32 are not supported!"
12 # define _STLP_NO_EXCEPTIONS
14 # undef _STLP_NO_NAMESPACES
15 # define _STLP_NO_RELOPS_NAMESPACE
16 # define _STLP_VENDOR_GLOBAL_CSTD
17 # define _STLP_VENDOR_GLOBAL_STD
18 # define _STLP_VENDOR_EXCEPT_STD std
21 // it's not fully supported on non-Win32 platforms
22 # define _STLP_NO_NEW_IOSTREAMS
23 # define _STLP_NO_NATIVE_WIDE_FUNCTIONS
26 # if defined(_STLP_NO_NEW_IOSTREAMS) || defined(_STLP_NO_OWN_IOSTREAMS)
27 # define _STLP_OWN_NAMESPACE
29 # define _STLP_NO_OWN_NAMESPACE
33 // select threads strategy
34 # if defined (_MT) && !defined (_NOTHREADS)
40 // select SGI-style alloc instead of allocator<T>
41 # define _STLP_USE_SGI_ALLOCATORS
43 // select allocation method you like
44 # undef _STLP_USE_MALLOC
45 # define _STLP_USE_NEWALLOC
47 // this one is not mandatory, just enabled
48 # undef _STLP_USE_DEFALLOC
50 // define _STLP_USE_ABBREVS if your linker has trouble with long
52 # undef _STLP_USE_ABBREVS
55 // unsigned 32-bit integer type
56 # define _STLP_UINT32_T unsigned
58 # ifndef _BOOL_DEFINED
59 # define _STLP_NO_BOOL
61 # define _STLP_DONT_USE_BOOL_TYPEDEF
65 # undef _STLP_LIMITED_DEFAULT_TEMPLATES
66 # define _STLP_DEFAULT_TYPE_PARAM
67 # undef _STLP_NO_STATIC_TEMPLATE_DATA
69 # undef _STLP_LOOP_INLINE_PROBLEMS
71 # undef _STLP_HAS_NO_NAMESPACES
73 # undef _STLP_NEED_TYPENAME
74 # undef _STLP_NEED_EXPLICIT
75 # undef _STLP_HAS_NO_EXCEPTIONS
76 # undef _STLP_NO_EXCEPTION_SPEC
77 # undef _STLP_WEAK_ATTRIBUTE
78 # undef _STLP_BASE_MATCH_BUG
79 # undef _STLP_NONTEMPL_BASE_MATCH_BUG
80 # undef _STLP_NESTED_TYPE_PARAM_BUG
81 # undef _STLP_NO_ARROW_OPERATOR
82 # undef _STLP_UNINITIALIZABLE_PRIVATE
83 # undef _STLP_BASE_TYPEDEF_BUG
84 # undef _STLP_BASE_TYPEDEF_OUTSIDE_BUG
85 # undef _STLP_CONST_CONSTRUCTOR_BUG
87 # undef _STLP_NO_NEW_STYLE_CASTS
89 # ifndef _WCHAR_T_DEFINED
90 # define _STLP_NO_WCHAR_T
92 # define _STLP_HAS_NO_UNIX98_WCHAR_EXTENSIONS
94 # undef _STLP_WCHAR_T_IS_USHORT
96 # if _INTEGRAL_MAX_BITS >= 64
97 # define _STLP_LONG_LONG long long
100 # undef _STLP_NO_LONG_DOUBLE
101 # undef _STLP_NEED_MUTABLE
102 # undef _STLP_NO_PARTIAL_SPECIALIZATION_SYNTAX
103 # undef _STLP_NO_BAD_ALLOC
104 # undef _STLP_DEBUG_ALLOC
105 # undef _STLP_NO_MEMBER_TEMPLATES
106 # undef _STLP_NO_MEMBER_TEMPLATE_CLASSES
107 # define _STLP_NO_MEMBER_TEMPLATE_KEYWORD
108 # undef _STLP_NO_FRIEND_TEMPLATES
109 # undef _STLP_NO_QUALIFIED_FRIENDS
110 # undef _STLP_NO_CLASS_PARTIAL_SPECIALIZATION
111 # undef _STLP_NO_FUNCTION_TMPL_PARTIAL_ORDER
112 # undef _STLP_AUTOMATIC_TYPE_TRAITS
113 # undef _STLP_MEMBER_POINTER_PARAM_BUG
114 # undef _STLP_NON_TYPE_TMPL_PARAM_BUG
115 # undef _STLP_NO_DEFAULT_NON_TYPE_PARAM
116 # undef _STLP_NO_METHOD_SPECIALIZATION
117 # undef _STLP_STATIC_ARRAY_BUG
118 # undef _STLP_STATIC_CONST_INIT_BUG
119 # undef _STLP_TRIVIAL_CONSTRUCTOR_BUG
120 # undef _STLP_TRIVIAL_DESTRUCTOR_BUG
121 # undef _STLP_BROKEN_USING_DIRECTIVE
122 # undef _STLP_NO_EXPLICIT_FUNCTION_TMPL_ARGS
123 # undef _STLP_NO_EXCEPTION_HEADER
124 # undef _STLP_DEFAULT_CONSTRUCTOR_BUG
126 # define _STLP_HAS_NO_NEW_IOSTREAMS
127 # define _STLP_HAS_NO_NEW_C_HEADERS
128 # define _STLP_THROW_RETURN_BUG
129 # undef _STLP_LINK_TIME_INSTANTIATION
130 # undef _STLP_PARTIAL_SPEC_NEEDS_TEMPLATE_ARGS
131 # undef _STLP_NO_TEMPLATE_CONVERSIONS
132 # undef _STLP_NEEDS_EXTRA_TEMPLATE_CONSTRUCTORS
135 # define _STLP_NO_NATIVE_MBSTATE_T
138 # define _STLP_EXPORT_DECLSPEC __declspec(dllexport)
139 # define _STLP_IMPORT_DECLSPEC __declspec(dllimport)
141 # define _STLP_CLASS_EXPORT_DECLSPEC __declspec(dllexport)
142 # define _STLP_CLASS_IMPORT_DECLSPEC __declspec(dllimport)
144 # define _STLP_IMPORT_TEMPLATE_KEYWORD __declspec(dllimport)
145 # define _STLP_EXPORT_TEMPLATE_KEYWORD __declspec(dllexport)
147 #define _STLP_NATIVE_HEADER(header) <../include/##header>
148 #define _STLP_NATIVE_C_HEADER(header) <../include/##header>
149 #define _STLP_NATIVE_CPP_C_HEADER(header) <../include/##header>
150 #define _STLP_NATIVE_OLD_STREAMS_HEADER(header) <../include/##header>
151 #define _STLP_NATIVE_CPP_RUNTIME_HEADER(header) <../include/##header>
154 # if defined(__BUILDING_STLPORT) && defined(_WINDLL)
155 # define _STLP_CALL __export
157 # undef _STLP_USE_DECLSPEC
158 # define _STLP_USE_DECLSPEC 1
161 # if !defined (__BUILDING_STLPORT) && !defined (_STLP_NO_OWN_IOSTREAMS)
162 # if (defined (_DLL) && !defined (_STLP_DONT_USE_DLL)) || defined (_STLP_USE_DLL)
163 # undef _STLP_USE_DECLSPEC
164 # define _STLP_USE_DECLSPEC 1
167 # if defined (_STLP_DEBUG)
169 # if !defined (_STLP_DONT_USE_DLL)
170 # pragma comment(lib,"stlp45dm_stldebug.lib")
172 # pragma comment(lib,"stlp45dm_stldebug_staticx.lib")
175 # if defined (_STLP_USE_DLL)
176 # pragma comment(lib,"stlp45dms_stldebug.lib")
178 # pragma comment(lib,"stlp45dm_stldebug_static.lib")
181 # elif defined (DEBUG)
183 # if !defined (_STLP_DONT_USE_DLL)
184 # pragma comment(lib,"stlp45dm_debug.lib")
186 # pragma comment(lib,"stlp45dm_debug_staticx.lib")
189 # if defined (_STLP_USE_DLL)
190 # pragma comment(lib,"stlp45dms_debug.lib")
192 # pragma comment(lib,"stlp45dm_debug_static.lib")
197 # if !defined (_STLP_DONT_USE_DLL)
198 # pragma comment(lib,"stlp45dm.lib")
200 # pragma comment(lib,"stlp45dm_staticx.lib")
203 # if defined (_STLP_USE_DLL)
204 # pragma comment(lib,"stlp45dms.lib")
206 # pragma comment(lib,"stlp45dm_static.lib")
213 #ifdef __BUILDING_STLPORT
214 // still needed for building STLport itself, but isn't needed for
215 // compiling applications anymore
219 #undef __STLP_NO_KEYWORDS_WORKAROUND
220 #if !defined (__STLP_NO_KEYWORDS_WORKAROUND)
221 # define __in __stl_in
222 # define __out __stl_out