os/ossrv/ossrv_pub/boost_apis/boost/tr1/detail/config.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/tr1/detail/config.hpp	Fri Jun 15 03:10:57 2012 +0200
     1.3 @@ -0,0 +1,138 @@
     1.4 +//  (C) Copyright John Maddock 2005.
     1.5 +//  Use, modification and distribution are subject to the
     1.6 +//  Boost Software License, Version 1.0. (See accompanying file
     1.7 +//  LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
     1.8 +
     1.9 +
    1.10 +#ifndef BOOST_TR1_DETAIL_CONFIG_HPP_INCLUDED
    1.11 +#  define BOOST_TR1_DETAIL_CONFIG_HPP_INCLUDED
    1.12 +
    1.13 +//
    1.14 +// IMPORTANT: we must figure out the basics, such as how to
    1.15 +// forward to the real std lib headers *without* including
    1.16 +// boost/config.hpp or any of the std lib headers.  A classic 
    1.17 +// chicken and the egg problem....
    1.18 +//
    1.19 +// Including <cstddef> at least lets us detect STLport:
    1.20 +//
    1.21 +#include <cstddef>
    1.22 +
    1.23 +#  if (defined(__SGI_STL_PORT) || defined(_STLPORT_VERSION)) && !defined(__BORLANDC__)
    1.24 +#     ifdef __SUNPRO_CC
    1.25 +         // can't use <../stlport/name> since some compilers put stlport in a different directory:
    1.26 +#        define BOOST_TR1_STD_HEADER(name) <../stlport4/name>
    1.27 +#     else
    1.28 +#        define BOOST_TR1_STD_HEADER(name) <../stlport/name>
    1.29 +#     endif
    1.30 +#  elif defined(__HP_aCC)
    1.31 +#     define BOOST_TR1_STD_HEADER(name) <../include_std/name>
    1.32 +#  elif defined(__DECCXX)
    1.33 +#     define BOOST_TR1_STD_HEADER(name) <../cxx/name>
    1.34 +#  elif defined(__BORLANDC__) && __BORLANDC__ >= 0x570
    1.35 +#     define BOOST_TR1_STD_HEADER(name) <../include/dinkumware/name>
    1.36 +#  else
    1.37 +#     define BOOST_TR1_STD_HEADER(name) <../include/name>
    1.38 +#  endif
    1.39 +
    1.40 +#if defined(__GNUC__) && !defined(BOOST_HAS_INCLUDE_NEXT)
    1.41 +#  define BOOST_HAS_INCLUDE_NEXT
    1.42 +#endif
    1.43 +
    1.44 +// Can't use BOOST_WORKAROUND here, it leads to recursive includes:
    1.45 +#if (defined(__BORLANDC__) && (__BORLANDC__ <= 0x600)) || (defined(_MSC_VER) && (_MSC_VER < 1310))
    1.46 +#  define BOOST_TR1_USE_OLD_TUPLE
    1.47 +#endif
    1.48 +
    1.49 +//
    1.50 +// We may be in the middle of parsing boost/config.hpp
    1.51 +// when this header is included, so don't rely on config
    1.52 +// stuff in the rest of this header...
    1.53 +//
    1.54 +// Find our actual std lib:
    1.55 +//
    1.56 +#ifdef BOOST_HAS_INCLUDE_NEXT
    1.57 +#  ifndef BOOST_TR1_NO_RECURSION
    1.58 +#     define BOOST_TR1_NO_RECURSION
    1.59 +#     define BOOST_TR1_NO_CONFIG_RECURSION
    1.60 +#  endif
    1.61 +#  include_next <utility>
    1.62 +#  if (__GNUC__ < 3)
    1.63 +#     include_next <algorithm>
    1.64 +#     include_next <iterator>
    1.65 +#  endif
    1.66 +#  ifdef BOOST_TR1_NO_CONFIG_RECURSION
    1.67 +#     undef BOOST_TR1_NO_CONFIG_RECURSION
    1.68 +#     undef BOOST_TR1_NO_RECURSION
    1.69 +#  endif
    1.70 +#else
    1.71 +#  include BOOST_TR1_STD_HEADER(utility)
    1.72 +#endif
    1.73 +
    1.74 +#if defined(__GLIBCXX__) && !defined(BOOST_TR1_PATH)
    1.75 +#  define BOOST_TR1_PATH(name) tr1/name
    1.76 +#endif
    1.77 +#if !defined(BOOST_TR1_PATH)
    1.78 +#  define BOOST_TR1_PATH(name) name
    1.79 +#endif
    1.80 +
    1.81 +#define BOOST_TR1_HEADER(name) <BOOST_TR1_PATH(name)>
    1.82 +
    1.83 +#ifdef BOOST_HAS_TR1
    1.84 +   // turn on support for everything:
    1.85 +#  define BOOST_HAS_TR1_ARRAY
    1.86 +#  define BOOST_HAS_TR1_COMPLEX_OVERLOADS
    1.87 +#  define BOOST_HAS_TR1_COMPLEX_INVERSE_TRIG
    1.88 +#  define BOOST_HAS_TR1_REFERENCE_WRAPPER
    1.89 +#  define BOOST_HAS_TR1_RESULT_OF
    1.90 +#  define BOOST_HAS_TR1_MEM_FN
    1.91 +#  define BOOST_HAS_TR1_BIND
    1.92 +#  define BOOST_HAS_TR1_FUNCTION
    1.93 +#  define BOOST_HAS_TR1_HASH
    1.94 +#  define BOOST_HAS_TR1_SHARED_PTR
    1.95 +#  define BOOST_HAS_TR1_RANDOM
    1.96 +#  define BOOST_HAS_TR1_REGEX
    1.97 +#  define BOOST_HAS_TR1_TUPLE
    1.98 +#  define BOOST_HAS_TR1_TYPE_TRAITS
    1.99 +#  define BOOST_HAS_TR1_UTILITY
   1.100 +#  define BOOST_HAS_TR1_UNORDERED_MAP
   1.101 +#  define BOOST_HAS_TR1_UNORDERED_SET
   1.102 +
   1.103 +#endif
   1.104 +
   1.105 +#if defined(__MWERKS__) && (__MWERKS__ >= 0x3205)
   1.106 +//
   1.107 +// Very preliminary MWCW support, may not be right:
   1.108 +//
   1.109 +#  define BOOST_HAS_TR1_SHARED_PTR
   1.110 +#  define BOOST_HAS_TR1_REFERENCE_WRAPPER
   1.111 +#  define BOOST_HAS_TR1_FUNCTION
   1.112 +#  define BOOST_HAS_TR1_TUPLE
   1.113 +#  define BOOST_HAS_TR1_RESULT_OF
   1.114 +#endif
   1.115 +
   1.116 +#ifdef BOOST_HAS_GCC_TR1
   1.117 +   // turn on support for everything in gcc 4.0.x:
   1.118 +#  define BOOST_HAS_TR1_ARRAY
   1.119 +//#  define BOOST_HAS_TR1_COMPLEX_OVERLOADS
   1.120 +//#  define BOOST_HAS_TR1_COMPLEX_INVERSE_TRIG
   1.121 +#  define BOOST_HAS_TR1_REFERENCE_WRAPPER
   1.122 +#  define BOOST_HAS_TR1_RESULT_OF
   1.123 +#  define BOOST_HAS_TR1_MEM_FN
   1.124 +#  define BOOST_HAS_TR1_BIND
   1.125 +#  define BOOST_HAS_TR1_FUNCTION
   1.126 +#  define BOOST_HAS_TR1_HASH
   1.127 +#  define BOOST_HAS_TR1_SHARED_PTR
   1.128 +//#  define BOOST_HAS_TR1_RANDOM
   1.129 +//#  define BOOST_HAS_TR1_REGEX
   1.130 +#  define BOOST_HAS_TR1_TUPLE
   1.131 +#  define BOOST_HAS_TR1_TYPE_TRAITS
   1.132 +#  define BOOST_HAS_TR1_UTILITY
   1.133 +#  define BOOST_HAS_TR1_UNORDERED_MAP
   1.134 +#  define BOOST_HAS_TR1_UNORDERED_SET
   1.135 +
   1.136 +#endif
   1.137 +
   1.138 +#include <boost/config.hpp>
   1.139 +
   1.140 +#endif
   1.141 +