Chris@16
|
1 // boost/system/config.hpp -----------------------------------------------------------//
|
Chris@16
|
2
|
Chris@16
|
3 // Copyright Beman Dawes 2003, 2006
|
Chris@16
|
4
|
Chris@16
|
5 // Distributed under the Boost Software License, Version 1.0. (See accompanying
|
Chris@16
|
6 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
Chris@16
|
7
|
Chris@16
|
8 // See http://www.boost.org/libs/system for documentation.
|
Chris@16
|
9
|
Chris@16
|
10 #ifndef BOOST_SYSTEM_CONFIG_HPP
|
Chris@16
|
11 #define BOOST_SYSTEM_CONFIG_HPP
|
Chris@16
|
12
|
Chris@16
|
13 #include <boost/config.hpp>
|
Chris@101
|
14 #include <boost/predef/platform.h>
|
Chris@16
|
15 #include <boost/system/api_config.hpp> // for BOOST_POSIX_API or BOOST_WINDOWS_API
|
Chris@16
|
16
|
Chris@16
|
17 // This header implements separate compilation features as described in
|
Chris@16
|
18 // http://www.boost.org/more/separate_compilation.html
|
Chris@16
|
19
|
Chris@16
|
20 // normalize macros ------------------------------------------------------------------//
|
Chris@16
|
21
|
Chris@16
|
22 #if !defined(BOOST_SYSTEM_DYN_LINK) && !defined(BOOST_SYSTEM_STATIC_LINK) \
|
Chris@16
|
23 && !defined(BOOST_ALL_DYN_LINK) && !defined(BOOST_ALL_STATIC_LINK)
|
Chris@16
|
24 # define BOOST_SYSTEM_STATIC_LINK
|
Chris@16
|
25 #endif
|
Chris@16
|
26
|
Chris@16
|
27 #if defined(BOOST_ALL_DYN_LINK) && !defined(BOOST_SYSTEM_DYN_LINK)
|
Chris@16
|
28 # define BOOST_SYSTEM_DYN_LINK
|
Chris@16
|
29 #elif defined(BOOST_ALL_STATIC_LINK) && !defined(BOOST_SYSTEM_STATIC_LINK)
|
Chris@16
|
30 # define BOOST_SYSTEM_STATIC_LINK
|
Chris@16
|
31 #endif
|
Chris@16
|
32
|
Chris@16
|
33 #if defined(BOOST_SYSTEM_DYN_LINK) && defined(BOOST_SYSTEM_STATIC_LINK)
|
Chris@16
|
34 # error Must not define both BOOST_SYSTEM_DYN_LINK and BOOST_SYSTEM_STATIC_LINK
|
Chris@16
|
35 #endif
|
Chris@16
|
36
|
Chris@16
|
37 // enable dynamic or static linking as requested --------------------------------------//
|
Chris@16
|
38
|
Chris@16
|
39 #if defined(BOOST_ALL_DYN_LINK) || defined(BOOST_SYSTEM_DYN_LINK)
|
Chris@16
|
40 # if defined(BOOST_SYSTEM_SOURCE)
|
Chris@16
|
41 # define BOOST_SYSTEM_DECL BOOST_SYMBOL_EXPORT
|
Chris@16
|
42 # else
|
Chris@16
|
43 # define BOOST_SYSTEM_DECL BOOST_SYMBOL_IMPORT
|
Chris@16
|
44 # endif
|
Chris@16
|
45 #else
|
Chris@16
|
46 # define BOOST_SYSTEM_DECL
|
Chris@16
|
47 #endif
|
Chris@16
|
48
|
Chris@16
|
49 // enable automatic library variant selection ----------------------------------------//
|
Chris@16
|
50
|
Chris@16
|
51 #if !defined(BOOST_SYSTEM_SOURCE) && !defined(BOOST_ALL_NO_LIB) && !defined(BOOST_SYSTEM_NO_LIB)
|
Chris@16
|
52 //
|
Chris@16
|
53 // Set the name of our library, this will get undef'ed by auto_link.hpp
|
Chris@16
|
54 // once it's done with it:
|
Chris@16
|
55 //
|
Chris@16
|
56 #define BOOST_LIB_NAME boost_system
|
Chris@16
|
57 //
|
Chris@16
|
58 // If we're importing code from a dll, then tell auto_link.hpp about it:
|
Chris@16
|
59 //
|
Chris@16
|
60 #if defined(BOOST_ALL_DYN_LINK) || defined(BOOST_SYSTEM_DYN_LINK)
|
Chris@16
|
61 # define BOOST_DYN_LINK
|
Chris@16
|
62 #endif
|
Chris@16
|
63 //
|
Chris@16
|
64 // And include the header that does the work:
|
Chris@16
|
65 //
|
Chris@16
|
66 #include <boost/config/auto_link.hpp>
|
Chris@16
|
67 #endif // auto-linking disabled
|
Chris@16
|
68
|
Chris@16
|
69 #endif // BOOST_SYSTEM_CONFIG_HPP
|
Chris@16
|
70
|