1 // Boost compiler configuration selection header file
3 // (C) Copyright Boost.org 2001. Permission to copy, use, modify, sell and
4 // distribute this software is granted provided this copyright notice appears
5 // in all copies. This software is provided "as is" without express or implied
6 // warranty, and with no claim as to its suitability for any purpose.
8 // See http://www.boost.org for most recent version.
10 // locate which std lib we are using and define BOOST_STDLIB_CONFIG as needed:
12 // we need to include a std lib header here in order to detect which
13 // library is in use, use <utility> as it's about the smallest
14 // of the std lib headers - do not rely on this header being included -
15 // users can short-circuit this header if they know whose std lib
20 #if defined(__SGI_STL_PORT) || defined(_STLPORT_VERSION)
21 // STLPort library; this _must_ come first, otherwise since
22 // STLport typically sits on top of some other library, we
23 // can end up detecting that first rather than STLport:
24 # define BOOST_STDLIB_CONFIG "boost/config/stdlib/stlport.hpp"
26 #elif defined(__STD_RWCOMPILER_H__) || defined(_RWSTD_VER)
27 // Rogue Wave library:
28 # define BOOST_STDLIB_CONFIG "boost/config/stdlib/roguewave.hpp"
30 #elif (defined(_YVALS) && !defined(__IBMCPP__)) || defined(_CPPLIB_VER)
31 // Dinkumware Library:
32 # define BOOST_STDLIB_CONFIG "boost/config/stdlib/dinkumware.hpp"
34 #elif defined(__GLIBCPP__)
36 # define BOOST_STDLIB_CONFIG "boost/config/stdlib/libstdcpp3.hpp"
38 #elif defined(__STL_CONFIG_H)
40 # define BOOST_STDLIB_CONFIG "boost/config/stdlib/sgi.hpp"
42 #elif defined(__MSL_CPP__)
44 # define BOOST_STDLIB_CONFIG "boost/config/stdlib/msl.hpp"
46 #elif defined(__IBMCPP__)
47 // take the default VACPP std lib
48 # define BOOST_STDLIB_CONFIG "boost/config/stdlib/vacpp.hpp"
50 #elif defined(MSIPL_COMPILE_H)
51 // Modena C++ standard library
52 # define BOOST_STDLIB_CONFIG "boost/config/stdlib/modena.hpp"
54 #elif defined (BOOST_ASSERT_CONFIG)
55 // this must come last - generate an error if we don't
56 // recognise the library:
57 # error "Unknown standard library - please configure and report the results to boost.org"