blob: 120e8f4d58fdcb151d272bdab480967a9926325a [file] [log] [blame]
/*
* Copyright (c) 1999
* Boris Fomitchev
*
* This material is provided "as is", with absolutely no warranty expressed
* or implied. Any use is at your own risk.
*
* Permission to use or copy this software for any purpose is hereby granted
* without fee, provided the above notices are retained on all copies.
* Permission to modify the code and to distribute modified code is granted,
* provided the above notices are retained, and a notice that the code was
* modified is included with the above copyright notice.
*
*/
/*
* STLport configuration file
* It is internal STLport header - DO NOT include it directly
* Purpose of this file : to define STLport settings that depend on
* compiler flags or can be otherwise missed
*
*/
#ifndef _STLP_CONFIX_H
#define _STLP_CONFIX_H
/* If, by any chance, C compiler gets there, try to help it to pass smoothly */
#if ! defined (__cplusplus) && ! defined (_STLP_HAS_NO_NAMESPACES)
# define _STLP_HAS_NO_NAMESPACES
#endif
#if defined (__MINGW32__)
# define _STLP_NO_DRAND48
#endif
/* Modena C++ library */
#if defined (__MWERKS__) && __MWERKS__ <= 0x2303 || (defined (__KCC) && __KCC_VERSION < 3400)
# include <mcompile.h>
# define _STLP_USE_MSIPL 1
# if defined (__KCC) || (defined(__MSL_CPP__) && \
( (__MSL_CPP__ >= 0x5000 && defined( _MSL_NO_MESSAGE_FACET )) || \
(__MSL_CPP__ < 0x5000 && defined( MSIPL_NL_TYPES ))))
# define _STLP_NO_NATIVE_MESSAGE_FACET 1
# endif
#endif
/* common switches for EDG front-end */
/* __EDG_SWITCHES do not seem to be an official EDG macro.
* We keep it for historical reason. */
#if defined (__EDG_SWITCHES)
# if !(defined(_TYPENAME) || defined (_TYPENAME_IS_KEYWORD))
# undef _STLP_NEED_TYPENAME
# define _STLP_NEED_TYPENAME 1
# endif
# ifndef _WCHAR_T_IS_KEYWORD
# undef _STLP_NO_WCHAR_T
# define _STLP_NO_WCHAR_T 1
# endif
# ifndef _PARTIAL_SPECIALIZATION_OF_CLASS_TEMPLATES
# undef _STLP_NO_CLASS_PARTIAL_SPECIALIZATION
# define _STLP_NO_CLASS_PARTIAL_SPECIALIZATION 1
# endif
# ifndef _MEMBER_TEMPLATES
# undef _STLP_NO_MEMBER_TEMPLATES
# define _STLP_NO_MEMBER_TEMPLATES 1
# undef _STLP_NO_MEMBER_TEMPLATE_CLASSES
# define _STLP_NO_MEMBER_TEMPLATE_CLASSES 1
# endif
# ifndef _MEMBER_TEMPLATE_KEYWORD
# undef _STLP_NO_MEMBER_TEMPLATE_KEYWORD
# define _STLP_NO_MEMBER_TEMPLATE_KEYWORD 1
# endif
# if !defined (__EXCEPTIONS) && ! defined (_EXCEPTIONS)
# undef _STLP_HAS_NO_EXCEPTIONS
# define _STLP_HAS_NO_EXCEPTIONS
# endif
# undef __EDG_SWITCHES
#endif /* EDG */
/* __EDG_VERSION__ is an official EDG macro, compilers based
* on EDG have to define it. */
#if defined (__EDG_VERSION__)
# if (__EDG_VERSION__ >= 244) && !defined (_STLP_HAS_INCLUDE_NEXT) && !defined(__ANDROID__)
# define _STLP_HAS_INCLUDE_NEXT
# endif
# if (__EDG_VERSION__ <= 240) && !defined (_STLP_DONT_RETURN_VOID)
# define _STLP_DONT_RETURN_VOID
# endif
# if !defined (__EXCEPTIONS) && !defined (_STLP_HAS_NO_EXCEPTIONS)
# define _STLP_HAS_NO_EXCEPTIONS
# endif
# if !defined (__NO_LONG_LONG) && !defined (_STLP_LONG_LONG)
# define _STLP_LONG_LONG long long
# endif
#endif
#endif