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_CLANG 0 |
---|
19 | # define BOOST_CXX_COMO 0 |
---|
20 | # define BOOST_CXX_DMC 0 |
---|
21 | # define BOOST_CXX_INTEL 0 |
---|
22 | # define BOOST_CXX_GNUC 0 |
---|
23 | # define BOOST_CXX_KCC 0 |
---|
24 | # define BOOST_CXX_SGI 0 |
---|
25 | # define BOOST_CXX_TRU64 0 |
---|
26 | # define BOOST_CXX_GHS 0 |
---|
27 | # define BOOST_CXX_BORLAND 0 |
---|
28 | # define BOOST_CXX_CW 0 |
---|
29 | # define BOOST_CXX_SUNPRO 0 |
---|
30 | # define BOOST_CXX_HPACC 0 |
---|
31 | # define BOOST_CXX_MPW 0 |
---|
32 | # define BOOST_CXX_IBMCPP 0 |
---|
33 | # define BOOST_CXX_MSVC 0 |
---|
34 | # define BOOST_CXX_PGI 0 |
---|
35 | # define BOOST_CXX_NVCC 0 |
---|
36 | |
---|
37 | |
---|
38 | // locate which compiler we are using and define |
---|
39 | // BOOST_COMPILER_CONFIG as needed: |
---|
40 | |
---|
41 | #if defined(__GCCXML__) |
---|
42 | // GCC-XML emulates other compilers, it has to appear first here! |
---|
43 | # define BOOST_COMPILER_CONFIG "boost/config/compiler/gcc_xml.hpp" |
---|
44 | |
---|
45 | #elif defined __CUDACC__ |
---|
46 | // NVIDIA CUDA C++ compiler for GPU |
---|
47 | # define BOOST_COMPILER_CONFIG "boost/config/compiler/nvcc.hpp" |
---|
48 | |
---|
49 | #elif defined __COMO__ |
---|
50 | // Comeau C++ |
---|
51 | # define BOOST_COMPILER_CONFIG "boost/config/compiler/comeau.hpp" |
---|
52 | |
---|
53 | #elif defined __clang__ |
---|
54 | // Clang C++ emulates GCC, so it has to appear early. |
---|
55 | # define BOOST_COMPILER_CONFIG "boost/config/compiler/clang.hpp" |
---|
56 | |
---|
57 | #elif defined __DMC__ |
---|
58 | // Digital Mars C++ |
---|
59 | # define BOOST_COMPILER_CONFIG "boost/config/compiler/digitalmars.hpp" |
---|
60 | |
---|
61 | #elif defined(__INTEL_COMPILER) || defined(__ICL) || defined(__ICC) || defined(__ECC) |
---|
62 | // Intel |
---|
63 | # define BOOST_COMPILER_CONFIG "boost/config/compiler/intel.hpp" |
---|
64 | |
---|
65 | # elif defined __GNUC__ |
---|
66 | // GNU C++: |
---|
67 | # define BOOST_COMPILER_CONFIG "boost/config/compiler/gcc.hpp" |
---|
68 | |
---|
69 | #elif defined __KCC |
---|
70 | // Kai C++ |
---|
71 | # define BOOST_COMPILER_CONFIG "boost/config/compiler/kai.hpp" |
---|
72 | |
---|
73 | #elif defined __sgi |
---|
74 | // SGI MIPSpro C++ |
---|
75 | # define BOOST_COMPILER_CONFIG "boost/config/compiler/sgi_mipspro.hpp" |
---|
76 | |
---|
77 | #elif defined __DECCXX |
---|
78 | // Compaq Tru64 Unix cxx |
---|
79 | # define BOOST_COMPILER_CONFIG "boost/config/compiler/compaq_cxx.hpp" |
---|
80 | |
---|
81 | #elif defined __ghs |
---|
82 | // Greenhills C++ |
---|
83 | # define BOOST_COMPILER_CONFIG "boost/config/compiler/greenhills.hpp" |
---|
84 | |
---|
85 | #elif defined __CODEGEARC__ |
---|
86 | // CodeGear - must be checked for before Borland |
---|
87 | # define BOOST_COMPILER_CONFIG "boost/config/compiler/codegear.hpp" |
---|
88 | |
---|
89 | #elif defined __BORLANDC__ |
---|
90 | // Borland |
---|
91 | # define BOOST_COMPILER_CONFIG "boost/config/compiler/borland.hpp" |
---|
92 | |
---|
93 | #elif defined __MWERKS__ |
---|
94 | // Metrowerks CodeWarrior |
---|
95 | # define BOOST_COMPILER_CONFIG "boost/config/compiler/metrowerks.hpp" |
---|
96 | |
---|
97 | #elif defined __SUNPRO_CC |
---|
98 | // Sun Workshop Compiler C++ |
---|
99 | # define BOOST_COMPILER_CONFIG "boost/config/compiler/sunpro_cc.hpp" |
---|
100 | |
---|
101 | #elif defined __HP_aCC |
---|
102 | // HP aCC |
---|
103 | # define BOOST_COMPILER_CONFIG "boost/config/compiler/hp_acc.hpp" |
---|
104 | |
---|
105 | #elif defined(__MRC__) || defined(__SC__) |
---|
106 | // MPW MrCpp or SCpp |
---|
107 | # define BOOST_COMPILER_CONFIG "boost/config/compiler/mpw.hpp" |
---|
108 | |
---|
109 | #elif defined(__IBMCPP__) |
---|
110 | // IBM Visual Age |
---|
111 | # define BOOST_COMPILER_CONFIG "boost/config/compiler/vacpp.hpp" |
---|
112 | |
---|
113 | #elif defined(__PGI) |
---|
114 | // Portland Group Inc. |
---|
115 | # define BOOST_COMPILER_CONFIG "boost/config/compiler/pgi.hpp" |
---|
116 | |
---|
117 | #elif defined _MSC_VER |
---|
118 | // Microsoft Visual C++ |
---|
119 | // |
---|
120 | // Must remain the last #elif since some other vendors (Metrowerks, for |
---|
121 | // example) also #define _MSC_VER |
---|
122 | # define BOOST_COMPILER_CONFIG "boost/config/compiler/visualc.hpp" |
---|
123 | |
---|
124 | #elif defined (BOOST_ASSERT_CONFIG) |
---|
125 | // this must come last - generate an error if we don't |
---|
126 | // recognise the compiler: |
---|
127 | # 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)" |
---|
128 | |
---|
129 | #endif |
---|