1 | // (C) Copyright David Abrahams 2000. |
---|
2 | // Distributed under the Boost Software License, Version 1.0. (See |
---|
3 | // accompanying file LICENSE_1_0.txt or copy at |
---|
4 | // http://www.boost.org/LICENSE_1_0.txt) |
---|
5 | // |
---|
6 | // The author gratefully acknowleges the support of Dragon Systems, Inc., in |
---|
7 | // producing this work. |
---|
8 | |
---|
9 | // Revision History: |
---|
10 | // 04 Mar 01 Some fixes so it will compile with Intel C++ (Dave Abrahams) |
---|
11 | |
---|
12 | #ifndef CONFIG_DWA052200_H_ |
---|
13 | # define CONFIG_DWA052200_H_ |
---|
14 | |
---|
15 | # include <boost/config.hpp> |
---|
16 | # include <boost/detail/workaround.hpp> |
---|
17 | |
---|
18 | # ifdef BOOST_NO_OPERATORS_IN_NAMESPACE |
---|
19 | // A gcc bug forces some symbols into the global namespace |
---|
20 | # define BOOST_PYTHON_BEGIN_CONVERSION_NAMESPACE |
---|
21 | # define BOOST_PYTHON_END_CONVERSION_NAMESPACE |
---|
22 | # define BOOST_PYTHON_CONVERSION |
---|
23 | # define BOOST_PYTHON_IMPORT_CONVERSION(x) using ::x |
---|
24 | # else |
---|
25 | # define BOOST_PYTHON_BEGIN_CONVERSION_NAMESPACE namespace boost { namespace python { |
---|
26 | # define BOOST_PYTHON_END_CONVERSION_NAMESPACE }} // namespace boost::python |
---|
27 | # define BOOST_PYTHON_CONVERSION boost::python |
---|
28 | # define BOOST_PYTHON_IMPORT_CONVERSION(x) void never_defined() // so we can follow the macro with a ';' |
---|
29 | # endif |
---|
30 | |
---|
31 | # if defined(BOOST_MSVC) |
---|
32 | # if _MSC_VER < 1300 |
---|
33 | # define BOOST_MSVC6_OR_EARLIER 1 |
---|
34 | # endif |
---|
35 | |
---|
36 | # pragma warning (disable : 4786) // disable truncated debug symbols |
---|
37 | # pragma warning (disable : 4251) // disable exported dll function |
---|
38 | # pragma warning (disable : 4800) //'int' : forcing value to bool 'true' or 'false' |
---|
39 | # pragma warning (disable : 4275) // non dll-interface class |
---|
40 | |
---|
41 | # elif defined(__ICL) && __ICL < 600 // Intel C++ 5 |
---|
42 | |
---|
43 | # pragma warning(disable: 985) // identifier was truncated in debug information |
---|
44 | |
---|
45 | # endif |
---|
46 | |
---|
47 | // The STLport puts all of the standard 'C' library names in std (as far as the |
---|
48 | // user is concerned), but without it you need a fix if you're using MSVC or |
---|
49 | // Intel C++ |
---|
50 | # if defined(BOOST_NO_STDC_NAMESPACE) |
---|
51 | # define BOOST_CSTD_ |
---|
52 | # else |
---|
53 | # define BOOST_CSTD_ std |
---|
54 | # endif |
---|
55 | |
---|
56 | /***************************************************************************** |
---|
57 | * |
---|
58 | * Set up dll import/export options: |
---|
59 | * |
---|
60 | ****************************************************************************/ |
---|
61 | |
---|
62 | // backwards compatibility: |
---|
63 | #ifdef BOOST_PYTHON_STATIC_LIB |
---|
64 | # define BOOST_PYTHON_STATIC_LINK |
---|
65 | # elif !defined(BOOST_PYTHON_DYNAMIC_LIB) |
---|
66 | # define BOOST_PYTHON_DYNAMIC_LIB |
---|
67 | #endif |
---|
68 | |
---|
69 | #if defined(BOOST_PYTHON_DYNAMIC_LIB) |
---|
70 | |
---|
71 | # if !defined(_WIN32) && !defined(__CYGWIN__) \ |
---|
72 | && !defined(BOOST_PYTHON_USE_GCC_SYMBOL_VISIBILITY) \ |
---|
73 | && BOOST_WORKAROUND(__GNUC__, >= 3) && (__GNUC_MINOR__ >=5 || __GNUC__ > 3) |
---|
74 | # define BOOST_PYTHON_USE_GCC_SYMBOL_VISIBILITY 1 |
---|
75 | # endif |
---|
76 | |
---|
77 | # if BOOST_PYTHON_USE_GCC_SYMBOL_VISIBILITY |
---|
78 | # if defined(BOOST_PYTHON_SOURCE) |
---|
79 | # define BOOST_PYTHON_DECL __attribute__ ((visibility("default"))) |
---|
80 | # define BOOST_PYTHON_BUILD_DLL |
---|
81 | # else |
---|
82 | # define BOOST_PYTHON_DECL |
---|
83 | # endif |
---|
84 | # define BOOST_PYTHON_DECL_FORWARD |
---|
85 | # define BOOST_PYTHON_DECL_EXCEPTION __attribute__ ((visibility("default"))) |
---|
86 | # elif (defined(_WIN32) || defined(__CYGWIN__)) |
---|
87 | # if defined(BOOST_PYTHON_SOURCE) |
---|
88 | # define BOOST_PYTHON_DECL __declspec(dllexport) |
---|
89 | # define BOOST_PYTHON_BUILD_DLL |
---|
90 | # else |
---|
91 | # define BOOST_PYTHON_DECL __declspec(dllimport) |
---|
92 | # endif |
---|
93 | # endif |
---|
94 | |
---|
95 | #endif |
---|
96 | |
---|
97 | #ifndef BOOST_PYTHON_DECL |
---|
98 | # define BOOST_PYTHON_DECL |
---|
99 | #endif |
---|
100 | |
---|
101 | #ifndef BOOST_PYTHON_DECL_FORWARD |
---|
102 | # define BOOST_PYTHON_DECL_FORWARD BOOST_PYTHON_DECL |
---|
103 | #endif |
---|
104 | |
---|
105 | #ifndef BOOST_PYTHON_DECL_EXCEPTION |
---|
106 | # define BOOST_PYTHON_DECL_EXCEPTION BOOST_PYTHON_DECL |
---|
107 | #endif |
---|
108 | |
---|
109 | #if BOOST_WORKAROUND(__DECCXX_VER, BOOST_TESTED_AT(60590042)) |
---|
110 | // Replace broken Tru64/cxx offsetof macro |
---|
111 | # define BOOST_PYTHON_OFFSETOF(s_name, s_member) \ |
---|
112 | ((size_t)__INTADDR__(&(((s_name *)0)->s_member))) |
---|
113 | #else |
---|
114 | # define BOOST_PYTHON_OFFSETOF offsetof |
---|
115 | #endif |
---|
116 | |
---|
117 | // enable automatic library variant selection ------------------------------// |
---|
118 | |
---|
119 | #if !defined(BOOST_PYTHON_SOURCE) && !defined(BOOST_ALL_NO_LIB) && !defined(BOOST_PYTHON_NO_LIB) |
---|
120 | // |
---|
121 | // Set the name of our library, this will get undef'ed by auto_link.hpp |
---|
122 | // once it's done with it: |
---|
123 | // |
---|
124 | #define BOOST_LIB_NAME boost_python |
---|
125 | // |
---|
126 | // If we're importing code from a dll, then tell auto_link.hpp about it: |
---|
127 | // |
---|
128 | #ifdef BOOST_PYTHON_DYNAMIC_LIB |
---|
129 | # define BOOST_DYN_LINK |
---|
130 | #endif |
---|
131 | // |
---|
132 | // And include the header that does the work: |
---|
133 | // |
---|
134 | #include <boost/config/auto_link.hpp> |
---|
135 | #endif // auto-linking disabled |
---|
136 | |
---|
137 | #endif // CONFIG_DWA052200_H_ |
---|