1e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott/* 2e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott * Copyright (c) 1999 3e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott * Boris Fomitchev 4e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott * 5e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott * This material is provided "as is", with absolutely no warranty expressed 6e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott * or implied. Any use is at your own risk. 7e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott * 8e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott * Permission to use or copy this software for any purpose is hereby granted 9e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott * without fee, provided the above notices are retained on all copies. 10e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott * Permission to modify the code and to distribute modified code is granted, 11e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott * provided the above notices are retained, and a notice that the code was 12e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott * modified is included with the above copyright notice. 13e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott * 14e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott */ 15e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott 16e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott/* 17e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott * STLport configuration file 18e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott * It is internal STLport header - DO NOT include it directly 19e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott * Purpose of this file : to define STLport settings that depend on 20e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott * compiler flags or can be otherwise missed 21e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott * 22e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott */ 23e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott 24e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott#ifndef _STLP_CONFIX_H 25e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott#define _STLP_CONFIX_H 26e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott 27e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott/* If, by any chance, C compiler gets there, try to help it to pass smoothly */ 28e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott#if ! defined (__cplusplus) && ! defined (_STLP_HAS_NO_NAMESPACES) 29e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# define _STLP_HAS_NO_NAMESPACES 30e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott#endif 31e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott 32e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott#if defined (__MINGW32__) 33e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# define _STLP_NO_DRAND48 34e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott#endif 35e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott 36e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott/* Modena C++ library */ 37e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott#if defined (__MWERKS__) && __MWERKS__ <= 0x2303 || (defined (__KCC) && __KCC_VERSION < 3400) 38e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# include <mcompile.h> 39e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# define _STLP_USE_MSIPL 1 40e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# if defined (__KCC) || (defined(__MSL_CPP__) && \ 41e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott ( (__MSL_CPP__ >= 0x5000 && defined( _MSL_NO_MESSAGE_FACET )) || \ 42e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott (__MSL_CPP__ < 0x5000 && defined( MSIPL_NL_TYPES )))) 43e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# define _STLP_NO_NATIVE_MESSAGE_FACET 1 44e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# endif 45e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott#endif 46e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott 47e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott/* common switches for EDG front-end */ 48e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott/* __EDG_SWITCHES do not seem to be an official EDG macro. 49e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott * We keep it for historical reason. */ 50e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott#if defined (__EDG_SWITCHES) 51e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# if !(defined(_TYPENAME) || defined (_TYPENAME_IS_KEYWORD)) 52e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# undef _STLP_NEED_TYPENAME 53e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# define _STLP_NEED_TYPENAME 1 54e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# endif 55e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# ifndef _WCHAR_T_IS_KEYWORD 56e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# undef _STLP_NO_WCHAR_T 57e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# define _STLP_NO_WCHAR_T 1 58e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# endif 59e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# ifndef _PARTIAL_SPECIALIZATION_OF_CLASS_TEMPLATES 60e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# undef _STLP_NO_CLASS_PARTIAL_SPECIALIZATION 61e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# define _STLP_NO_CLASS_PARTIAL_SPECIALIZATION 1 62e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# endif 63e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# ifndef _MEMBER_TEMPLATES 64e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# undef _STLP_NO_MEMBER_TEMPLATES 65e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# define _STLP_NO_MEMBER_TEMPLATES 1 66e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# undef _STLP_NO_MEMBER_TEMPLATE_CLASSES 67e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# define _STLP_NO_MEMBER_TEMPLATE_CLASSES 1 68e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# endif 69e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# ifndef _MEMBER_TEMPLATE_KEYWORD 70e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# undef _STLP_NO_MEMBER_TEMPLATE_KEYWORD 71e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# define _STLP_NO_MEMBER_TEMPLATE_KEYWORD 1 72e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# endif 73e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# if !defined (__EXCEPTIONS) && ! defined (_EXCEPTIONS) 74e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# undef _STLP_HAS_NO_EXCEPTIONS 75e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# define _STLP_HAS_NO_EXCEPTIONS 76e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# endif 77e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# undef __EDG_SWITCHES 78e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott#endif /* EDG */ 79e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott 80e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott/* __EDG_VERSION__ is an official EDG macro, compilers based 81e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott * on EDG have to define it. */ 82e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott#if defined (__EDG_VERSION__) 83e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# if (__EDG_VERSION__ >= 244) && !defined (_STLP_HAS_INCLUDE_NEXT) 84e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# define _STLP_HAS_INCLUDE_NEXT 85e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# endif 86e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# if (__EDG_VERSION__ <= 240) && !defined (_STLP_DONT_RETURN_VOID) 87e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# define _STLP_DONT_RETURN_VOID 88e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# endif 89e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# if !defined (__EXCEPTIONS) && !defined (_STLP_HAS_NO_EXCEPTIONS) 90e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# define _STLP_HAS_NO_EXCEPTIONS 91e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# endif 92e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# if !defined (__NO_LONG_LONG) && !defined (_STLP_LONG_LONG) 93e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# define _STLP_LONG_LONG long long 94e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# endif 95e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott#endif 96e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott 97e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott#endif 98