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