/
boost_1_40_0.qbk
283 lines (240 loc) · 11.8 KB
/
boost_1_40_0.qbk
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
[article Version 1.40.0
[quickbook 1.4]
[source-mode c++]
[purpose Build System improvements.
Updated Libraries: Accumulators, Asio, Circular Buffer, Foreach,
Function, Fusion, Graph, Hash, Interprocess, Intrusive, MPL,
Program.Options, Property Map, Proto, Random, Serialization,
Unordered, Xpressive.]
[authors [Dawes, Beman]]
[last-revision Thu, 27 Aug 2009 17:00:00 GMT]
]
[include ext.qbk]
[download http://sourceforge.net/projects/boost/files/boost/1.40.0/]
[documentation /doc/libs/1_40_0/]
[section Update]
Added missing notes for Graph and Property Map.
[endsect]
[section Boost.CMake]
Boost.CMake is *now distributed separately*. The cmake build for
boost is *BROKEN* in the tarballs above. See the
[@https://svn.boost.org/trac/boost/wiki/CMake Boost.CMake wiki page]
for pointers to working versions.
[endsect]
[section Updated Libraries]
* [phrase library..[@/libs/accumulators/index.html Accumulators]:]
* Works on GCC 4.4.
* [phrase library..[@/libs/asio/index.html Asio]:]
* Added a new ping example to illustrate the use of ICMP sockets.
* Changed the `buffered*_stream<>` templates to treat 0-byte reads and writes
as no-ops, to comply with the documented type requirements for
`SyncReadStream`, `AsyncReadStream`, `SyncWriteStream` and
`AsyncWriteStream`.
* Changed some instances of the `throw` keyword to `boost::throw_exception()`
to allow Asio to be used when exception support is disabled. Note that the
SSL wrappers still require exception support
([@https://svn.boost.org/trac/boost/ticket/2754 #2754]).
* Made Asio compatible with the OpenSSL 1.0 beta
([@https://svn.boost.org/trac/boost/ticket/3256 #3256]).
* Eliminated a redundant system call in the Solaris [^/dev/poll] backend.
* Fixed a bug in resizing of the bucket array in the internal hash maps
([@https://svn.boost.org/trac/boost/ticket/3095 #3095]).
* Ensured correct propagation of the error code when a synchronous accept
fails ([@https://svn.boost.org/trac/boost/ticket/3216 #3216]).
* Ensured correct propagation of the error code when a synchronous read or
write on a Windows HANDLE fails.
* Fixed failures reported when `_GLIBCXX_DEBUG` is defined
([@https://svn.boost.org/trac/boost/ticket/3098 #3098]).
* Fixed custom memory allocation support for timers
([@https://svn.boost.org/trac/boost/ticket/3107 #3107]).
* Tidied up various warnings reported by g++
([@https://svn.boost.org/trac/boost/ticket/1341 #1341],
[@https://svn.boost.org/trac/boost/ticket/2618 #2618]).
* Various documentation improvements, including more obvious hyperlinks to
function overloads, header file information, examples for the handler type
requirements, and adding enum values to the index
([@https://svn.boost.org/trac/boost/ticket/3157 #3157],
[@https://svn.boost.org/trac/boost/ticket/2620 #2620]).
* [phrase library..[@/libs/circular_buffer/index.html Circular Buffer]:]
* Fixed bugs
[@https://svn.boost.org/trac/boost/ticket/2785 #2785],
[@https://svn.boost.org/trac/boost/ticket/3285 #3285].
* [phrase library..[@/libs/foreach/index.html Foreach]:]
* Workaround for conflict with Python headers
([@https://svn.boost.org/trac/boost/ticket/3000 #3000]).
* [phrase library..[@/libs/function/index.html Function]:]
* Optimize the use of small target objects.
* Make Boost.Function compile under BOOST_NO_EXCEPTIONS
([@https://svn.boost.org/trac/boost/ticket/2499 #2499],
[@https://svn.boost.org/trac/boost/ticket/2494 #2494],
[@https://svn.boost.org/trac/boost/ticket/2469 #2469],
[@https://svn.boost.org/trac/boost/ticket/2466 #2466],
[@https://svn.boost.org/trac/boost/ticket/2900 #2900])
* Various minor fixes
([@https://svn.boost.org/trac/boost/ticket/2642 #2642],
[@https://svn.boost.org/trac/boost/ticket/2847 #2847],
[@https://svn.boost.org/trac/boost/ticket/2929 #2929]
[@https://svn.boost.org/trac/boost/ticket/3012 #3012])
* [phrase library..[@/libs/fusion/index.html Fusion]:]
* Improved compile times for `fusion::vector`.
* [phrase library..[@/libs/graph/index.html Graph]:]
* Merged in the [@/libs/graph_parallel/doc/html/index.html Parallel Boost
Graph Library], giving a full suite of graph algorithms and data
structures for distributed-memory computers (such as clusters).
* Updates to the interface of the compressed sparse row graph, including
constructors from unsorted edge lists.
* An implicit grid graph, saving memory over using the former generator.
* New algorithms: Dijkstra's single-source shortest path algorithm without a
separate color map and an algorithm to find maximal common subgraphs
between two graphs.
* Assorted bug fixes.
* [phrase library..[@/libs/functional/hash/index.html Hash]:]
* Automatically configure the float functions using template metaprogramming
instead of trying to configure every possibility manually.
* [phrase library..[@/libs/interprocess/index.html Interprocess]:]
* Windows shared memory is created in Shared Documents folder so that it can be shared
between services and processes
* Fixed bugs
[@https://svn.boost.org/trac/boost/ticket/2967 #2967],
[@https://svn.boost.org/trac/boost/ticket/2973 #2973],
[@https://svn.boost.org/trac/boost/ticket/2992 #2992],
[@https://svn.boost.org/trac/boost/ticket/3138 #3138],
[@https://svn.boost.org/trac/boost/ticket/3166 #3166],
[@https://svn.boost.org/trac/boost/ticket/3205 #3205].
* [phrase library..[@/libs/intrusive/index.html Intrusive]:]
* Code cleanup in tree_algorithms.hpp and avl_tree_algorithms.hpp
* Fixed bug
[@https://svn.boost.org/trac/boost/ticket/3164 #3164].
* [phrase library..[@/libs/mpl/index.html MPL]:]
* Added `mpl::char_` and `mpl::string` for compile-time string
manipulation, based on multichar literals
([@https://svn.boost.org/trac/boost/ticket/2905 #2905]).
* Updated [@/libs/mpl/doc/refmanual.html MPL Reference Manual].
* Bug fixes.
* [phrase library..[@/libs/program_options/index.html Program.Options]:]
* Support for building with disabled exceptions
([@https://svn.boost.org/trac/boost/ticket/2096 #2096]).
* Unicode parser no longer drops original tokens
([@https://svn.boost.org/trac/boost/ticket/2425 #2425]).
* Fixed crash on user-inserted items in `variables_map`
([@https://svn.boost.org/trac/boost/ticket/2782 #2782]).
* [phrase library..[@/libs/property_map/index.html Property Map]:]
* Moved property map code into a separate directory, `boost/property_map/`. The
old files exist and forward to the new ones; the previous files directly in
`boost/` will be removed in Boost 1.42.0.
* Moved distributed property maps to `boost::graph::parallel` namespace.
* Added a property map based on a `boost::shared_array`, providing a simpler
interface.
* [phrase library..[@/libs/proto/index.html Proto]:]
* PrimitiveTransforms have stricter conformance to ResultOf protocol.
(Warning: some invalid code may break.)
* Add a sensible default for `proto::_default`'s template parameter.
* Improved default evaluation strategy for pointers to members.
* GCC 3.4 portability fixes
([@https://svn.boost.org/trac/boost/ticket/3021 #3021]).
* Work around Visual C++'s non-std-compliant ciso646 macros.
* [phrase library..[@/libs/random/index.html Random]:]
* Made the constructors of all the generators call
the copy constructor when passed a non-const reference.
* Changed seeding functions to accept any arithmetic type.
As a side-effect, the exact signature of seed changed
for some classes.
* Major bug fixes in uniform_int.
* [phrase library..[@/libs/serialization/index.html Serialization]:]
* Removed deprecated headers: `boost/static_warning.hpp`,
`boost/state_saver.hpp`, `boost/smart_cast.hpp`, `boost/pfto.hpp`.
Use the the equivalent headers in the `boost/serialization/` directory
instead
([@https://svn.boost.org/trac/boost/ticket/3062 #3062]).
* `detail::archive_serializer_map` should now be used instead of
`detail::archive_pointer_iserializer`. For more details see
[@/doc/libs/1_40_0/libs/serialization/doc/release.html
the library release notes].
* [phrase library..[@/libs/unordered/index.html Unordered]:]
* Implement `emplace` for all compilers, not just ones with
rvalue references and variadic templates
([@https://svn.boost.org/trac/boost/ticket/1978 #1978]).
* Create less buckets by default.
* Some minor tweaks for better compiler support
([@https://svn.boost.org/trac/boost/ticket/2908 #2908],
[@https://svn.boost.org/trac/boost/ticket/3096 #3096],
[@https://svn.boost.org/trac/boost/ticket/3082 #3082]).
* [phrase library..[@/libs/xpressive/index.html Xpressive]:]
* Works on Visual C++ 10.0
([@https://svn.boost.org/trac/boost/ticket/3124 #3124]).
[endsect]
[section Build System]
The default naming of libraries in Unix-like environment now matches
system conventions, and does not include various decorations. Naming
of libraries on Cygwin was also fixed. Support for beta versions of
Microsoft Visual Studio 10 was added. With gcc, 64-bit compilation no
longer requires that target architecture be specified.
[endsect]
[section Updated Tools]
* [phrase library..[@/tools/boostbook/index.html Boostbook]:]
* Hide `INTERNAL ONLY` enums in doxygen documentation
([@https://svn.boost.org/trac/boost/ticket/3242 #3242]).
* Tweaked appearance of member classes/structs/unions in a class synopsis.
* [phrase library..[@/tools/quickbook/index.html Quickbook]:]
* Support python code snippets
([@https://svn.boost.org/trac/boost/ticket/3029 #3029]).
* Add `teletype` source mode
([@https://svn.boost.org/trac/boost/ticket/1202 #1202])
[endsect]
[section Compilers Tested]
Boost's primary test compilers are:
* OS X:
* GCC 4.0.1 on Intel Tiger and Leopard
* GCC 4.0.1 on PowerPC Tiger
* Linux:
* GCC 4.3.3 on Ubuntu Linux.
* Windows:
* Visual C++ 7.1 SP1, 8.0 SP1 and 9.0 SP1 on Windows XP.
Boost's additional test compilers include:
* Linux:
* Intel 9.0 on Red Hat Enterprise Linux.
* Intel 10.0 on Red Hat Enterprise Linux.
* Intel 10.1 on 64-bit Linux Redhat 5.1 Server.
* Intel 10.1 on Suse Linux on 64 bit Itanium.
* Intel 11.0 on Red Hat Enterprise Linux.
* Intel 11.1 on Red Hat Enterprise Linux.
* GCC 3.4.3, GCC 4.0.1, GCC 4.2.4, GCC 4.3.3 and GCC 4.4.0 on Red Hat Enterprise Linux.
* GCC 4.3.3 and GCC 4.4.0 with C++0x extensions on Red Hat Enterprise Linux.
* GCC 4.1.1, 4.2.1 on 64-bit Red Hat Enterprise Linux.
* GCC 4.1.2 on Suse Linux on 64 bit Itanium.
* GCC 4.1.2 on 64-bit Redhat Server 5.1.
* GCC Open64 4.2.2 on Red Hat Enterprise Linux.
* GCC 4.3.4 on Debian unstable.
* QLogic PathScale(TM) Compiler Suite: Version 3.1 on Red Hat Enterprise Linux.
* GCC version 4.2.0 (PathScale 3.2 driver) on 64-bit Red Hat Enterprise Linux.
* Sun 5.9 on Red Hat Enterprise Linux.
* OS X:
* Intel 10.1, 11.0 on Intel Leopard.
* Intel 10.1, 11.0 on Intel Tiger.
* GCC 4.0.1, 4.2.1 on Intel Leopard.
* GCC 4.0.1 on Intel Tiger.
* GCC 4.0.1 on PowerPC Tiger.
* Windows:
* Visual C++ 7.1 on XP.
* Visual C++ 9.0 on XP.
* Visual C++ 9.0 on Vista.
* Visual C++ 9.0 on Vista 64-bit.
* Visual C++ 9.0, using STLport 5.2, on XP and Windows Mobile 5.0.
* Visual C++ 10.0 beta.
* Borland 5.9.3, 6.1.0, 6.1.3.
* Borland C++ Builder 2007 and 2009.
* Intel C++ 11.1, with a Visual C++ 9.0 backend, on Vista 32-bit.
* Intel C++ 11.1, with a Visual C++ 9.0 backend, on Vista 64-bit.
* GCC 4.3.3 and 4.4.0, on Mingw with C++0x features.
* AIX:
* IBM XL C/C++ Enterprise Edition for AIX, V10.1.0.0, on AIX Version 5.3.0.40.
* Solaris:
* Sun C++ 5.7, 5.8, 5.9 on Solaris 5.10.
* GCC 3.4.6 on Solaris 5.10.
[endsect]
[section Acknowledgements]
[@/users/people/beman_dawes.html Beman Dawes],
Eric Niebler,
[@/users/people/rene_rivera.html Rene Rivera],
and Daniel James managed this release.
[endsect]