]>
Commit | Line | Data |
---|---|---|
7c673cae FG |
1 | // (C) Copyright Gennadiy Rozental 2001. |
2 | // Distributed under the Boost Software License, Version 1.0. | |
3 | // (See accompanying file LICENSE_1_0.txt or copy at | |
4 | // http://www.boost.org/LICENSE_1_0.txt) | |
5 | ||
6 | // See http://www.boost.org/libs/test for the library home page. | |
7 | // | |
8 | //!@file | |
9 | //!@brief a central place for global configuration switches | |
10 | // *************************************************************************** | |
11 | ||
12 | #ifndef BOOST_TEST_CONFIG_HPP_071894GER | |
13 | #define BOOST_TEST_CONFIG_HPP_071894GER | |
14 | ||
15 | // Boost | |
16 | #include <boost/config.hpp> // compilers workarounds | |
17 | #include <boost/detail/workaround.hpp> | |
18 | ||
19 | #if defined(_WIN32) && !defined(BOOST_DISABLE_WIN32) && \ | |
20 | (!defined(__COMO__) && !defined(__MWERKS__) && !defined(__GNUC__) || \ | |
21 | BOOST_WORKAROUND(__MWERKS__, >= 0x3000)) | |
22 | # define BOOST_SEH_BASED_SIGNAL_HANDLING | |
23 | #endif | |
24 | ||
25 | #if defined(__COMO__) && defined(_MSC_VER) | |
26 | // eh.h uses type_info without declaring it. | |
27 | class type_info; | |
28 | # define BOOST_SEH_BASED_SIGNAL_HANDLING | |
29 | #endif | |
30 | ||
31 | //____________________________________________________________________________// | |
32 | ||
33 | #if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x570)) || \ | |
34 | BOOST_WORKAROUND(__IBMCPP__, BOOST_TESTED_AT(600)) || \ | |
35 | (defined __sgi && BOOST_WORKAROUND(_COMPILER_VERSION, BOOST_TESTED_AT(730))) | |
36 | # define BOOST_TEST_SHIFTED_LINE | |
37 | #endif | |
38 | ||
39 | //____________________________________________________________________________// | |
40 | ||
41 | #if defined(BOOST_MSVC) || (defined(__BORLANDC__) && !defined(BOOST_DISABLE_WIN32)) | |
42 | # define BOOST_TEST_CALL_DECL __cdecl | |
43 | #else | |
44 | # define BOOST_TEST_CALL_DECL /**/ | |
45 | #endif | |
46 | ||
47 | //____________________________________________________________________________// | |
48 | ||
49 | #if !defined(BOOST_NO_STD_LOCALE) && !defined(__MWERKS__) | |
50 | # define BOOST_TEST_USE_STD_LOCALE 1 | |
51 | #endif | |
52 | ||
53 | //____________________________________________________________________________// | |
54 | ||
55 | #if BOOST_WORKAROUND(__BORLANDC__, <= 0x570) || \ | |
56 | BOOST_WORKAROUND( __COMO__, <= 0x433 ) || \ | |
57 | BOOST_WORKAROUND( __INTEL_COMPILER, <= 800 ) || \ | |
58 | defined(__sgi) && _COMPILER_VERSION <= 730 || \ | |
59 | BOOST_WORKAROUND(__IBMCPP__, BOOST_TESTED_AT(600)) || \ | |
60 | defined(__DECCXX) || \ | |
61 | defined(__DMC__) | |
62 | # define BOOST_TEST_NO_PROTECTED_USING | |
63 | #endif | |
64 | ||
65 | //____________________________________________________________________________// | |
66 | ||
67 | #if defined(__GNUC__) || BOOST_WORKAROUND(BOOST_MSVC, == 1400) | |
68 | #define BOOST_TEST_PROTECTED_VIRTUAL virtual | |
69 | #else | |
70 | #define BOOST_TEST_PROTECTED_VIRTUAL | |
71 | #endif | |
72 | ||
73 | //____________________________________________________________________________// | |
74 | ||
75 | #if !defined(__BORLANDC__) && !BOOST_WORKAROUND( __SUNPRO_CC, < 0x5100 ) | |
76 | #define BOOST_TEST_SUPPORT_TOKEN_ITERATOR 1 | |
77 | #endif | |
78 | ||
79 | //____________________________________________________________________________// | |
80 | ||
92f5a8d4 TL |
81 | // Sun compiler does not support visibility on enums |
82 | #if defined(__SUNPRO_CC) | |
83 | #define BOOST_TEST_ENUM_SYMBOL_VISIBLE | |
84 | #else | |
85 | #define BOOST_TEST_ENUM_SYMBOL_VISIBLE BOOST_SYMBOL_VISIBLE | |
86 | #endif | |
87 | ||
88 | //____________________________________________________________________________// | |
89 | ||
7c673cae FG |
90 | #if defined(BOOST_ALL_DYN_LINK) && !defined(BOOST_TEST_DYN_LINK) |
91 | # define BOOST_TEST_DYN_LINK | |
92 | #endif | |
93 | ||
92f5a8d4 TL |
94 | // in case any of the define from cmake/b2 is set |
95 | #if !defined(BOOST_TEST_DYN_LINK) \ | |
96 | && (defined(BOOST_UNIT_TEST_FRAMEWORK_DYN_LINK) \ | |
97 | || defined(BOOST_TEST_EXEC_MONITOR_DYN_LINK) \ | |
98 | || defined(BOOST_PRG_EXEC_MONITOR_DYN_LINK) ) | |
99 | # define BOOST_TEST_DYN_LINK | |
100 | #endif | |
101 | ||
7c673cae FG |
102 | #if defined(BOOST_TEST_INCLUDED) |
103 | # undef BOOST_TEST_DYN_LINK | |
104 | #endif | |
105 | ||
106 | #if defined(BOOST_TEST_DYN_LINK) | |
107 | # define BOOST_TEST_ALTERNATIVE_INIT_API | |
108 | ||
109 | # ifdef BOOST_TEST_SOURCE | |
92f5a8d4 | 110 | # define BOOST_TEST_DECL BOOST_SYMBOL_EXPORT BOOST_SYMBOL_VISIBLE |
7c673cae | 111 | # else |
92f5a8d4 | 112 | # define BOOST_TEST_DECL BOOST_SYMBOL_IMPORT BOOST_SYMBOL_VISIBLE |
7c673cae FG |
113 | # endif // BOOST_TEST_SOURCE |
114 | #else | |
92f5a8d4 | 115 | # define BOOST_TEST_DECL BOOST_SYMBOL_VISIBLE |
7c673cae FG |
116 | #endif |
117 | ||
118 | #if !defined(BOOST_TEST_MAIN) && defined(BOOST_AUTO_TEST_MAIN) | |
119 | #define BOOST_TEST_MAIN BOOST_AUTO_TEST_MAIN | |
120 | #endif | |
121 | ||
122 | #if !defined(BOOST_TEST_MAIN) && defined(BOOST_TEST_MODULE) | |
123 | #define BOOST_TEST_MAIN BOOST_TEST_MODULE | |
124 | #endif | |
125 | ||
126 | ||
127 | ||
128 | #ifndef BOOST_PP_VARIADICS /* we can change this only if not already defined) */ | |
129 | ||
130 | #ifdef __PGI | |
131 | #define BOOST_PP_VARIADICS 1 | |
132 | #endif | |
133 | ||
134 | #if BOOST_CLANG | |
135 | #define BOOST_PP_VARIADICS 1 | |
136 | #endif | |
137 | ||
138 | #if defined(BOOST_GCC) && (BOOST_GCC >= 4 * 10000 + 8 * 100) | |
139 | #define BOOST_PP_VARIADICS 1 | |
140 | #endif | |
141 | ||
142 | #endif /* ifndef BOOST_PP_VARIADICS */ | |
143 | ||
92f5a8d4 TL |
144 | //____________________________________________________________________________// |
145 | // string_view support | |
146 | //____________________________________________________________________________// | |
147 | // note the code should always be compatible with compiled version of boost.test | |
148 | // using a pre-c++17 compiler | |
149 | ||
150 | #ifndef BOOST_NO_CXX17_HDR_STRING_VIEW | |
151 | #define BOOST_TEST_STRING_VIEW | |
152 | #endif | |
153 | ||
7c673cae | 154 | #endif // BOOST_TEST_CONFIG_HPP_071894GER |