Fixes for STLPort 4.1b6,

and for gcc on platforms with <sys/type.h>


[SVN r10089]
This commit is contained in:
John Maddock
2001-05-11 10:50:06 +00:00
parent efd0ce56bc
commit 08cee9a2a6
7 changed files with 87 additions and 133 deletions

View File

@ -50,9 +50,6 @@ full list of macros and their usage.
#include <clocale>
#include <string>
#include <boost/smart_ptr.hpp>
#ifdef __CYGWIN__
#include <sys/types.h>
#endif
#include <boost/cstdint.hpp>
#else
//
@ -163,7 +160,11 @@ full list of macros and their usage.
//
// only want "real" Visual C++ here:
#if defined(BOOST_MSVC) && !defined(__WATCOMC__) && !defined(__BORLANDC__) && !defined(__GNUC__) && !defined(__MWERKS__) && !defined (__ICL)
#define BOOST_RE_CALL __fastcall
#ifdef _DEBUG
#define BOOST_RE_CALL __cdecl
#else
#define BOOST_RE_CALL __fastcall
#endif
#define BOOST_RE_CCALL __stdcall
#if BOOST_MSVC < 1100
@ -362,33 +363,34 @@ full list of macros and their usage.
#ifndef BOOST_RE_NO_ITERATOR_H
#include <iterator>
#if defined(__SGI_STL_INTERNAL_ITERATOR_H) || defined(__SGI_STL_ITERATOR_H)
#if defined(__SGI_STL_INTERNAL_ITERATOR_H) || defined(_STLP_INTERNAL_ITERATOR_H) || defined(__SGI_STL_ITERATOR_H) || defined(__SGI_STL_PORT)
/* we are using SGI's STL
some of these (std)
may be guesswork: */
# if (!defined (__SGI_STL_OWN_IOSTREAMS) && !defined(__GLIBCPP__) && !defined(__STL_USE_NEW_IOSTREAMS)) || defined (__STL_HAS_NO_NEW_IOSTREAMS) || defined (__STL_USE_NO_IOSTREAMS) || defined(__STL_NO_MBSTATE_T)
# if (!defined (__SGI_STL_OWN_IOSTREAMS) && !defined(_STLP_OWN_IOSTREAMS) && !defined(__GLIBCPP__) && !defined(__STL_USE_NEW_IOSTREAMS)) || defined (__STL_HAS_NO_NEW_IOSTREAMS) || defined(_STLP_HAS_NO_NEW_IOSTREAMS) || defined (__STL_USE_NO_IOSTREAMS) || defined(__STLP_USE_NO_IOSTREAMS) || defined(__STL_NO_MBSTATE_T) || defined(__STLP_NO_MBSTATE_T)
// Old IO streams:
#define BOOST_RE_NO_LOCALE_H
#define BOOST_RE_OLD_IOSTREAM
#else
#ifdef __STL_NO_EXPLICIT_FUNCTION_TMPL_ARGS
#include <locale>
#if defined( __STL_NO_EXPLICIT_FUNCTION_TMPL_ARGS) || defined(_STLP_NO_EXPLICIT_FUNCTION_TMPL_ARGS)
#define BOOST_RE_USE_FACET(l, m) (*std::_Use_facet<m >(l))
#endif
#endif
#ifdef __BASTRING__
#define BOOST_RE_NO_WCSTRING
#endif
#if !defined(__STL_MEMBER_TEMPLATE_CLASSES) || !defined(__STL_MEMBER_TEMPLATES)
#if !(defined(__STL_MEMBER_TEMPLATE_CLASSES) || defined(__STLP_MEMBER_TEMPLATE_CLASSES)) || !(defined(__STL_MEMBER_TEMPLATES) || defined(__STLP_MEMBER_TEMPLATES))
#define BOOST_NO_MEMBER_TEMPLATES
#endif
#define BOOST_RE_NO_TYPEINFO
#ifdef __STL_NO_BOOL
#if defined(__STL_NO_BOOL) || defined(__STLP_NO_BOOL)
#define BOOST_RE_NO_BOOL
#endif
#ifdef __STL_LIMITED_DEFAULT_TEMPLATES
#if defined(__STL_LIMITED_DEFAULT_TEMPLATES) || defined(__STLP_LIMITED_DEFAULT_TEMPLATES)
#define BOOST_RE_NO_TRICKY_DEFAULT_PARAM
#define BOOST_RE_NO_STRING_DEF_ARGS
#endif
@ -398,20 +400,17 @@ full list of macros and their usage.
#define BOOST_RE_ALGO_INCLUDED
#if !defined( __STL_CLASS_PARTIAL_SPECIALIZATION) || !defined(__SGI_STL_PORT)
#if !(defined( __STL_CLASS_PARTIAL_SPECIALIZATION) || defined(__STLP_CLASS_PARTIAL_SPECIALIZATION)) || !defined(__SGI_STL_PORT)
#define BOOST_NO_STD_DISTANCE
#endif
#if defined(__STL_USE_STD_ALLOCATORS) || (defined(__SGI_STL_PORT ) && !defined(__STL_MEMBER_TEMPLATE_CLASSES) && !defined(__STL_MEMBER_TEMPLATES))
#if defined(__STL_USE_STD_ALLOCATORS) || (defined(__SGI_STL_PORT ) && !defined(__STL_MEMBER_TEMPLATE_CLASSES) && !defined(__STLP_MEMBER_TEMPLATE_CLASSES) && !defined(__STL_MEMBER_TEMPLATES) && !defined(__STLP_MEMBER_TEMPLATES))
/* new style allocator's with nested template classes */
#else /* __STL_USE_STD_ALLOCATORS */
#define BOOST_NO_STD_ALLOCATOR
#endif /* __STL_USE_STD_ALLOCATORS */
#define BOOST_RE_STL_DONE
#ifndef __SGI_STL_PORT
//#define BOOST_RE_NO_NOT_EQUAL
#endif
#elif defined(_RWSTD_VER) || defined(__STD_ITERATOR__)

