Chris@16
|
1 # /* **************************************************************************
|
Chris@16
|
2 # * *
|
Chris@16
|
3 # * (C) Copyright Paul Mensonides 2002-2011. *
|
Chris@16
|
4 # * (C) Copyright Edward Diener 2011. *
|
Chris@16
|
5 # * Distributed under the Boost Software License, Version 1.0. (See *
|
Chris@16
|
6 # * accompanying file LICENSE_1_0.txt or copy at *
|
Chris@16
|
7 # * http://www.boost.org/LICENSE_1_0.txt) *
|
Chris@16
|
8 # * *
|
Chris@16
|
9 # ************************************************************************** */
|
Chris@16
|
10 #
|
Chris@16
|
11 # /* See http://www.boost.org for most recent version. */
|
Chris@16
|
12 #
|
Chris@16
|
13 # ifndef BOOST_PREPROCESSOR_CONFIG_CONFIG_HPP
|
Chris@16
|
14 # define BOOST_PREPROCESSOR_CONFIG_CONFIG_HPP
|
Chris@16
|
15 #
|
Chris@16
|
16 # /* BOOST_PP_CONFIG_FLAGS */
|
Chris@16
|
17 #
|
Chris@16
|
18 # define BOOST_PP_CONFIG_STRICT() 0x0001
|
Chris@16
|
19 # define BOOST_PP_CONFIG_IDEAL() 0x0002
|
Chris@16
|
20 #
|
Chris@16
|
21 # define BOOST_PP_CONFIG_MSVC() 0x0004
|
Chris@16
|
22 # define BOOST_PP_CONFIG_MWCC() 0x0008
|
Chris@16
|
23 # define BOOST_PP_CONFIG_BCC() 0x0010
|
Chris@16
|
24 # define BOOST_PP_CONFIG_EDG() 0x0020
|
Chris@16
|
25 # define BOOST_PP_CONFIG_DMC() 0x0040
|
Chris@16
|
26 #
|
Chris@16
|
27 # ifndef BOOST_PP_CONFIG_FLAGS
|
Chris@16
|
28 # if defined(__GCCXML__)
|
Chris@16
|
29 # define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_STRICT())
|
Chris@16
|
30 # elif defined(__WAVE__)
|
Chris@16
|
31 # define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_STRICT())
|
Chris@16
|
32 # elif defined(__MWERKS__) && __MWERKS__ >= 0x3200
|
Chris@16
|
33 # define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_STRICT())
|
Chris@16
|
34 # elif defined(__EDG__) || defined(__EDG_VERSION__)
|
Chris@101
|
35 # if defined(_MSC_VER) && (defined(__INTELLISENSE__) || __EDG_VERSION__ >= 308)
|
Chris@16
|
36 # define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_MSVC())
|
Chris@16
|
37 # else
|
Chris@16
|
38 # define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_EDG() | BOOST_PP_CONFIG_STRICT())
|
Chris@16
|
39 # endif
|
Chris@16
|
40 # elif defined(__MWERKS__)
|
Chris@16
|
41 # define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_MWCC())
|
Chris@16
|
42 # elif defined(__DMC__)
|
Chris@16
|
43 # define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_DMC())
|
Chris@16
|
44 # elif defined(__BORLANDC__) && __BORLANDC__ >= 0x581
|
Chris@16
|
45 # define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_STRICT())
|
Chris@16
|
46 # elif defined(__BORLANDC__) || defined(__IBMC__) || defined(__IBMCPP__) || defined(__SUNPRO_CC)
|
Chris@16
|
47 # define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_BCC())
|
Chris@101
|
48 # elif defined(_MSC_VER) && !defined(__clang__)
|
Chris@16
|
49 # define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_MSVC())
|
Chris@16
|
50 # else
|
Chris@16
|
51 # define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_STRICT())
|
Chris@16
|
52 # endif
|
Chris@16
|
53 # endif
|
Chris@16
|
54 #
|
Chris@16
|
55 # /* BOOST_PP_CONFIG_EXTENDED_LINE_INFO */
|
Chris@16
|
56 #
|
Chris@16
|
57 # ifndef BOOST_PP_CONFIG_EXTENDED_LINE_INFO
|
Chris@16
|
58 # define BOOST_PP_CONFIG_EXTENDED_LINE_INFO 0
|
Chris@16
|
59 # endif
|
Chris@16
|
60 #
|
Chris@16
|
61 # /* BOOST_PP_CONFIG_ERRORS */
|
Chris@16
|
62 #
|
Chris@16
|
63 # ifndef BOOST_PP_CONFIG_ERRORS
|
Chris@16
|
64 # ifdef NDEBUG
|
Chris@16
|
65 # define BOOST_PP_CONFIG_ERRORS 0
|
Chris@16
|
66 # else
|
Chris@16
|
67 # define BOOST_PP_CONFIG_ERRORS 1
|
Chris@16
|
68 # endif
|
Chris@16
|
69 # endif
|
Chris@16
|
70 #
|
Chris@16
|
71 # /* BOOST_PP_VARIADICS */
|
Chris@16
|
72 #
|
Chris@16
|
73 # if !defined BOOST_PP_VARIADICS
|
Chris@16
|
74 # /* variadic support explicitly disabled for all untested compilers */
|
Chris@101
|
75 # if defined __GCCXML__ || defined __CUDACC__ || defined __PATHSCALE__ || defined __DMC__ || defined __CODEGEARC__ || defined __BORLANDC__ || defined __MWERKS__ || defined __SUNPRO_CC || defined __HP_aCC && !defined __EDG__ || defined __MRC__ || defined __SC__ || defined __IBMCPP__ || defined __PGI
|
Chris@16
|
76 # define BOOST_PP_VARIADICS 0
|
Chris@16
|
77 # /* VC++ (C/C++) */
|
Chris@101
|
78 # elif defined _MSC_VER && _MSC_VER >= 1400 && (!defined __EDG__ || defined(__INTELLISENSE__)) && !defined __clang__
|
Chris@101
|
79 # define BOOST_PP_VARIADICS 1
|
Chris@101
|
80 # define BOOST_PP_VARIADICS_MSVC 1
|
Chris@16
|
81 # /* Wave (C/C++), GCC (C++) */
|
Chris@16
|
82 # elif defined __WAVE__ && __WAVE_HAS_VARIADICS__ || defined __GNUC__ && __GXX_EXPERIMENTAL_CXX0X__
|
Chris@16
|
83 # define BOOST_PP_VARIADICS 1
|
Chris@16
|
84 # /* EDG-based (C/C++), GCC (C), and unknown (C/C++) */
|
Chris@16
|
85 # elif !defined __cplusplus && __STDC_VERSION__ >= 199901L || __cplusplus >= 201103L
|
Chris@16
|
86 # define BOOST_PP_VARIADICS 1
|
Chris@16
|
87 # else
|
Chris@16
|
88 # define BOOST_PP_VARIADICS 0
|
Chris@16
|
89 # endif
|
Chris@16
|
90 # elif !BOOST_PP_VARIADICS + 1 < 2
|
Chris@16
|
91 # undef BOOST_PP_VARIADICS
|
Chris@16
|
92 # define BOOST_PP_VARIADICS 1
|
Chris@101
|
93 # if defined _MSC_VER && _MSC_VER >= 1400 && (defined(__INTELLISENSE__) || !(defined __EDG__ || defined __GCCXML__ || defined __CUDACC__ || defined __PATHSCALE__ || defined __clang__ || defined __DMC__ || defined __CODEGEARC__ || defined __BORLANDC__ || defined __MWERKS__ || defined __SUNPRO_CC || defined __HP_aCC || defined __MRC__ || defined __SC__ || defined __IBMCPP__ || defined __PGI))
|
Chris@16
|
94 # define BOOST_PP_VARIADICS_MSVC 1
|
Chris@16
|
95 # endif
|
Chris@16
|
96 # else
|
Chris@16
|
97 # undef BOOST_PP_VARIADICS
|
Chris@16
|
98 # define BOOST_PP_VARIADICS 0
|
Chris@16
|
99 # endif
|
Chris@16
|
100 #
|
Chris@16
|
101 # endif
|