Chris@16
|
1 // boost/config/user.hpp ---------------------------------------------------//
|
Chris@16
|
2
|
Chris@16
|
3 // (C) Copyright John Maddock 2001.
|
Chris@16
|
4 // Use, modification and distribution are subject to the
|
Chris@16
|
5 // Boost Software License, Version 1.0. (See accompanying file
|
Chris@16
|
6 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
Chris@16
|
7
|
Chris@16
|
8 // Do not check in modified versions of this file,
|
Chris@16
|
9 // This file may be customized by the end user, but not by boost.
|
Chris@16
|
10
|
Chris@16
|
11 //
|
Chris@16
|
12 // Use this file to define a site and compiler specific
|
Chris@16
|
13 // configuration policy:
|
Chris@16
|
14 //
|
Chris@16
|
15
|
Chris@16
|
16 // define this to locate a compiler config file:
|
Chris@16
|
17 // #define BOOST_COMPILER_CONFIG <myheader>
|
Chris@16
|
18
|
Chris@16
|
19 // define this to locate a stdlib config file:
|
Chris@16
|
20 // #define BOOST_STDLIB_CONFIG <myheader>
|
Chris@16
|
21
|
Chris@16
|
22 // define this to locate a platform config file:
|
Chris@16
|
23 // #define BOOST_PLATFORM_CONFIG <myheader>
|
Chris@16
|
24
|
Chris@16
|
25 // define this to disable compiler config,
|
Chris@16
|
26 // use if your compiler config has nothing to set:
|
Chris@16
|
27 // #define BOOST_NO_COMPILER_CONFIG
|
Chris@16
|
28
|
Chris@16
|
29 // define this to disable stdlib config,
|
Chris@16
|
30 // use if your stdlib config has nothing to set:
|
Chris@16
|
31 // #define BOOST_NO_STDLIB_CONFIG
|
Chris@16
|
32
|
Chris@16
|
33 // define this to disable platform config,
|
Chris@16
|
34 // use if your platform config has nothing to set:
|
Chris@16
|
35 // #define BOOST_NO_PLATFORM_CONFIG
|
Chris@16
|
36
|
Chris@16
|
37 // define this to disable all config options,
|
Chris@16
|
38 // excluding the user config. Use if your
|
Chris@16
|
39 // setup is fully ISO compliant, and has no
|
Chris@16
|
40 // useful extensions, or for autoconf generated
|
Chris@16
|
41 // setups:
|
Chris@16
|
42 // #define BOOST_NO_CONFIG
|
Chris@16
|
43
|
Chris@16
|
44 // define this to make the config "optimistic"
|
Chris@16
|
45 // about unknown compiler versions. Normally
|
Chris@16
|
46 // unknown compiler versions are assumed to have
|
Chris@16
|
47 // all the defects of the last known version, however
|
Chris@16
|
48 // setting this flag, causes the config to assume
|
Chris@16
|
49 // that unknown compiler versions are fully conformant
|
Chris@16
|
50 // with the standard:
|
Chris@16
|
51 // #define BOOST_STRICT_CONFIG
|
Chris@16
|
52
|
Chris@16
|
53 // define this to cause the config to halt compilation
|
Chris@16
|
54 // with an #error if it encounters anything unknown --
|
Chris@16
|
55 // either an unknown compiler version or an unknown
|
Chris@16
|
56 // compiler/platform/library:
|
Chris@16
|
57 // #define BOOST_ASSERT_CONFIG
|
Chris@16
|
58
|
Chris@16
|
59
|
Chris@16
|
60 // define if you want to disable threading support, even
|
Chris@16
|
61 // when available:
|
Chris@16
|
62 // #define BOOST_DISABLE_THREADS
|
Chris@16
|
63
|
Chris@16
|
64 // define when you want to disable Win32 specific features
|
Chris@16
|
65 // even when available:
|
Chris@16
|
66 // #define BOOST_DISABLE_WIN32
|
Chris@16
|
67
|
Chris@16
|
68 // BOOST_DISABLE_ABI_HEADERS: Stops boost headers from including any
|
Chris@16
|
69 // prefix/suffix headers that normally control things like struct
|
Chris@16
|
70 // packing and alignment.
|
Chris@16
|
71 // #define BOOST_DISABLE_ABI_HEADERS
|
Chris@16
|
72
|
Chris@16
|
73 // BOOST_ABI_PREFIX: A prefix header to include in place of whatever
|
Chris@16
|
74 // boost.config would normally select, any replacement should set up
|
Chris@16
|
75 // struct packing and alignment options as required.
|
Chris@16
|
76 // #define BOOST_ABI_PREFIX my-header-name
|
Chris@16
|
77
|
Chris@16
|
78 // BOOST_ABI_SUFFIX: A suffix header to include in place of whatever
|
Chris@16
|
79 // boost.config would normally select, any replacement should undo
|
Chris@16
|
80 // the effects of the prefix header.
|
Chris@16
|
81 // #define BOOST_ABI_SUFFIX my-header-name
|
Chris@16
|
82
|
Chris@16
|
83 // BOOST_ALL_DYN_LINK: Forces all libraries that have separate source,
|
Chris@16
|
84 // to be linked as dll's rather than static libraries on Microsoft Windows
|
Chris@16
|
85 // (this macro is used to turn on __declspec(dllimport) modifiers, so that
|
Chris@16
|
86 // the compiler knows which symbols to look for in a dll rather than in a
|
Chris@16
|
87 // static library). Note that there may be some libraries that can only
|
Chris@101
|
88 // be linked in one way (statically or dynamically), in these cases this
|
Chris@16
|
89 // macro has no effect.
|
Chris@16
|
90 // #define BOOST_ALL_DYN_LINK
|
Chris@16
|
91
|
Chris@16
|
92 // BOOST_WHATEVER_DYN_LINK: Forces library "whatever" to be linked as a dll
|
Chris@16
|
93 // rather than a static library on Microsoft Windows: replace the WHATEVER
|
Chris@16
|
94 // part of the macro name with the name of the library that you want to
|
Chris@16
|
95 // dynamically link to, for example use BOOST_DATE_TIME_DYN_LINK or
|
Chris@16
|
96 // BOOST_REGEX_DYN_LINK etc (this macro is used to turn on __declspec(dllimport)
|
Chris@16
|
97 // modifiers, so that the compiler knows which symbols to look for in a dll
|
Chris@16
|
98 // rather than in a static library).
|
Chris@101
|
99 // Note that there may be some libraries that can only
|
Chris@101
|
100 // be linked in one way (statically or dynamically),
|
Chris@101
|
101 // in these cases this macro is unsupported.
|
Chris@16
|
102 // #define BOOST_WHATEVER_DYN_LINK
|
Chris@16
|
103
|
Chris@16
|
104 // BOOST_ALL_NO_LIB: Tells the config system not to automatically select
|
Chris@16
|
105 // which libraries to link against.
|
Chris@16
|
106 // Normally if a compiler supports #pragma lib, then the correct library
|
Chris@16
|
107 // build variant will be automatically selected and linked against,
|
Chris@16
|
108 // simply by the act of including one of that library's headers.
|
Chris@16
|
109 // This macro turns that feature off.
|
Chris@16
|
110 // #define BOOST_ALL_NO_LIB
|
Chris@16
|
111
|
Chris@16
|
112 // BOOST_WHATEVER_NO_LIB: Tells the config system not to automatically
|
Chris@16
|
113 // select which library to link against for library "whatever",
|
Chris@16
|
114 // replace WHATEVER in the macro name with the name of the library;
|
Chris@16
|
115 // for example BOOST_DATE_TIME_NO_LIB or BOOST_REGEX_NO_LIB.
|
Chris@16
|
116 // Normally if a compiler supports #pragma lib, then the correct library
|
Chris@16
|
117 // build variant will be automatically selected and linked against, simply
|
Chris@16
|
118 // by the act of including one of that library's headers. This macro turns
|
Chris@16
|
119 // that feature off.
|
Chris@16
|
120 // #define BOOST_WHATEVER_NO_LIB
|
Chris@16
|
121
|
Chris@101
|
122 // BOOST_LIB_BUILDID: Set to the same value as the value passed to Boost.Build's
|
Chris@101
|
123 // --buildid command line option. For example if you built using:
|
Chris@101
|
124 //
|
Chris@101
|
125 // bjam address-model=64 --buildid=amd64
|
Chris@101
|
126 //
|
Chris@101
|
127 // then compile your code with:
|
Chris@101
|
128 //
|
Chris@101
|
129 // -DBOOST_LIB_BUILDID = amd64
|
Chris@101
|
130 //
|
Chris@101
|
131 // to ensure the correct libraries are selected at link time.
|
Chris@101
|
132 // #define BOOST_LIB_BUILDID amd64
|
Chris@16
|
133
|