View File

@ -0,0 +1,48 @@
/*
*
* Copyright (c) 1998-2000
* Dr John Maddock
*
* Permission to use, copy, modify, distribute and sell this software
* and its documentation for any purpose is hereby granted without fee,
* provided that the above copyright notice appear in all copies and
* that both that copyright notice and this permission notice appear
* in supporting documentation. Dr John Maddock makes no representations
* about the suitability of this software for any purpose.
* It is provided "as is" without express or implied warranty.
*
*/
/*
* LOCATION: see http://www.boost.org for most recent version.
* FILE src.cpp
* VERSION 3.11
* DESCRIPTION: Includes all the regex source files, include this
* file only if you need to build the regex library
* as a single file. Before including this file you
* must define BOOST_RE_NO_LIB, or include this file
* before any other regex header.
*/
#if !defined(BOOST_RE_NO_LIB) && defined(BOOST_REGEX_CONFIG_HPP)
#error too late you have already included a regex header - try defining BOOST_RE_NO_LIB when you build
#endif
//
// include library source files:
//
#ifdef BOOST_RE_LOCALE_W32
#include "libs/regex/src/w32_regex_traits.cpp"
#elif defined(BOOST_RE_LOCALE_C)
#include "libs/regex/src/c_regex_traits.cpp"
#else
#include "libs/regex/src/cpp_regex_traits.cpp"
#endif
#include "libs/regex/src/c_regex_traits_common.cpp"
#include "libs/regex/src/cregex.cpp"
#include "libs/regex/src/fileiter.cpp"
#include "libs/regex/src/posix_api.cpp"
#include "libs/regex/src/wide_posix_api.cpp"
#include "libs/regex/src/regex.cpp"
#include "libs/regex/src/regex_debug.cpp"
#include "libs/regex/src/regex_synch.cpp"