111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* STLport configuration file 211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert * It is internal STLport header - DO NOT include it directly 311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert */ 411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* common configuration settings for Apple MPW MrCpp / SCpp */ 611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _STLP_COMPILER "spec me!" 811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#if defined(__MRC__) && __MRC__ < 0x500 1011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# error Apple's MPW MrCpp v.5.0.0 or better compiler required 1111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#endif 1211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#if defined(__SC__) && __SC__ < 0x890 1311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# error Apple's MPW SCpp v.8.9.0 or better compiler required 1411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#endif 1511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 1611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/* TODO: Check that this config is necessary for all compiler versions. 1711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert * It is here for historical reasons for the moment. 1811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert */ 1911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _STLP_NO_CONTAINERS_EXTENSION 2011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 2111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#ifdef qMacApp 2211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# ifndef __CONDITIONALMACROS__ /* skip including ConditionalMacros_AC.h if ConditionalMacros.h is already included */ 2311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# include <CoreSwitches_AC.h> 2411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# include <ConditionalMacros_AC.h> 2511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# include <Types_AC.h> 2611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# define _STLP_FILE__ _FILE_AC 2711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# define _STLP_DEBUG_MESSAGE 2811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# define __stl_debug_message ProgramBreak_AC 2911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# include <ConditionalMacros.h> 3011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# endif 3111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# include <Types.h> 3211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#else 3311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# include <ConditionalMacros.h> 3411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# include <Types.h> 3511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#endif 3611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 3711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _STLP_UINT32_T UInt32 3811cd02dfb91661c65134cac258cf5924270e9d2Dan Alberttypedef int wint_t; 3911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 4011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#ifndef TYPE_BOOL 4111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# error <ConditionalMacros.h> must be included. (TYPE_BOOL) 4211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#endif 4311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#if !TYPE_BOOL 4411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# define _STLP_NO_BOOL 4511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# define _STLP_DONT_USE_BOOL_TYPEDEF 4611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#endif 4711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 4811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#ifndef TYPE_LONGLONG 4911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# error <ConditionalMacros.h> must be included. (TYPE_LONGLONG) 5011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#endif 5111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#if TYPE_LONGLONG 5211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# define _STLP_LONG_LONG long long 5311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#endif 5411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 5511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#if !__option(exceptions) 5611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# define _STLP_HAS_NO_EXCEPTIONS 5711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#endif 5811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 5911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _STLP_DEBUG_MESSAGE_POST DebugStr("\pSTL diagnosis issued. See 'stderr' for detail."); 6011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _STLP_ASSERT_MSG_TRAILER " " 6111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 6211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#ifdef _STLP_DEBUG 6311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# define _STLP_THROW(x) (DebugStr("\pSTL is about to throw exception: "#x),throw x) 6411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#endif 6511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 6611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#if defined(__MRC__) 6711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# ifndef __spillargs 6811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# define __spillargs 1 // MrCpp requires this symbol to be defined as 1 to properly handle va_start; ref.[ file stdarg.h; line 26 ] 6911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# endif 7011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#endif 7111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 7211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#if defined(__SC__) 7311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _STLP_VENDOR_LONG_DOUBLE_MATH //*TY 12/03/2000 - SCpp's native math type is long double 7411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#endif 7511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 7611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#ifndef _STLP_NATIVE_INCLUDE_PATH 7711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# if __option(unix_includes) 7811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# define _STLP_NATIVE_INCLUDE_PATH ../CIncludes // expects the alias to {CIncludes} under the same folder as {STL} 7911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# else 8011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# define _STLP_NATIVE_INCLUDE_PATH ::CIncludes // expects the alias to {CIncludes} under the same folder as {STL} 8111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# endif 8211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#endif 8311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#if !defined(_STLP_MAKE_HEADER) 8411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# if !__option(unix_includes) 8511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# define _STLP_MAKE_HEADER(path, header) <path:header> // Mac uses ":" for directory delimiter 8611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# endif 8711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#endif 8811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 8911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# define _STLD _DBG // to keep the length of generated symbols within the compiler limitation 9011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 9111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _STLP_USE_STDIO_IO 1 //*TY 02/24/2000 - see also ; ref.[ file _fstream.h; line 36 ] 9211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _STLP_NO_THREADS //*TY 12/17/2000 - multi-thread capability not explored, yet. 9311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#undef _REENTRANT //*ty 11/24/2001 - to make sure no thread facility is activated 9411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _NOTHREADS //*ty 12/07/2001 - 9511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 9611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert// native library limitations 9711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _STLP_VENDOR_GLOBAL_STD // mpw's c++ libs do not utilize namespace std yet 9811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _STLP_NO_BAD_ALLOC // known limitation 9911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _STLP_HAS_NO_NEW_C_HEADERS // known limitation 10011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _STLP_NO_NEW_NEW_HEADER // known limitation 10111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _STLP_NO_NATIVE_MBSTATE_T // known limitation 10211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _STLP_NO_NATIVE_WIDE_FUNCTIONS // known limitation 10311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _STLP_NO_NATIVE_WIDE_STREAMS // known limitation 10411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _STLP_NO_UNCAUGHT_EXCEPT_SUPPORT // known limitation 10511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _STLP_BROKEN_EXCEPTION_CLASS // known limitation 10611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 10711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert// compiler limitations 10811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# define _STLP_DONT_SIMULATE_PARTIAL_SPEC_FOR_TYPE_TRAITS 10911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 11011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# define _STLP_MPWFIX_TRY try{ //*TY 06/01/2000 - exception handling bug workaround 11111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# define _STLP_MPWFIX_CATCH }catch(...){throw;} //*TY 06/01/2000 - exception handling bug workaround 11211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# define _STLP_MPWFIX_CATCH_ACTION(action) }catch(...){action;throw;} //*TY 06/01/2000 - exception handling bug workaround 11311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# define _STLP_THROW_RETURN_BUG // known limitation 11411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# define _STLP_NO_CLASS_PARTIAL_SPECIALIZATION // known limitation 11511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# define _STLP_NO_PARTIAL_SPECIALIZATION_SYNTAX // known limitation 11611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# define _STLP_NO_FUNCTION_TMPL_PARTIAL_ORDER // known limitation 11711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert# define _STLP_NO_RELOPS_NAMESPACE // known limitation 11811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert// end of stl_apple.h 119