os/ossrv/ossrv_pub/boost_apis/boost/config/stdlib/libstdcpp3.hpp
changeset 0 bde4ae8d615e
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/os/ossrv/ossrv_pub/boost_apis/boost/config/stdlib/libstdcpp3.hpp	Fri Jun 15 03:10:57 2012 +0200
     1.3 @@ -0,0 +1,73 @@
     1.4 +//  (C) Copyright John Maddock 2001.
     1.5 +//  (C) Copyright Jens Maurer 2001.
     1.6 +//  Use, modification and distribution are subject to the
     1.7 +//  Boost Software License, Version 1.0. (See accompanying file
     1.8 +//  LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
     1.9 +
    1.10 +//  See http://www.boost.org for most recent version.
    1.11 +
    1.12 +//  config for libstdc++ v3
    1.13 +//  not much to go in here:
    1.14 +
    1.15 +#ifdef __GLIBCXX__
    1.16 +#define BOOST_STDLIB "GNU libstdc++ version " BOOST_STRINGIZE(__GLIBCXX__)
    1.17 +#else
    1.18 +#define BOOST_STDLIB "GNU libstdc++ version " BOOST_STRINGIZE(__GLIBCPP__)
    1.19 +#endif
    1.20 +
    1.21 +#if !defined(_GLIBCPP_USE_WCHAR_T) && !defined(_GLIBCXX_USE_WCHAR_T)
    1.22 +#  define BOOST_NO_CWCHAR
    1.23 +#  define BOOST_NO_CWCTYPE
    1.24 +#  define BOOST_NO_STD_WSTRING
    1.25 +#  define BOOST_NO_STD_WSTREAMBUF
    1.26 +#endif
    1.27 +
    1.28 +#if defined(__osf__) && !defined(_REENTRANT) \
    1.29 +  && ( defined(_GLIBCXX_HAVE_GTHR_DEFAULT) || defined(_GLIBCPP_HAVE_GTHR_DEFAULT) )
    1.30 +// GCC 3 on Tru64 forces the definition of _REENTRANT when any std lib header
    1.31 +// file is included, therefore for consistency we define it here as well.
    1.32 +#  define _REENTRANT
    1.33 +#endif
    1.34 +
    1.35 +#ifdef __GLIBCXX__ // gcc 3.4 and greater:
    1.36 +#  if defined(_GLIBCXX_HAVE_GTHR_DEFAULT) \
    1.37 +        || defined(_GLIBCXX__PTHREADS)
    1.38 +      //
    1.39 +      // If the std lib has thread support turned on, then turn it on in Boost
    1.40 +      // as well.  We do this because some gcc-3.4 std lib headers define _REENTANT
    1.41 +      // while others do not...
    1.42 +      //
    1.43 +#     define BOOST_HAS_THREADS
    1.44 +#  else
    1.45 +#     define BOOST_DISABLE_THREADS
    1.46 +#  endif
    1.47 +#elif defined(__GLIBCPP__) \
    1.48 +        && !defined(_GLIBCPP_HAVE_GTHR_DEFAULT) \
    1.49 +        && !defined(_GLIBCPP__PTHREADS)
    1.50 +   // disable thread support if the std lib was built single threaded:
    1.51 +#  define BOOST_DISABLE_THREADS
    1.52 +#endif
    1.53 +
    1.54 +#if (defined(linux) || defined(__linux) || defined(__linux__)) && defined(__arm__) && defined(_GLIBCPP_HAVE_GTHR_DEFAULT)
    1.55 +// linux on arm apparently doesn't define _REENTRANT
    1.56 +// so just turn on threading support whenever the std lib is thread safe:
    1.57 +#  define BOOST_HAS_THREADS
    1.58 +#endif
    1.59 +
    1.60 +
    1.61 +#if !defined(_GLIBCPP_USE_LONG_LONG) \
    1.62 +    && !defined(_GLIBCXX_USE_LONG_LONG)\
    1.63 +    && defined(BOOST_HAS_LONG_LONG)
    1.64 +// May have been set by compiler/*.hpp, but "long long" without library
    1.65 +// support is useless.
    1.66 +#  undef BOOST_HAS_LONG_LONG
    1.67 +#endif
    1.68 +
    1.69 +#if defined(__GLIBCXX__) || (defined(__GLIBCPP__) && __GLIBCPP__>=20020514) // GCC >= 3.1.0
    1.70 +#  define BOOST_STD_EXTENSION_NAMESPACE __gnu_cxx
    1.71 +#  define BOOST_HAS_SLIST
    1.72 +#  define BOOST_HAS_HASH
    1.73 +#  define BOOST_SLIST_HEADER <ext/slist>
    1.74 +#  define BOOST_HASH_SET_HEADER <ext/hash_set>
    1.75 +#  define BOOST_HASH_MAP_HEADER <ext/hash_map>
    1.76 +#endif