diff options
Diffstat (limited to '3rdParty/Boost/src/boost/config/stdlib')
| -rw-r--r-- | 3rdParty/Boost/src/boost/config/stdlib/dinkumware.hpp | 111 | ||||
| -rw-r--r-- | 3rdParty/Boost/src/boost/config/stdlib/libcomo.hpp | 50 | ||||
| -rw-r--r-- | 3rdParty/Boost/src/boost/config/stdlib/libstdcpp3.hpp | 83 | ||||
| -rw-r--r-- | 3rdParty/Boost/src/boost/config/stdlib/modena.hpp | 34 | ||||
| -rw-r--r-- | 3rdParty/Boost/src/boost/config/stdlib/msl.hpp | 63 | ||||
| -rw-r--r-- | 3rdParty/Boost/src/boost/config/stdlib/roguewave.hpp | 159 | ||||
| -rw-r--r-- | 3rdParty/Boost/src/boost/config/stdlib/sgi.hpp | 112 | ||||
| -rw-r--r-- | 3rdParty/Boost/src/boost/config/stdlib/stlport.hpp | 206 | ||||
| -rw-r--r-- | 3rdParty/Boost/src/boost/config/stdlib/vacpp.hpp | 19 | 
9 files changed, 837 insertions, 0 deletions
diff --git a/3rdParty/Boost/src/boost/config/stdlib/dinkumware.hpp b/3rdParty/Boost/src/boost/config/stdlib/dinkumware.hpp new file mode 100644 index 0000000..ff1aed9 --- /dev/null +++ b/3rdParty/Boost/src/boost/config/stdlib/dinkumware.hpp @@ -0,0 +1,111 @@ +//  (C) Copyright John Maddock 2001 - 2003. +//  (C) Copyright Jens Maurer 2001. +//  (C) Copyright Peter Dimov 2001. +//  (C) Copyright David Abrahams 2002. +//  (C) Copyright Guillaume Melquiond 2003. +//  Use, modification and distribution are subject to the +//  Boost Software License, Version 1.0. (See accompanying file +//  LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) + +//  See http://www.boost.org for most recent version. + +//  Dinkumware standard library config: + +#if !defined(_YVALS) && !defined(_CPPLIB_VER) +#include <boost/config/no_tr1/utility.hpp> +#if !defined(_YVALS) && !defined(_CPPLIB_VER) +#error This is not the Dinkumware lib! +#endif +#endif + + +#if defined(_CPPLIB_VER) && (_CPPLIB_VER >= 306) +   // full dinkumware 3.06 and above +   // fully conforming provided the compiler supports it: +#  if !(defined(_GLOBAL_USING) && (_GLOBAL_USING+0 > 0)) && !defined(__BORLANDC__) && !defined(_STD) && !(defined(__ICC) && (__ICC >= 700))   // can be defined in yvals.h +#     define BOOST_NO_STDC_NAMESPACE +#  endif +#  if !(defined(_HAS_MEMBER_TEMPLATES_REBIND) && (_HAS_MEMBER_TEMPLATES_REBIND+0 > 0)) && !(defined(_MSC_VER) && (_MSC_VER > 1300)) && defined(BOOST_MSVC) +#     define BOOST_NO_STD_ALLOCATOR +#  endif +#  define BOOST_HAS_PARTIAL_STD_ALLOCATOR +#  if defined(BOOST_MSVC) && (BOOST_MSVC < 1300) +      // if this lib version is set up for vc6 then there is no std::use_facet: +#     define BOOST_NO_STD_USE_FACET +#     define BOOST_HAS_TWO_ARG_USE_FACET +      // C lib functions aren't in namespace std either: +#     define BOOST_NO_STDC_NAMESPACE +      // and nor is <exception> +#     define BOOST_NO_EXCEPTION_STD_NAMESPACE +#  endif +// There's no numeric_limits<long long> support unless _LONGLONG is defined: +#  if !defined(_LONGLONG) && (_CPPLIB_VER <= 310) +#     define BOOST_NO_MS_INT64_NUMERIC_LIMITS +#  endif +// 3.06 appears to have (non-sgi versions of) <hash_set> & <hash_map>, +// and no <slist> at all +#else +#  define BOOST_MSVC_STD_ITERATOR 1 +#  define BOOST_NO_STD_ITERATOR +#  define BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS +#  define BOOST_NO_STD_ALLOCATOR +#  define BOOST_NO_STDC_NAMESPACE +#  define BOOST_NO_STD_USE_FACET +#  define BOOST_NO_STD_OUTPUT_ITERATOR_ASSIGN +#  define BOOST_HAS_MACRO_USE_FACET +#  ifndef _CPPLIB_VER +      // Updated Dinkum library defines this, and provides +      // its own min and max definitions. +#     define BOOST_NO_STD_MIN_MAX +#     define BOOST_NO_MS_INT64_NUMERIC_LIMITS +#  endif +#endif + +// +// std extension namespace is stdext for vc7.1 and later,  +// the same applies to other compilers that sit on top +// of vc7.1 (Intel and Comeau): +// +#if defined(_MSC_VER) && (_MSC_VER >= 1310) && !defined(__BORLANDC__) +#  define BOOST_STD_EXTENSION_NAMESPACE stdext +#endif + + +#if (defined(_MSC_VER) && (_MSC_VER <= 1300) && !defined(__BORLANDC__)) || !defined(_CPPLIB_VER) || (_CPPLIB_VER < 306) +   // if we're using a dinkum lib that's +   // been configured for VC6/7 then there is +   // no iterator traits (true even for icl) +#  define BOOST_NO_STD_ITERATOR_TRAITS +#endif + +// +// No std::unordered_* containers yet: +// +#define BOOST_NO_STD_UNORDERED + +#if defined(__ICL) && (__ICL < 800) && defined(_CPPLIB_VER) && (_CPPLIB_VER <= 310) +// Intel C++ chokes over any non-trivial use of <locale> +// this may be an overly restrictive define, but regex fails without it: +#  define BOOST_NO_STD_LOCALE +#endif + +#ifdef _CPPLIB_VER +#  define BOOST_DINKUMWARE_STDLIB _CPPLIB_VER +#else +#  define BOOST_DINKUMWARE_STDLIB 1 +#endif + +#ifdef _CPPLIB_VER +#  define BOOST_STDLIB "Dinkumware standard library version " BOOST_STRINGIZE(_CPPLIB_VER) +#else +#  define BOOST_STDLIB "Dinkumware standard library version 1.x" +#endif + + + + + + + + + diff --git a/3rdParty/Boost/src/boost/config/stdlib/libcomo.hpp b/3rdParty/Boost/src/boost/config/stdlib/libcomo.hpp new file mode 100644 index 0000000..3114094 --- /dev/null +++ b/3rdParty/Boost/src/boost/config/stdlib/libcomo.hpp @@ -0,0 +1,50 @@ +//  (C) Copyright John Maddock 2002 - 2003.  +//  (C) Copyright Jens Maurer 2002 - 2003.  +//  (C) Copyright Beman Dawes 2002 - 2003.  +//  Use, modification and distribution are subject to the  +//  Boost Software License, Version 1.0. (See accompanying file  +//  LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) + +//  See http://www.boost.org for most recent version. + +//  Comeau STL: + +#if !defined(__LIBCOMO__) +#  include <boost/config/no_tr1/utility.hpp> +#  if !defined(__LIBCOMO__) +#      error "This is not the Comeau STL!" +#  endif +#endif + +// +// std::streambuf<wchar_t> is non-standard +// NOTE: versions of libcomo prior to beta28 have octal version numbering, +// e.g. version 25 is 21 (dec) +#if __LIBCOMO_VERSION__ <= 22 +#  define BOOST_NO_STD_WSTREAMBUF +#endif + +#if (__LIBCOMO_VERSION__ <= 31) && defined(_WIN32) +#define BOOST_NO_SWPRINTF +#endif + +#if __LIBCOMO_VERSION__ >= 31 +#  define BOOST_HAS_HASH +#  define BOOST_HAS_SLIST +#endif +// +// We never have the new C++0x unordered containers: +// +#define BOOST_NO_STD_UNORDERED + +// +// Intrinsic type_traits support. +// The SGI STL has it's own __type_traits class, which +// has intrinsic compiler support with SGI's compilers. +// Whatever map SGI style type traits to boost equivalents: +// +#define BOOST_HAS_SGI_TYPE_TRAITS + +#define BOOST_STDLIB "Comeau standard library " BOOST_STRINGIZE(__LIBCOMO_VERSION__) + + diff --git a/3rdParty/Boost/src/boost/config/stdlib/libstdcpp3.hpp b/3rdParty/Boost/src/boost/config/stdlib/libstdcpp3.hpp new file mode 100644 index 0000000..8e1c811 --- /dev/null +++ b/3rdParty/Boost/src/boost/config/stdlib/libstdcpp3.hpp @@ -0,0 +1,83 @@ +//  (C) Copyright John Maddock 2001. +//  (C) Copyright Jens Maurer 2001. +//  Use, modification and distribution are subject to the +//  Boost Software License, Version 1.0. (See accompanying file +//  LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) + +//  See http://www.boost.org for most recent version. + +//  config for libstdc++ v3 +//  not much to go in here: + +#ifdef __GLIBCXX__ +#define BOOST_STDLIB "GNU libstdc++ version " BOOST_STRINGIZE(__GLIBCXX__) +#else +#define BOOST_STDLIB "GNU libstdc++ version " BOOST_STRINGIZE(__GLIBCPP__) +#endif + +#if !defined(_GLIBCPP_USE_WCHAR_T) && !defined(_GLIBCXX_USE_WCHAR_T) +#  define BOOST_NO_CWCHAR +#  define BOOST_NO_CWCTYPE +#  define BOOST_NO_STD_WSTRING +#  define BOOST_NO_STD_WSTREAMBUF +#endif + +#if defined(__osf__) && !defined(_REENTRANT) \ +  && ( defined(_GLIBCXX_HAVE_GTHR_DEFAULT) || defined(_GLIBCPP_HAVE_GTHR_DEFAULT) ) +// GCC 3 on Tru64 forces the definition of _REENTRANT when any std lib header +// file is included, therefore for consistency we define it here as well. +#  define _REENTRANT +#endif + +#ifdef __GLIBCXX__ // gcc 3.4 and greater: +#  if defined(_GLIBCXX_HAVE_GTHR_DEFAULT) \ +        || defined(_GLIBCXX__PTHREADS) +      // +      // If the std lib has thread support turned on, then turn it on in Boost +      // as well.  We do this because some gcc-3.4 std lib headers define _REENTANT +      // while others do not... +      // +#     define BOOST_HAS_THREADS +#  else +#     define BOOST_DISABLE_THREADS +#  endif +#elif defined(__GLIBCPP__) \ +        && !defined(_GLIBCPP_HAVE_GTHR_DEFAULT) \ +        && !defined(_GLIBCPP__PTHREADS) +   // disable thread support if the std lib was built single threaded: +#  define BOOST_DISABLE_THREADS +#endif + +#if (defined(linux) || defined(__linux) || defined(__linux__)) && defined(__arm__) && defined(_GLIBCPP_HAVE_GTHR_DEFAULT) +// linux on arm apparently doesn't define _REENTRANT +// so just turn on threading support whenever the std lib is thread safe: +#  define BOOST_HAS_THREADS +#endif + + +#if !defined(_GLIBCPP_USE_LONG_LONG) \ +    && !defined(_GLIBCXX_USE_LONG_LONG)\ +    && defined(BOOST_HAS_LONG_LONG) +// May have been set by compiler/*.hpp, but "long long" without library +// support is useless. +#  undef BOOST_HAS_LONG_LONG +#endif + +#if defined(__GLIBCXX__) || (defined(__GLIBCPP__) && __GLIBCPP__>=20020514) // GCC >= 3.1.0 +#  define BOOST_STD_EXTENSION_NAMESPACE __gnu_cxx +#  define BOOST_HAS_SLIST +#  define BOOST_HAS_HASH +#  define BOOST_SLIST_HEADER <ext/slist> +# if !defined(__GNUC__) || __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3) +#   define BOOST_HASH_SET_HEADER <ext/hash_set> +#   define BOOST_HASH_MAP_HEADER <ext/hash_map> +# else +#   define BOOST_HASH_SET_HEADER <backward/hash_set> +#   define BOOST_HASH_MAP_HEADER <backward/hash_map> +# endif +#endif + +#ifndef __GXX_EXPERIMENTAL_CXX0X__ +#  define BOOST_NO_STD_UNORDERED +#endif + diff --git a/3rdParty/Boost/src/boost/config/stdlib/modena.hpp b/3rdParty/Boost/src/boost/config/stdlib/modena.hpp new file mode 100644 index 0000000..e488d13 --- /dev/null +++ b/3rdParty/Boost/src/boost/config/stdlib/modena.hpp @@ -0,0 +1,34 @@ +//  (C) Copyright Jens Maurer 2001.  +//  Use, modification and distribution are subject to the  +//  Boost Software License, Version 1.0. (See accompanying file  +//  LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) + +//  See http://www.boost.org for most recent version. + +//  Modena C++ standard library (comes with KAI C++) + +#if !defined(MSIPL_COMPILE_H) +#  include <boost/config/no_tr1/utility.hpp> +#  if !defined(__MSIPL_COMPILE_H) +#      error "This is not the Modena C++ library!" +#  endif +#endif + +#ifndef MSIPL_NL_TYPES +#define BOOST_NO_STD_MESSAGES +#endif + +#ifndef MSIPL_WCHART +#define BOOST_NO_STD_WSTRING +#endif +// +// We never have the new C++0x unordered containers: +// +#define BOOST_NO_STD_UNORDERED + +#define BOOST_STDLIB "Modena C++ standard library" + + + + + diff --git a/3rdParty/Boost/src/boost/config/stdlib/msl.hpp b/3rdParty/Boost/src/boost/config/stdlib/msl.hpp new file mode 100644 index 0000000..746878d --- /dev/null +++ b/3rdParty/Boost/src/boost/config/stdlib/msl.hpp @@ -0,0 +1,63 @@ +//  (C) Copyright John Maddock 2001.  +//  (C) Copyright Darin Adler 2001.  +//  Use, modification and distribution are subject to the  +//  Boost Software License, Version 1.0. (See accompanying file  +//  LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) + +//  See http://www.boost.org for most recent version. + +//  Metrowerks standard library: + +#ifndef __MSL_CPP__ +#  include <boost/config/no_tr1/utility.hpp> +#  ifndef __MSL_CPP__ +#     error This is not the MSL standard library! +#  endif +#endif + +#if __MSL_CPP__ >= 0x6000  // Pro 6 +#  define BOOST_HAS_HASH +#  define BOOST_STD_EXTENSION_NAMESPACE Metrowerks +#endif +#define BOOST_HAS_SLIST + +#if __MSL_CPP__ < 0x6209 +#  define BOOST_NO_STD_MESSAGES +#endif + +// check C lib version for <stdint.h> +#include <cstddef> + +#if defined(__MSL__) && (__MSL__ >= 0x5000) +#  define BOOST_HAS_STDINT_H +#  if !defined(__PALMOS_TRAPS__) +#    define BOOST_HAS_UNISTD_H +#  endif +   // boilerplate code: +#  include <boost/config/posix_features.hpp> +#endif + +#if defined(_MWMT) || _MSL_THREADSAFE +#  define BOOST_HAS_THREADS +#endif + +#ifdef _MSL_NO_EXPLICIT_FUNC_TEMPLATE_ARG +#  define BOOST_NO_STD_USE_FACET +#  define BOOST_HAS_TWO_ARG_USE_FACET +#endif +// +// We never have the new C++0x unordered containers: +// +#define BOOST_NO_STD_UNORDERED + + +#define BOOST_STDLIB "Metrowerks Standard Library version " BOOST_STRINGIZE(__MSL_CPP__) + + + + + + + + + diff --git a/3rdParty/Boost/src/boost/config/stdlib/roguewave.hpp b/3rdParty/Boost/src/boost/config/stdlib/roguewave.hpp new file mode 100644 index 0000000..3e58882 --- /dev/null +++ b/3rdParty/Boost/src/boost/config/stdlib/roguewave.hpp @@ -0,0 +1,159 @@ +//  (C) Copyright John Maddock 2001 - 2003.  +//  (C) Copyright Jens Maurer 2001.  +//  (C) Copyright David Abrahams 2003.  +//  (C) Copyright Boris Gubenko 2007.  +//  Use, modification and distribution are subject to the  +//  Boost Software License, Version 1.0. (See accompanying file  +//  LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) + +//  See http://www.boost.org for most recent version. + +//  Rogue Wave std lib: + +#if !defined(__STD_RWCOMPILER_H__) && !defined(_RWSTD_VER) +#  include <boost/config/no_tr1/utility.hpp> +#  if !defined(__STD_RWCOMPILER_H__) && !defined(_RWSTD_VER) +#     error This is not the Rogue Wave standard library +#  endif +#endif +// +// figure out a consistent version number: +// +#ifndef _RWSTD_VER +#  define BOOST_RWSTD_VER 0x010000 +#elif _RWSTD_VER < 0x010000 +#  define BOOST_RWSTD_VER (_RWSTD_VER << 8) +#else +#  define BOOST_RWSTD_VER _RWSTD_VER +#endif + +#ifndef _RWSTD_VER +#  define BOOST_STDLIB "Rogue Wave standard library version (Unknown version)" +#elif _RWSTD_VER < 0x04010200 + #  define BOOST_STDLIB "Rogue Wave standard library version " BOOST_STRINGIZE(_RWSTD_VER) +#else +#  ifdef _RWSTD_VER_STR +#    define BOOST_STDLIB "Apache STDCXX standard library version " _RWSTD_VER_STR +#  else +#    define BOOST_STDLIB "Apache STDCXX standard library version " BOOST_STRINGIZE(_RWSTD_VER) +#  endif +#endif + +// +// Prior to version 2.2.0 the primary template for std::numeric_limits +// does not have compile time constants, even though specializations of that +// template do: +// +#if BOOST_RWSTD_VER < 0x020200 +#  define BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS +#endif + +// Sun CC 5.5 patch 113817-07 adds long long specialization, but does not change the +// library version number (http://sunsolve6.sun.com/search/document.do?assetkey=1-21-113817): +#if BOOST_RWSTD_VER <= 0x020101 && (!defined(__SUNPRO_CC) || (__SUNPRO_CC < 0x550)) +#  define BOOST_NO_LONG_LONG_NUMERIC_LIMITS +# endif + +// +// Borland version of numeric_limits lacks __int64 specialisation: +// +#ifdef __BORLANDC__ +#  define BOOST_NO_MS_INT64_NUMERIC_LIMITS +#endif + +// +// No std::iterator if it can't figure out default template args: +// +#if defined(_RWSTD_NO_SIMPLE_DEFAULT_TEMPLATES) || defined(RWSTD_NO_SIMPLE_DEFAULT_TEMPLATES) || (BOOST_RWSTD_VER < 0x020000) +#  define BOOST_NO_STD_ITERATOR +#endif + +// +// No iterator traits without partial specialization: +// +#if defined(_RWSTD_NO_CLASS_PARTIAL_SPEC) || defined(RWSTD_NO_CLASS_PARTIAL_SPEC) +#  define BOOST_NO_STD_ITERATOR_TRAITS +#endif + +// +// Prior to version 2.0, std::auto_ptr was buggy, and there were no +// new-style iostreams, and no conformant std::allocator: +// +#if (BOOST_RWSTD_VER < 0x020000) +#  define BOOST_NO_AUTO_PTR +#  define BOOST_NO_STRINGSTREAM +#  define BOOST_NO_STD_ALLOCATOR +#  define BOOST_NO_STD_LOCALE +#endif + +// +// No template iterator constructors without member template support: +// +#if defined(RWSTD_NO_MEMBER_TEMPLATES) || defined(_RWSTD_NO_MEMBER_TEMPLATES) +#  define BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS +#endif + +// +// RW defines _RWSTD_ALLOCATOR if the allocator is conformant and in use +// (the or _HPACC_ part is a hack - the library seems to define _RWSTD_ALLOCATOR +// on HP aCC systems even though the allocator is in fact broken): +// +#if !defined(_RWSTD_ALLOCATOR) || (defined(__HP_aCC) && __HP_aCC <= 33100) +#  define BOOST_NO_STD_ALLOCATOR +#endif + +// +// If we have a std::locale, we still may not have std::use_facet: +// +#if defined(_RWSTD_NO_TEMPLATE_ON_RETURN_TYPE) && !defined(BOOST_NO_STD_LOCALE) +#  define BOOST_NO_STD_USE_FACET +#  define BOOST_HAS_TWO_ARG_USE_FACET +#endif + +// +// There's no std::distance prior to version 2, or without +// partial specialization support: +// +#if (BOOST_RWSTD_VER < 0x020000) || defined(_RWSTD_NO_CLASS_PARTIAL_SPEC) +    #define BOOST_NO_STD_DISTANCE +#endif + +// +// Some versions of the rogue wave library don't have assignable +// OutputIterators: +// +#if BOOST_RWSTD_VER < 0x020100 +#  define BOOST_NO_STD_OUTPUT_ITERATOR_ASSIGN +#endif + +// +// Disable BOOST_HAS_LONG_LONG when the library has no support for it. +// +#if !defined(_RWSTD_LONG_LONG) && defined(BOOST_HAS_LONG_LONG) +#  undef BOOST_HAS_LONG_LONG +#endif + +// +// check that on HP-UX, the proper RW library is used +// +#if defined(__HP_aCC) && !defined(_HP_NAMESPACE_STD) +#  error "Boost requires Standard RW library. Please compile and link with -AA" +#endif + +// +// Define macros specific to RW V2.2 on HP-UX +// +#if defined(__HP_aCC) && (BOOST_RWSTD_VER == 0x02020100) +#  ifndef __HP_TC1_MAKE_PAIR +#    define __HP_TC1_MAKE_PAIR +#  endif +#  ifndef _HP_INSTANTIATE_STD2_VL +#    define _HP_INSTANTIATE_STD2_VL +#  endif +#endif + +// +// We never have the new C++0x unordered containers: +// +#define BOOST_NO_STD_UNORDERED + diff --git a/3rdParty/Boost/src/boost/config/stdlib/sgi.hpp b/3rdParty/Boost/src/boost/config/stdlib/sgi.hpp new file mode 100644 index 0000000..b493d49 --- /dev/null +++ b/3rdParty/Boost/src/boost/config/stdlib/sgi.hpp @@ -0,0 +1,112 @@ +//  (C) Copyright John Maddock 2001 - 2003.  +//  (C) Copyright Darin Adler 2001.  +//  (C) Copyright Jens Maurer 2001 - 2003.  +//  Use, modification and distribution are subject to the  +//  Boost Software License, Version 1.0. (See accompanying file  +//  LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) + +//  See http://www.boost.org for most recent version. + +//  generic SGI STL: + +#if !defined(__STL_CONFIG_H) +#  include <boost/config/no_tr1/utility.hpp> +#  if !defined(__STL_CONFIG_H) +#      error "This is not the SGI STL!" +#  endif +#endif + +// +// No std::iterator traits without partial specialisation: +// +#if !defined(__STL_CLASS_PARTIAL_SPECIALIZATION) +#  define BOOST_NO_STD_ITERATOR_TRAITS +#endif + +// +// No std::stringstream with gcc < 3 +// +#if defined(__GNUC__) && (__GNUC__ < 3) && \ +     ((__GNUC_MINOR__ < 95) || (__GNUC_MINOR__ == 96)) && \ +     !defined(__STL_USE_NEW_IOSTREAMS) || \ +   defined(__APPLE_CC__) +   // Note that we only set this for GNU C++ prior to 2.95 since the +   // latest patches for that release do contain a minimal <sstream> +   // If you are running a 2.95 release prior to 2.95.3 then this will need +   // setting, but there is no way to detect that automatically (other +   // than by running the configure script). +   // Also, the unofficial GNU C++ 2.96 included in RedHat 7.1 doesn't +   // have <sstream>. +#  define BOOST_NO_STRINGSTREAM +#endif + +// +// Assume no std::locale without own iostreams (this may be an +// incorrect assumption in some cases): +// +#if !defined(__SGI_STL_OWN_IOSTREAMS) && !defined(__STL_USE_NEW_IOSTREAMS) +#  define BOOST_NO_STD_LOCALE +#endif + +// +// Original native SGI streams have non-standard std::messages facet: +// +#if defined(__sgi) && (_COMPILER_VERSION <= 650) && !defined(__SGI_STL_OWN_IOSTREAMS) +#  define BOOST_NO_STD_LOCALE +#endif + +// +// SGI's new iostreams have missing "const" in messages<>::open +// +#if defined(__sgi) && (_COMPILER_VERSION <= 740) && defined(__STL_USE_NEW_IOSTREAMS) +#  define BOOST_NO_STD_MESSAGES +#endif + +// +// No template iterator constructors, or std::allocator +// without member templates: +// +#if !defined(__STL_MEMBER_TEMPLATES) +#  define BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS +#  define BOOST_NO_STD_ALLOCATOR +#endif + +// +// We always have SGI style hash_set, hash_map, and slist: +// +#define BOOST_HAS_HASH +#define BOOST_HAS_SLIST +#define BOOST_NO_STD_UNORDERED + +// +// If this is GNU libstdc++2, then no <limits> and no std::wstring: +// +#if (defined(__GNUC__) && (__GNUC__ < 3)) +#  include <string> +#  if defined(__BASTRING__) +#     define BOOST_NO_LIMITS +// Note: <boost/limits.hpp> will provide compile-time constants +#     undef BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS +#     define BOOST_NO_STD_WSTRING +#  endif +#endif + +// +// There is no standard iterator unless we have namespace support: +// +#if !defined(__STL_USE_NAMESPACES) +#  define BOOST_NO_STD_ITERATOR +#endif + +// +// Intrinsic type_traits support. +// The SGI STL has it's own __type_traits class, which +// has intrinsic compiler support with SGI's compilers. +// Whatever map SGI style type traits to boost equivalents: +// +#define BOOST_HAS_SGI_TYPE_TRAITS + +#define BOOST_STDLIB "SGI standard library" + + + diff --git a/3rdParty/Boost/src/boost/config/stdlib/stlport.hpp b/3rdParty/Boost/src/boost/config/stdlib/stlport.hpp new file mode 100644 index 0000000..82e4cff --- /dev/null +++ b/3rdParty/Boost/src/boost/config/stdlib/stlport.hpp @@ -0,0 +1,206 @@ +//  (C) Copyright John Maddock 2001 - 2002.  +//  (C) Copyright Darin Adler 2001.  +//  (C) Copyright Jens Maurer 2001.  +//  Use, modification and distribution are subject to the  +//  Boost Software License, Version 1.0. (See accompanying file  +//  LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) + +//  See http://www.boost.org for most recent version. + +//  STLPort standard library config: + +#if !defined(__SGI_STL_PORT) && !defined(_STLPORT_VERSION) +#  include <cstddef> +#  if !defined(__SGI_STL_PORT) && !defined(_STLPORT_VERSION) +#      error "This is not STLPort!" +#  endif +#endif + +// +// __STL_STATIC_CONST_INIT_BUG implies BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS +// for versions prior to 4.1(beta) +// +#if (defined(__STL_STATIC_CONST_INIT_BUG) || defined(_STLP_STATIC_CONST_INIT_BUG)) && (__SGI_STL_PORT <= 0x400) +#  define BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS +#endif + +// +// If STLport thinks that there is no partial specialisation, then there is no +// std::iterator traits: +// +#if !(defined(_STLP_CLASS_PARTIAL_SPECIALIZATION) || defined(__STL_CLASS_PARTIAL_SPECIALIZATION)) +#  define BOOST_NO_STD_ITERATOR_TRAITS +#endif + +// +// No new style iostreams on GCC without STLport's iostreams enabled: +// +#if (defined(__GNUC__) && (__GNUC__ < 3)) && !(defined(__SGI_STL_OWN_IOSTREAMS) || defined(_STLP_OWN_IOSTREAMS)) +#  define BOOST_NO_STRINGSTREAM +#endif + +// +// No new iostreams implies no std::locale, and no std::stringstream: +// +#if defined(__STL_NO_IOSTREAMS) || defined(__STL_NO_NEW_IOSTREAMS) || defined(_STLP_NO_IOSTREAMS) || defined(_STLP_NO_NEW_IOSTREAMS) +#  define BOOST_NO_STD_LOCALE +#  define BOOST_NO_STRINGSTREAM +#endif + +// +// If the streams are not native, and we have a "using ::x" compiler bug +// then the io stream facets are not available in namespace std:: +// +#ifdef _STLPORT_VERSION +#  if !(_STLPORT_VERSION >= 0x500) && !defined(_STLP_OWN_IOSTREAMS) && defined(_STLP_USE_NAMESPACES) && defined(BOOST_NO_USING_TEMPLATE) && !defined(__BORLANDC__) +#     define BOOST_NO_STD_LOCALE +#  endif +#else +#  if !defined(__SGI_STL_OWN_IOSTREAMS) && defined(__STL_USE_NAMESPACES) && defined(BOOST_NO_USING_TEMPLATE) && !defined(__BORLANDC__) +#     define BOOST_NO_STD_LOCALE +#  endif +#endif + +#if defined(_STLPORT_VERSION) && (_STLPORT_VERSION < 0x500) +#  define BOOST_NO_STD_UNORDERED +#endif +// +// Without member template support enabled, their are no template +// iterate constructors, and no std::allocator: +// +#if !(defined(__STL_MEMBER_TEMPLATES) || defined(_STLP_MEMBER_TEMPLATES)) +#  define BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS +#  define BOOST_NO_STD_ALLOCATOR +#endif +// +// however we always have at least a partial allocator: +// +#define BOOST_HAS_PARTIAL_STD_ALLOCATOR + +#if !defined(_STLP_MEMBER_TEMPLATE_CLASSES) || defined(_STLP_DONT_SUPPORT_REBIND_MEMBER_TEMPLATE) +#  define BOOST_NO_STD_ALLOCATOR +#endif + +#if defined(_STLP_NO_MEMBER_TEMPLATE_KEYWORD) && defined(BOOST_MSVC) && (BOOST_MSVC <= 1300) +#  define BOOST_NO_STD_ALLOCATOR +#endif + +// +// If STLport thinks there is no wchar_t at all, then we have to disable +// the support for the relevant specilazations of std:: templates. +// +#if !defined(_STLP_HAS_WCHAR_T) && !defined(_STLP_WCHAR_T_IS_USHORT) +#  ifndef  BOOST_NO_STD_WSTRING +#     define BOOST_NO_STD_WSTRING +#  endif +#  ifndef  BOOST_NO_STD_WSTREAMBUF +#     define BOOST_NO_STD_WSTREAMBUF +#  endif +#endif + +// +// We always have SGI style hash_set, hash_map, and slist: +// +#ifndef _STLP_NO_EXTENSIONS +#define BOOST_HAS_HASH +#define BOOST_HAS_SLIST +#endif + +// +// STLport does a good job of importing names into namespace std::, +// but doesn't always get them all, define BOOST_NO_STDC_NAMESPACE, since our +// workaround does not conflict with STLports: +// +// +// Harold Howe says: +// Borland switched to STLport in BCB6. Defining BOOST_NO_STDC_NAMESPACE with +// BCB6 does cause problems. If we detect C++ Builder, then don't define  +// BOOST_NO_STDC_NAMESPACE +// +#if !defined(__BORLANDC__) && !defined(__DMC__) +// +// If STLport is using it's own namespace, and the real names are in +// the global namespace, then we duplicate STLport's using declarations +// (by defining BOOST_NO_STDC_NAMESPACE), we do this because STLport doesn't +// necessarily import all the names we need into namespace std:: +//  +#  if (defined(__STL_IMPORT_VENDOR_CSTD) \ +         || defined(__STL_USE_OWN_NAMESPACE) \ +         || defined(_STLP_IMPORT_VENDOR_CSTD) \ +         || defined(_STLP_USE_OWN_NAMESPACE)) \ +      && (defined(__STL_VENDOR_GLOBAL_CSTD) || defined (_STLP_VENDOR_GLOBAL_CSTD)) +#     define BOOST_NO_STDC_NAMESPACE +#     define BOOST_NO_EXCEPTION_STD_NAMESPACE +#  endif +#elif defined(__BORLANDC__) && __BORLANDC__ < 0x560 +// STLport doesn't import std::abs correctly: +#include <stdlib.h> +namespace std { using ::abs; } +// and strcmp/strcpy don't get imported either ('cos they are macros) +#include <string.h> +#ifdef strcpy +#  undef strcpy +#endif +#ifdef strcmp +#  undef strcmp +#endif +#ifdef _STLP_VENDOR_CSTD +namespace std{ using _STLP_VENDOR_CSTD::strcmp; using _STLP_VENDOR_CSTD::strcpy; } +#endif +#endif + +// +// std::use_facet may be non-standard, uses a class instead: +// +#if defined(__STL_NO_EXPLICIT_FUNCTION_TMPL_ARGS) || defined(_STLP_NO_EXPLICIT_FUNCTION_TMPL_ARGS) +#  define BOOST_NO_STD_USE_FACET +#  define BOOST_HAS_STLP_USE_FACET +#endif + +// +// If STLport thinks there are no wide functions, <cwchar> etc. is not working; but +// only if BOOST_NO_STDC_NAMESPACE is not defined (if it is then we do the import  +// into std:: ourselves). +// +#if defined(_STLP_NO_NATIVE_WIDE_FUNCTIONS) && !defined(BOOST_NO_STDC_NAMESPACE) +#  define BOOST_NO_CWCHAR +#  define BOOST_NO_CWCTYPE +#endif + +// +// If STLport for some reason was configured so that it thinks that wchar_t +// is not an intrinsic type, then we have to disable the support for it as +// well (we would be missing required specializations otherwise). +// +#if !defined( _STLP_HAS_WCHAR_T) || defined(_STLP_WCHAR_T_IS_USHORT) +#  undef  BOOST_NO_INTRINSIC_WCHAR_T +#  define BOOST_NO_INTRINSIC_WCHAR_T +#endif + +// +// Borland ships a version of STLport with C++ Builder 6 that lacks +// hashtables and the like: +// +#if defined(__BORLANDC__) && (__BORLANDC__ == 0x560) +#  undef BOOST_HAS_HASH +#endif + +// +// gcc-2.95.3/STLPort does not like the using declarations we use to get ADL with std::min/max +// +#if defined(__GNUC__) && (__GNUC__ < 3) +#  include <algorithm> // for std::min and std::max +#  define BOOST_USING_STD_MIN() ((void)0) +#  define BOOST_USING_STD_MAX() ((void)0) +namespace boost { using std::min; using std::max; } +#endif + +#define BOOST_STDLIB "STLPort standard library version " BOOST_STRINGIZE(__SGI_STL_PORT) + + + + + + + + diff --git a/3rdParty/Boost/src/boost/config/stdlib/vacpp.hpp b/3rdParty/Boost/src/boost/config/stdlib/vacpp.hpp new file mode 100644 index 0000000..c6c4566 --- /dev/null +++ b/3rdParty/Boost/src/boost/config/stdlib/vacpp.hpp @@ -0,0 +1,19 @@ +//  (C) Copyright John Maddock 2001 - 2002.  +//  Use, modification and distribution are subject to the  +//  Boost Software License, Version 1.0. (See accompanying file  +//  LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) + +//  See http://www.boost.org for most recent version. + +#if __IBMCPP__ <= 501 +#  define BOOST_NO_STD_ALLOCATOR +#endif + +#define BOOST_HAS_MACRO_USE_FACET +#define BOOST_NO_STD_MESSAGES +#define BOOST_NO_STD_UNORDERED + +#define BOOST_STDLIB "Visual Age default standard library" + + +  | 
 Swift