1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/os/ossrv/ossrv_pub/boost_apis/boost/config/stdlib/sgi.hpp Fri Jun 15 03:10:57 2012 +0200
1.3 @@ -0,0 +1,111 @@
1.4 +// (C) Copyright John Maddock 2001 - 2003.
1.5 +// (C) Copyright Darin Adler 2001.
1.6 +// (C) Copyright Jens Maurer 2001 - 2003.
1.7 +// Use, modification and distribution are subject to the
1.8 +// Boost Software License, Version 1.0. (See accompanying file
1.9 +// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
1.10 +
1.11 +// See http://www.boost.org for most recent version.
1.12 +
1.13 +// generic SGI STL:
1.14 +
1.15 +#if !defined(__STL_CONFIG_H)
1.16 +# include <boost/config/no_tr1/utility.hpp>
1.17 +# if !defined(__STL_CONFIG_H)
1.18 +# error "This is not the SGI STL!"
1.19 +# endif
1.20 +#endif
1.21 +
1.22 +//
1.23 +// No std::iterator traits without partial specialisation:
1.24 +//
1.25 +#if !defined(__STL_CLASS_PARTIAL_SPECIALIZATION)
1.26 +# define BOOST_NO_STD_ITERATOR_TRAITS
1.27 +#endif
1.28 +
1.29 +//
1.30 +// No std::stringstream with gcc < 3
1.31 +//
1.32 +#if defined(__GNUC__) && (__GNUC__ < 3) && \
1.33 + ((__GNUC_MINOR__ < 95) || (__GNUC_MINOR__ == 96)) && \
1.34 + !defined(__STL_USE_NEW_IOSTREAMS) || \
1.35 + defined(__APPLE_CC__)
1.36 + // Note that we only set this for GNU C++ prior to 2.95 since the
1.37 + // latest patches for that release do contain a minimal <sstream>
1.38 + // If you are running a 2.95 release prior to 2.95.3 then this will need
1.39 + // setting, but there is no way to detect that automatically (other
1.40 + // than by running the configure script).
1.41 + // Also, the unofficial GNU C++ 2.96 included in RedHat 7.1 doesn't
1.42 + // have <sstream>.
1.43 +# define BOOST_NO_STRINGSTREAM
1.44 +#endif
1.45 +
1.46 +//
1.47 +// Assume no std::locale without own iostreams (this may be an
1.48 +// incorrect assumption in some cases):
1.49 +//
1.50 +#if !defined(__SGI_STL_OWN_IOSTREAMS) && !defined(__STL_USE_NEW_IOSTREAMS)
1.51 +# define BOOST_NO_STD_LOCALE
1.52 +#endif
1.53 +
1.54 +//
1.55 +// Original native SGI streams have non-standard std::messages facet:
1.56 +//
1.57 +#if defined(__sgi) && (_COMPILER_VERSION <= 650) && !defined(__SGI_STL_OWN_IOSTREAMS)
1.58 +# define BOOST_NO_STD_LOCALE
1.59 +#endif
1.60 +
1.61 +//
1.62 +// SGI's new iostreams have missing "const" in messages<>::open
1.63 +//
1.64 +#if defined(__sgi) && (_COMPILER_VERSION <= 740) && defined(__STL_USE_NEW_IOSTREAMS)
1.65 +# define BOOST_NO_STD_MESSAGES
1.66 +#endif
1.67 +
1.68 +//
1.69 +// No template iterator constructors, or std::allocator
1.70 +// without member templates:
1.71 +//
1.72 +#if !defined(__STL_MEMBER_TEMPLATES)
1.73 +# define BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS
1.74 +# define BOOST_NO_STD_ALLOCATOR
1.75 +#endif
1.76 +
1.77 +//
1.78 +// We always have SGI style hash_set, hash_map, and slist:
1.79 +//
1.80 +#define BOOST_HAS_HASH
1.81 +#define BOOST_HAS_SLIST
1.82 +
1.83 +//
1.84 +// If this is GNU libstdc++2, then no <limits> and no std::wstring:
1.85 +//
1.86 +#if (defined(__GNUC__) && (__GNUC__ < 3))
1.87 +# include <string>
1.88 +# if defined(__BASTRING__)
1.89 +# define BOOST_NO_LIMITS
1.90 +// Note: <boost/limits.hpp> will provide compile-time constants
1.91 +# undef BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS
1.92 +# define BOOST_NO_STD_WSTRING
1.93 +# endif
1.94 +#endif
1.95 +
1.96 +//
1.97 +// There is no standard iterator unless we have namespace support:
1.98 +//
1.99 +#if !defined(__STL_USE_NAMESPACES)
1.100 +# define BOOST_NO_STD_ITERATOR
1.101 +#endif
1.102 +
1.103 +//
1.104 +// Intrinsic type_traits support.
1.105 +// The SGI STL has it's own __type_traits class, which
1.106 +// has intrinsic compiler support with SGI's compilers.
1.107 +// Whatever map SGI style type traits to boost equivalents:
1.108 +//
1.109 +#define BOOST_HAS_SGI_TYPE_TRAITS
1.110 +
1.111 +#define BOOST_STDLIB "SGI standard library"
1.112 +
1.113 +
1.114 +