| 1 | //  Boost compiler configuration selection header file | 
|---|
| 2 |  | 
|---|
| 3 | //  (C) Copyright John Maddock 2001 - 2003. | 
|---|
| 4 | //  (C) Copyright Martin Wille 2003. | 
|---|
| 5 | //  (C) Copyright Guillaume Melquiond 2003. | 
|---|
| 6 | // | 
|---|
| 7 | //  Distributed under the Boost Software License, Version 1.0. | 
|---|
| 8 | //  (See accompanying file LICENSE_1_0.txt or copy at | 
|---|
| 9 | //   http://www.boost.org/LICENSE_1_0.txt) | 
|---|
| 10 |  | 
|---|
| 11 | //  See http://www.boost.org/ for most recent version. | 
|---|
| 12 |  | 
|---|
| 13 |  | 
|---|
| 14 | // one identification macro for each of the | 
|---|
| 15 | // compilers we support: | 
|---|
| 16 |  | 
|---|
| 17 | #   define BOOST_CXX_GCCXML   0 | 
|---|
| 18 | #   define BOOST_CXX_COMO     0 | 
|---|
| 19 | #   define BOOST_CXX_DMC      0 | 
|---|
| 20 | #   define BOOST_CXX_INTEL    0 | 
|---|
| 21 | #   define BOOST_CXX_GNUC     0 | 
|---|
| 22 | #   define BOOST_CXX_KCC      0 | 
|---|
| 23 | #   define BOOST_CXX_SGI      0 | 
|---|
| 24 | #   define BOOST_CXX_TRU64    0 | 
|---|
| 25 | #   define BOOST_CXX_GHS      0 | 
|---|
| 26 | #   define BOOST_CXX_BORLAND  0 | 
|---|
| 27 | #   define BOOST_CXX_CW       0 | 
|---|
| 28 | #   define BOOST_CXX_SUNPRO   0 | 
|---|
| 29 | #   define BOOST_CXX_HPACC    0 | 
|---|
| 30 | #   define BOOST_CXX_MPW      0 | 
|---|
| 31 | #   define BOOST_CXX_IBMCPP   0 | 
|---|
| 32 | #   define BOOST_CXX_MSVC     0 | 
|---|
| 33 | #   define BOOST_CXX_PGI      0 | 
|---|
| 34 | #   define BOOST_CXX_NVCC     0 | 
|---|
| 35 |  | 
|---|
| 36 |  | 
|---|
| 37 | // locate which compiler we are using and define | 
|---|
| 38 | // BOOST_COMPILER_CONFIG as needed: | 
|---|
| 39 |  | 
|---|
| 40 | #if defined(__GCCXML__) | 
|---|
| 41 | // GCC-XML emulates other compilers, it has to appear first here! | 
|---|
| 42 | #   define BOOST_COMPILER_CONFIG "boost/config/compiler/gcc_xml.hpp" | 
|---|
| 43 |  | 
|---|
| 44 | #elif defined __CUDACC__ | 
|---|
| 45 | //  NVIDIA CUDA C++ compiler for GPU | 
|---|
| 46 | #   define BOOST_COMPILER_CONFIG "boost/config/compiler/nvcc.hpp" | 
|---|
| 47 |  | 
|---|
| 48 | #elif defined __COMO__ | 
|---|
| 49 | //  Comeau C++ | 
|---|
| 50 | #   define BOOST_COMPILER_CONFIG "boost/config/compiler/comeau.hpp" | 
|---|
| 51 |  | 
|---|
| 52 | #elif defined __DMC__ | 
|---|
| 53 | //  Digital Mars C++ | 
|---|
| 54 | #   define BOOST_COMPILER_CONFIG "boost/config/compiler/digitalmars.hpp" | 
|---|
| 55 |  | 
|---|
| 56 | #elif defined(__INTEL_COMPILER) || defined(__ICL) || defined(__ICC) || defined(__ECC) | 
|---|
| 57 | //  Intel | 
|---|
| 58 | #   define BOOST_COMPILER_CONFIG "boost/config/compiler/intel.hpp" | 
|---|
| 59 |  | 
|---|
| 60 | # elif defined __GNUC__ | 
|---|
| 61 | //  GNU C++: | 
|---|
| 62 | #   define BOOST_COMPILER_CONFIG "boost/config/compiler/gcc.hpp" | 
|---|
| 63 |  | 
|---|
| 64 | #elif defined __KCC | 
|---|
| 65 | //  Kai C++ | 
|---|
| 66 | #   define BOOST_COMPILER_CONFIG "boost/config/compiler/kai.hpp" | 
|---|
| 67 |  | 
|---|
| 68 | #elif defined __sgi | 
|---|
| 69 | //  SGI MIPSpro C++ | 
|---|
| 70 | #   define BOOST_COMPILER_CONFIG "boost/config/compiler/sgi_mipspro.hpp" | 
|---|
| 71 |  | 
|---|
| 72 | #elif defined __DECCXX | 
|---|
| 73 | //  Compaq Tru64 Unix cxx | 
|---|
| 74 | #   define BOOST_COMPILER_CONFIG "boost/config/compiler/compaq_cxx.hpp" | 
|---|
| 75 |  | 
|---|
| 76 | #elif defined __ghs | 
|---|
| 77 | //  Greenhills C++ | 
|---|
| 78 | #   define BOOST_COMPILER_CONFIG "boost/config/compiler/greenhills.hpp" | 
|---|
| 79 |  | 
|---|
| 80 | #elif defined __CODEGEARC__ | 
|---|
| 81 | //  CodeGear - must be checked for before Borland | 
|---|
| 82 | #   define BOOST_COMPILER_CONFIG "boost/config/compiler/codegear.hpp" | 
|---|
| 83 |  | 
|---|
| 84 | #elif defined __BORLANDC__ | 
|---|
| 85 | //  Borland | 
|---|
| 86 | #   define BOOST_COMPILER_CONFIG "boost/config/compiler/borland.hpp" | 
|---|
| 87 |  | 
|---|
| 88 | #elif defined  __MWERKS__ | 
|---|
| 89 | //  Metrowerks CodeWarrior | 
|---|
| 90 | #   define BOOST_COMPILER_CONFIG "boost/config/compiler/metrowerks.hpp" | 
|---|
| 91 |  | 
|---|
| 92 | #elif defined  __SUNPRO_CC | 
|---|
| 93 | //  Sun Workshop Compiler C++ | 
|---|
| 94 | #   define BOOST_COMPILER_CONFIG "boost/config/compiler/sunpro_cc.hpp" | 
|---|
| 95 |  | 
|---|
| 96 | #elif defined __HP_aCC | 
|---|
| 97 | //  HP aCC | 
|---|
| 98 | #   define BOOST_COMPILER_CONFIG "boost/config/compiler/hp_acc.hpp" | 
|---|
| 99 |  | 
|---|
| 100 | #elif defined(__MRC__) || defined(__SC__) | 
|---|
| 101 | //  MPW MrCpp or SCpp | 
|---|
| 102 | #   define BOOST_COMPILER_CONFIG "boost/config/compiler/mpw.hpp" | 
|---|
| 103 |  | 
|---|
| 104 | #elif defined(__IBMCPP__) | 
|---|
| 105 | //  IBM Visual Age | 
|---|
| 106 | #   define BOOST_COMPILER_CONFIG "boost/config/compiler/vacpp.hpp" | 
|---|
| 107 |  | 
|---|
| 108 | #elif defined(__PGI) | 
|---|
| 109 | //  Portland Group Inc. | 
|---|
| 110 | #   define BOOST_COMPILER_CONFIG "boost/config/compiler/pgi.hpp" | 
|---|
| 111 |  | 
|---|
| 112 | #elif defined _MSC_VER | 
|---|
| 113 | //  Microsoft Visual C++ | 
|---|
| 114 | // | 
|---|
| 115 | //  Must remain the last #elif since some other vendors (Metrowerks, for | 
|---|
| 116 | //  example) also #define _MSC_VER | 
|---|
| 117 | #   define BOOST_COMPILER_CONFIG "boost/config/compiler/visualc.hpp" | 
|---|
| 118 |  | 
|---|
| 119 | #elif defined (BOOST_ASSERT_CONFIG) | 
|---|
| 120 | // this must come last - generate an error if we don't | 
|---|
| 121 | // recognise the compiler: | 
|---|
| 122 | #  error "Unknown compiler - please configure (http://www.boost.org/libs/config/config.htm#configuring) and report the results to the main boost mailing list (http://www.boost.org/more/mailing_lists.htm#main)" | 
|---|
| 123 |  | 
|---|
| 124 | #endif | 
|---|