19720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block/* STLport configuration file
29720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block * It is internal STLport header - DO NOT include it directly
39720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block */
49720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
59720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block/* common configuration settings for Apple MPW MrCpp / SCpp */
69720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
7e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott#define _STLP_COMPILER "spec me!"
89720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
99720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#if defined(__MRC__) && __MRC__ < 0x500
109720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# error Apple's MPW MrCpp v.5.0.0 or better compiler required
119720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#endif
129720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#if defined(__SC__) && __SC__ < 0x890
139720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# error Apple's MPW SCpp v.8.9.0 or better compiler required
149720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#endif
159720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
169720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block/* TODO: Check that this config is necessary for all compiler versions.
179720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block * It is here for historical reasons for the moment.
189720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block */
199720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_NO_CONTAINERS_EXTENSION
209720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
219720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#ifdef qMacApp
229720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# ifndef __CONDITIONALMACROS__ /* skip including ConditionalMacros_AC.h if ConditionalMacros.h is already included */
239720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# include <CoreSwitches_AC.h>
249720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# include <ConditionalMacros_AC.h>
259720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# include <Types_AC.h>
269720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# define _STLP_FILE__ _FILE_AC
279720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# define _STLP_DEBUG_MESSAGE
289720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# define __stl_debug_message ProgramBreak_AC
299720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# include <ConditionalMacros.h>
309720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# endif
319720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# include <Types.h>
329720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#else
339720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# include <ConditionalMacros.h>
349720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# include <Types.h>
359720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#endif
369720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
379720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_UINT32_T UInt32
389720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Blocktypedef int wint_t;
399720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
409720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#ifndef TYPE_BOOL
419720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# error <ConditionalMacros.h> must be included. (TYPE_BOOL)
429720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#endif
439720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#if !TYPE_BOOL
449720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# define _STLP_NO_BOOL
459720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# define _STLP_DONT_USE_BOOL_TYPEDEF
469720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#endif
479720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
489720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#ifndef TYPE_LONGLONG
499720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# error <ConditionalMacros.h> must be included. (TYPE_LONGLONG)
509720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#endif
519720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#if TYPE_LONGLONG
529720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# define _STLP_LONG_LONG long long
539720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#endif
549720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
559720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#if !__option(exceptions)
569720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# define _STLP_HAS_NO_EXCEPTIONS
579720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#endif
589720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
599720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_DEBUG_MESSAGE_POST DebugStr("\pSTL diagnosis issued. See 'stderr' for detail.");
609720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_ASSERT_MSG_TRAILER " "
619720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
629720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#ifdef _STLP_DEBUG
639720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#   define _STLP_THROW(x) (DebugStr("\pSTL is about to throw exception: "#x),throw x)
649720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#endif
659720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
669720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#if defined(__MRC__)
679720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# ifndef __spillargs
689720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#  define __spillargs 1 // MrCpp requires this symbol to be defined as 1 to properly handle va_start; ref.[ file stdarg.h; line 26 ]
699720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# endif
709720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#endif
719720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
729720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#if defined(__SC__)
739720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_VENDOR_LONG_DOUBLE_MATH        //*TY 12/03/2000 - SCpp's native math type is long double
749720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#endif
759720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
769720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#ifndef _STLP_NATIVE_INCLUDE_PATH
779720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# if __option(unix_includes)
789720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#  define _STLP_NATIVE_INCLUDE_PATH ../CIncludes   // expects the alias to {CIncludes} under the same folder as {STL}
799720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# else
809720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#  define _STLP_NATIVE_INCLUDE_PATH ::CIncludes   // expects the alias to {CIncludes} under the same folder as {STL}
819720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# endif
829720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#endif
839720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#if !defined(_STLP_MAKE_HEADER)
849720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# if !__option(unix_includes)
859720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#  define _STLP_MAKE_HEADER(path, header) <path:header> // Mac uses ":" for directory delimiter
869720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# endif
879720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#endif
889720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
899720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# define _STLD _DBG  // to keep the length of generated symbols within the compiler limitation
909720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
919720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_USE_STDIO_IO 1       //*TY 02/24/2000 - see also ; ref.[ file _fstream.h; line 36 ]
929720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_NO_THREADS           //*TY 12/17/2000 - multi-thread capability not explored, yet.
939720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#undef _REENTRANT                  //*ty 11/24/2001 - to make sure no thread facility is activated
949720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _NOTHREADS                 //*ty 12/07/2001 -
959720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
969720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// native library limitations
979720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_VENDOR_GLOBAL_STD          // mpw's c++ libs do not utilize namespace std yet
989720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_NO_BAD_ALLOC               // known limitation
999720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_HAS_NO_NEW_C_HEADERS       // known limitation
1009720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_NO_NEW_NEW_HEADER          // known limitation
1019720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_NO_NATIVE_MBSTATE_T        // known limitation
1029720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_NO_NATIVE_WIDE_FUNCTIONS   // known limitation
1039720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_NO_NATIVE_WIDE_STREAMS     // known limitation
1049720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_NO_UNCAUGHT_EXCEPT_SUPPORT // known limitation
1059720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_BROKEN_EXCEPTION_CLASS     // known limitation
1069720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
1079720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// compiler limitations
1089720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# define _STLP_DONT_SIMULATE_PARTIAL_SPEC_FOR_TYPE_TRAITS
1099720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
1109720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# define _STLP_MPWFIX_TRY try{                      //*TY 06/01/2000 - exception handling bug workaround
1119720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# define _STLP_MPWFIX_CATCH }catch(...){throw;}              //*TY 06/01/2000 - exception handling bug workaround
1129720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# define _STLP_MPWFIX_CATCH_ACTION(action) }catch(...){action;throw;}  //*TY 06/01/2000 - exception handling bug workaround
1139720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# define _STLP_THROW_RETURN_BUG            // known limitation
1149720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# define _STLP_NO_CLASS_PARTIAL_SPECIALIZATION    // known limitation
1159720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# define _STLP_NO_PARTIAL_SPECIALIZATION_SYNTAX    // known limitation
1169720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# define _STLP_NO_FUNCTION_TMPL_PARTIAL_ORDER    // known limitation
1179720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# define _STLP_NO_RELOPS_NAMESPACE          // known limitation
1189720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// end of stl_apple.h
119