Compare commits
145
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
6c75602c32 | ||
|
|
b8e7fc3c78 | ||
|
|
a793d4631e | ||
|
|
94b0fc70e4 | ||
|
|
0739d8f405 | ||
|
|
e10ebbf7e3 | ||
|
|
fe260e7b06 | ||
|
|
e761dec633 | ||
|
|
f25f2a2c55 | ||
|
|
b6df1599f6 | ||
|
|
577891f552 | ||
|
|
13e06baa6f | ||
|
|
682964178c | ||
|
|
74e61a0ba2 | ||
|
|
95f498fcce | ||
|
|
ae06418f8b | ||
|
|
03a800c4c6 | ||
|
|
23b6e0822a | ||
|
|
ed85281ef7 | ||
|
|
b1e0d3588e | ||
|
|
04c6c6df40 | ||
|
|
69360302a4 | ||
|
|
9e5190f21b | ||
|
|
6f0e6ac479 | ||
|
|
cca235efc8 | ||
|
|
3bed60ff7a | ||
|
|
2b62afd692 | ||
|
|
fe56e79a97 | ||
|
|
e5b6eb4580 | ||
|
|
a0fddc3049 | ||
|
|
2e13d8d3a7 | ||
|
|
935e2d13cb | ||
|
|
1210a9246f | ||
|
|
516613bb12 | ||
|
|
3570373adf | ||
|
|
4f4272b79f | ||
|
|
8226ca5570 | ||
|
|
f2fd7b8609 | ||
|
|
f7c4956702 | ||
|
|
45af6459d4 | ||
|
|
c182320e67 | ||
|
|
f64a591f9b | ||
|
|
b30ec8d0f6 | ||
|
|
56a15e5ea7 | ||
|
|
aa286653eb | ||
|
|
4f03691cc0 | ||
|
|
d7c27e2922 | ||
|
|
6accde30f5 | ||
|
|
a212aaf400 | ||
|
|
0a7dd9502a | ||
|
|
cbe34b611f | ||
|
|
d550d3167a | ||
|
|
5eb2e05621 | ||
|
|
93ca6fba1f | ||
|
|
db01464d87 | ||
|
|
8993aab55f | ||
|
|
f55d7dd105 | ||
|
|
90dababcc3 | ||
|
|
9830a0249f | ||
|
|
823dc22ce2 | ||
|
|
bdd4f999b1 | ||
|
|
654af2e80b | ||
|
|
007e158639 | ||
|
|
d310a4813f | ||
|
|
32942b0373 | ||
|
|
b1ab5557ce | ||
|
|
65e167a1dd | ||
|
|
f96196b541 | ||
|
|
ecf60a0337 | ||
|
|
729486bf0f | ||
|
|
89e858616e | ||
|
|
d63f9b52a7 | ||
|
|
3398a8561f | ||
|
|
b303ad9236 | ||
|
|
4ba0a94cdd | ||
|
|
78a316b5ae | ||
|
|
b73eaf3344 | ||
|
|
a69e36e1e0 | ||
|
|
4afe9e481a | ||
|
|
0acefef72a | ||
|
|
18b1c92ddc | ||
|
|
6cf546ac7f | ||
|
|
6956ed860c | ||
|
|
d1c497f926 | ||
|
|
14fd4043bb | ||
|
|
18964250dd | ||
|
|
df03c00a82 | ||
|
|
cc4585e54f | ||
|
|
5aebc05c93 | ||
|
|
f644bce83a | ||
|
|
b044c4a1b8 | ||
|
|
a14d26901b | ||
|
|
f1dc558348 | ||
|
|
3ef5be2f5c | ||
|
|
5d48a482ef | ||
|
|
c276bd78fc | ||
|
|
9cb5fa356f | ||
|
|
226082aa24 | ||
|
|
1476ce1f4b | ||
|
|
44dcfb65ae | ||
|
|
cce478f7e9 | ||
|
|
14b95ef845 | ||
|
|
f932f992ff | ||
|
|
52012c968b | ||
|
|
2687b81c3e | ||
|
|
2fdb27a1a6 | ||
|
|
810ad5a5fe | ||
|
|
d6f1ba642e | ||
|
|
3ff8a0d151 | ||
|
|
336fd38a91 | ||
|
|
934f75d756 | ||
|
|
3f979169d4 | ||
|
|
8deee3925c | ||
|
|
fef480f424 | ||
|
|
a075868a40 | ||
|
|
5ddbc2f8d7 | ||
|
|
5b9a3ed4de | ||
|
|
578df00fe6 | ||
|
|
b7f589352b | ||
|
|
2fcf1c85b1 | ||
|
|
0eb6c6572c | ||
|
|
298672cbae | ||
|
|
648812c5b7 | ||
|
|
497ac5affc | ||
|
|
7f2956077f | ||
|
|
f8aefc023f | ||
|
|
c1768535a5 | ||
|
|
c797913c72 | ||
|
|
f46fa9d041 | ||
|
|
2ca7ba244a | ||
|
|
5913c870a1 | ||
|
|
e15a68b533 | ||
|
|
0480ec6523 | ||
|
|
0feb4802d1 | ||
|
|
2f981e6c45 | ||
|
|
02e8d31c1a | ||
|
|
ef1dffcbdb | ||
|
|
dcbbaefe0f | ||
|
|
424a6cd351 | ||
|
|
67ecb9a43f | ||
|
|
62068f372a | ||
|
|
c848adf4a1 | ||
|
|
9f54e17d87 | ||
|
|
0565ad7a88 | ||
|
|
df3c96bb7c |
+146
-146
@@ -1,180 +1,180 @@
|
||||
[submodule "format"]
|
||||
path = libs/format
|
||||
url = ../format.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "ublas"]
|
||||
path = libs/numeric/ublas
|
||||
url = ../ublas.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "smart_ptr"]
|
||||
path = libs/smart_ptr
|
||||
url = ../smart_ptr.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "integer"]
|
||||
path = libs/integer
|
||||
url = ../integer.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "compose"]
|
||||
path = libs/compose
|
||||
url = ../compose.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "random"]
|
||||
path = libs/random
|
||||
url = ../random.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "utility"]
|
||||
path = libs/utility
|
||||
url = ../utility.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "rational"]
|
||||
path = libs/rational
|
||||
url = ../rational.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "timer"]
|
||||
path = libs/timer
|
||||
url = ../timer.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "functional"]
|
||||
path = libs/functional
|
||||
url = ../functional.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "conversion"]
|
||||
path = libs/conversion
|
||||
url = ../conversion.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "config"]
|
||||
path = libs/config
|
||||
url = ../config.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "array"]
|
||||
path = libs/array
|
||||
url = ../array.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "type_traits"]
|
||||
path = libs/type_traits
|
||||
url = ../type_traits.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "iterator"]
|
||||
path = libs/iterator
|
||||
url = ../iterator.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "regex"]
|
||||
path = libs/regex
|
||||
url = ../regex.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "graph"]
|
||||
path = libs/graph
|
||||
url = ../graph.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "static_assert"]
|
||||
path = libs/static_assert
|
||||
url = ../static_assert.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "function"]
|
||||
path = libs/function
|
||||
url = ../function.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "concept_check"]
|
||||
path = libs/concept_check
|
||||
url = ../concept_check.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "detail"]
|
||||
path = libs/detail
|
||||
url = ../detail.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "disjoint_sets"]
|
||||
path = libs/disjoint_sets
|
||||
url = ../disjoint_sets.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "property_map"]
|
||||
path = libs/property_map
|
||||
url = ../property_map.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "python"]
|
||||
path = libs/python
|
||||
url = ../python.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "test"]
|
||||
path = libs/test
|
||||
url = ../test.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "any"]
|
||||
path = libs/any
|
||||
url = ../any.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "crc"]
|
||||
path = libs/crc
|
||||
url = ../crc.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "pool"]
|
||||
path = libs/pool
|
||||
url = ../pool.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "thread"]
|
||||
path = libs/thread
|
||||
url = ../thread.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "tuple"]
|
||||
path = libs/tuple
|
||||
url = ../tuple.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "tokenizer"]
|
||||
path = libs/tokenizer
|
||||
url = ../tokenizer.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "math"]
|
||||
path = libs/math
|
||||
url = ../math.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "build"]
|
||||
path = tools/build
|
||||
url = ../build.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "compatibility"]
|
||||
path = libs/compatibility
|
||||
url = ../compatibility.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "bind"]
|
||||
path = libs/bind
|
||||
url = ../bind.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "date_time"]
|
||||
path = libs/date_time
|
||||
url = ../date_time.git
|
||||
[submodule "utility"]
|
||||
path = libs/utility
|
||||
url = ../utility.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "regex"]
|
||||
path = libs/regex
|
||||
url = ../regex.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "integer"]
|
||||
path = libs/integer
|
||||
url = ../integer.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "array"]
|
||||
path = libs/array
|
||||
url = ../array.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "python"]
|
||||
path = libs/python
|
||||
url = ../python.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "detail"]
|
||||
path = libs/detail
|
||||
url = ../detail.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "config"]
|
||||
path = libs/config
|
||||
url = ../config.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "multi_array"]
|
||||
path = libs/multi_array
|
||||
url = ../multi_array.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "signals"]
|
||||
path = libs/signals
|
||||
url = ../signals.git
|
||||
[submodule "dynamic_bitset"]
|
||||
path = libs/dynamic_bitset
|
||||
url = ../dynamic_bitset.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "preprocessor"]
|
||||
path = libs/preprocessor
|
||||
url = ../preprocessor.git
|
||||
[submodule "type_traits"]
|
||||
path = libs/type_traits
|
||||
url = ../type_traits.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "lambda"]
|
||||
path = libs/lambda
|
||||
url = ../lambda.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "function"]
|
||||
path = libs/function
|
||||
url = ../function.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "random"]
|
||||
path = libs/random
|
||||
url = ../random.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "math"]
|
||||
path = libs/math
|
||||
url = ../math.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "iterator"]
|
||||
path = libs/iterator
|
||||
url = ../iterator.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "io"]
|
||||
path = libs/io
|
||||
url = ../io.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "dynamic_bitset"]
|
||||
path = libs/dynamic_bitset
|
||||
url = ../dynamic_bitset.git
|
||||
[submodule "tokenizer"]
|
||||
path = libs/tokenizer
|
||||
url = ../tokenizer.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "mpl"]
|
||||
path = libs/mpl
|
||||
url = ../mpl.git
|
||||
[submodule "rational"]
|
||||
path = libs/rational
|
||||
url = ../rational.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "exception"]
|
||||
path = libs/exception
|
||||
url = ../exception.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "statechart"]
|
||||
path = libs/statechart
|
||||
url = ../statechart.git
|
||||
[submodule "signals"]
|
||||
path = libs/signals
|
||||
url = ../signals.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "graph"]
|
||||
path = libs/graph
|
||||
url = ../graph.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "functional"]
|
||||
path = libs/functional
|
||||
url = ../functional.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "pool"]
|
||||
path = libs/pool
|
||||
url = ../pool.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "property_map"]
|
||||
path = libs/property_map
|
||||
url = ../property_map.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "test"]
|
||||
path = libs/test
|
||||
url = ../test.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "concept_check"]
|
||||
path = libs/concept_check
|
||||
url = ../concept_check.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "preprocessor"]
|
||||
path = libs/preprocessor
|
||||
url = ../preprocessor.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "format"]
|
||||
path = libs/format
|
||||
url = ../format.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "timer"]
|
||||
path = libs/timer
|
||||
url = ../timer.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "compose"]
|
||||
path = libs/compose
|
||||
url = ../compose.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "crc"]
|
||||
path = libs/crc
|
||||
url = ../crc.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "any"]
|
||||
path = libs/any
|
||||
url = ../any.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "conversion"]
|
||||
path = libs/conversion
|
||||
url = ../conversion.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "mpl"]
|
||||
path = libs/mpl
|
||||
url = ../mpl.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "static_assert"]
|
||||
path = libs/static_assert
|
||||
url = ../static_assert.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "disjoint_sets"]
|
||||
path = libs/disjoint_sets
|
||||
url = ../disjoint_sets.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "tuple"]
|
||||
path = libs/tuple
|
||||
url = ../tuple.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "date_time"]
|
||||
path = libs/date_time
|
||||
url = ../date_time.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "thread"]
|
||||
path = libs/thread
|
||||
url = ../thread.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "ublas"]
|
||||
path = libs/numeric/ublas
|
||||
url = ../ublas.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "compatibility"]
|
||||
path = libs/compatibility
|
||||
url = ../compatibility.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
[submodule "log"]
|
||||
path = libs/log
|
||||
url = ../log.git
|
||||
fetchRecurseSubmodules = on-demand
|
||||
|
||||
@@ -1,859 +0,0 @@
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<meta http-equiv="Content-Type"
|
||||
content="text/html; charset=iso-8859-1">
|
||||
<meta name="Template"
|
||||
content="C:\PROGRAM FILES\MICROSOFT OFFICE\OFFICE\html.dot">
|
||||
<meta name="GENERATOR" content="Microsoft FrontPage Express 2.0">
|
||||
<title></title>
|
||||
</head>
|
||||
|
||||
<body bgcolor="#FFFFFF" link="#0000FF" vlink="#800080">
|
||||
|
||||
<h2 align="center">A Proposal for the Boost Directory Structure</h2>
|
||||
|
||||
<p align="center">By John Maddock.</p>
|
||||
|
||||
<p>The following proposal consists of three sections: A list of
|
||||
requirements and objectives that the chosen structure must meet,
|
||||
a set of tools to facilitate working with boost, and an actual
|
||||
proposal for a structure that meets those requirements. In the
|
||||
past I have argued vociferously for a "do as little as
|
||||
possible" approach, however I have somewhat surprised myself
|
||||
by coming out in favour of a radical reorganisation here. In many
|
||||
ways though, the proposed directory structure is less important
|
||||
than its ability to meet the requirements listed below, nor is it
|
||||
the only structure that could arguably meet these requirements (especially
|
||||
as some requirements are contradictory). Finally a couple of
|
||||
caveats: All opinions expressed herein are my own; all ideas
|
||||
expressed herein belong to over people (especially the good ones!).
|
||||
Where possible credits are given, but my memory is far from
|
||||
infallible so speak up if you've been missed out.</p>
|
||||
|
||||
<h2 align="center">Requirements</h2>
|
||||
|
||||
<h3>Consistency</h3>
|
||||
|
||||
<blockquote>
|
||||
<p><b>Comment</b>: this should speak for itself.</p>
|
||||
</blockquote>
|
||||
|
||||
<h3>Discoverability</h3>
|
||||
|
||||
<p>That is a casual user browsing the directory structure should
|
||||
be able to immediately tell what belongs where.</p>
|
||||
|
||||
<blockquote>
|
||||
<p><b>Rationale</b>: some users read the documentation,
|
||||
others wander around aimlessly saying: "I wonder what's
|
||||
in here?", speak up if you recognise anyone!</p>
|
||||
<p><b>Rationale</b>: automated tools should be able to glean
|
||||
most of the information they need direct from the directory
|
||||
structure.</p>
|
||||
<p><b>Comment</b>: This is probably the most important
|
||||
requirement and guides the choice of many others.</p>
|
||||
</blockquote>
|
||||
|
||||
<h3>Boost is a single library</h3>
|
||||
|
||||
<blockquote>
|
||||
<p>From an end users perspective boost should appear to be a
|
||||
single library, with a single integrated build process etc.</p>
|
||||
<p><b>Rationale</b>: This makes life much more comfortable
|
||||
for end uses.</p>
|
||||
</blockquote>
|
||||
|
||||
<h3>Boost is a collection of separate libraries</h3>
|
||||
|
||||
<blockquote>
|
||||
<p><b>Rationale</b>: some libraries have an existence of
|
||||
their own outside of boost, this should be able to continue.</p>
|
||||
<p><b>Rationale</b>: different developers maintain individual
|
||||
boost libraries.</p>
|
||||
<p><b>Rationale</b>: as boost grows it may be necessary to
|
||||
split the library into multiple zip file downloads, each
|
||||
download should encapsulate one domain, and provide all the
|
||||
files necessary for that domain (that may mean that some
|
||||
files appear in more than one zip file).</p>
|
||||
<p><b>Rationale</b>: some users will want to split off (and
|
||||
maybe freeze) those parts of boost that are being used by a
|
||||
particular project. These sub-libraries can then be checked
|
||||
into the users own version control system (for example into a
|
||||
local cvs repository as a vendor branch), and maintained
|
||||
alongside the users own source for that project.</p>
|
||||
<p><b>Implication:</b> that there exists some mechanism for
|
||||
locating and separating off all the files associated with a
|
||||
particular boost library, this should also take into account
|
||||
dependencies (both for headers and for binary dependencies).</p>
|
||||
</blockquote>
|
||||
|
||||
<h3>Individual boost libraries can be checked out from the cvs
|
||||
repository</h3>
|
||||
|
||||
<blockquote>
|
||||
<p>For example "<code>cvs checkout regex</code>"
|
||||
would check out the regex library alone.</p>
|
||||
<p><b>Rationale</b>: This makes maintenance much easier
|
||||
especially when working with cvs-branches.</p>
|
||||
<p><b>Implication</b>: we could isolate libraries into
|
||||
separate directories, however that's only a partial solution
|
||||
which takes no account of library dependencies (something
|
||||
that's likely to become increasingly important). A better
|
||||
solution is to use cvs module-aliases: as a test case I've
|
||||
defined the regex library as a module-alias (this seems to
|
||||
work very well). In this case I had to specify dependencies
|
||||
by hand (an error prone process), much better would be a tool
|
||||
that produced a list of library aliases to insert directly
|
||||
into the cvs modules file.</p>
|
||||
</blockquote>
|
||||
|
||||
<h3>Boost libraries can have dependencies to other libraries</h3>
|
||||
|
||||
<blockquote>
|
||||
<p>There are three kinds of dependency possible:</p>
|
||||
<ol>
|
||||
<li>Libraries may depend upon the headers from other
|
||||
boost libraries; these dependencies can be worked out
|
||||
automatically.</li>
|
||||
<li>Libraries may depend upon binaries from other boost
|
||||
libraries; these dependencies can be worked out
|
||||
automatically (hint: if library X depends upon header
|
||||
H, and header H is from a library Y which has
|
||||
mandatory source code associated with it, then there
|
||||
is a binary dependency from X to Y).</li>
|
||||
<li>Some domain specific libraries may depend upon third
|
||||
party libraries (the python library for example).
|
||||
These dependencies can not be deduced, and will
|
||||
require meta-data to describe.</li>
|
||||
</ol>
|
||||
<p><b>Rationale: </b>these dependencies already exist in the
|
||||
boost library.</p>
|
||||
</blockquote>
|
||||
|
||||
<h3>Usable "as is"</h3>
|
||||
|
||||
<blockquote>
|
||||
<p>That is the library should be usable directly from the
|
||||
checked out cvs tree, or the extracted zip file, without a
|
||||
mandatory install process.</p>
|
||||
<p><b>Rationale:</b> For single user installations it is
|
||||
sufficient and often easier to work directly from the zip/cvs
|
||||
structure.</p>
|
||||
<p><b>Rationale: </b>For "occasional developers"
|
||||
this simplifies their ability to port/debug parts of the
|
||||
library, and then submit patches based on changes made,
|
||||
without having to get involved with "wrapper compilers"
|
||||
and other tools that have been suggested, which may or may
|
||||
not function on their platform with their toolset.</p>
|
||||
<p><b>Implication:</b> that all header files are located
|
||||
together, and not split between multiple library paths.</p>
|
||||
<p><b>Comments:</b> during the recent discussion it was
|
||||
suggested splitting the header files into separate
|
||||
directories under "boost-root/src/libname/boost",
|
||||
however this involves specifying a large number of -I options
|
||||
on the command line in order to be able to use boost direct
|
||||
from the cvs tree. One suggested workaround was to use a
|
||||
wrapper-compiler to pass the long list of includes to the
|
||||
compiler semi-automatically. However some compilers are
|
||||
integrated with their respective IDE's (this would make boost
|
||||
almost impossible to use from that IDE), other platforms/compilers
|
||||
have a restricted command line length (mingw32 is a
|
||||
particular culprit), the command line in such cases could
|
||||
easily become longer than the maximum permitted.</p>
|
||||
</blockquote>
|
||||
|
||||
<h3>Header include mechanism reflects library name</h3>
|
||||
|
||||
<blockquote>
|
||||
<p>We currently use:</p>
|
||||
<p><code>#include <boost/something.hpp></code></p>
|
||||
<p>which immediately informs a casual browser of the code
|
||||
that something.hpp is a part of the boost library and
|
||||
separates it from:</p>
|
||||
<p><code>#include <rw/thread.h> // this is Rogue Wave
|
||||
library</code></p>
|
||||
<p><b>Rationale</b>: This has worked well up to now and
|
||||
should be continued.</p>
|
||||
<p><b>Implication</b>: The boost-root/boost/ directory must
|
||||
continue to exist (although there are possible arguments in
|
||||
favour of making it boost-root/include/boost).</p>
|
||||
</blockquote>
|
||||
|
||||
<h3>Libraries can have "non-end user" header files.</h3>
|
||||
|
||||
<blockquote>
|
||||
<p>There are several kinds of header that come into this
|
||||
category:</p>
|
||||
<blockquote>
|
||||
<p><b>Power user headers</b>: headers that should only be
|
||||
used by experts.</p>
|
||||
<p><b>Headers for library reuse</b>: these headers can be
|
||||
used by other boost libraries, but should not be used by
|
||||
end users.</p>
|
||||
<p><b>Domain specific headers</b>: large domain specific
|
||||
libraries may have a large number of headers that should
|
||||
not make it into the main boost-root/boost/ header
|
||||
directory (graph for example).</p>
|
||||
<p><b>Implementation headers</b>: libraries may have
|
||||
headers that contain implementation code, these headers
|
||||
should never be included by anything except other headers
|
||||
<i>in this library</i>.</p>
|
||||
</blockquote>
|
||||
<p><b>Implication: </b>the main header directory may contain
|
||||
sub-directories as follows:</p>
|
||||
<blockquote>
|
||||
<p>boost-root/boost/library-name/ for all non-end user
|
||||
headers, including domain specific headers.</p>
|
||||
<p>boost-root/boost/library-name/detail/ for all
|
||||
implementation detail headers.</p>
|
||||
</blockquote>
|
||||
</blockquote>
|
||||
|
||||
<h3>Libraries can be combined into domains</h3>
|
||||
|
||||
<blockquote>
|
||||
<p>For example we may want to combine multiple math-related
|
||||
libraries into a single "numeric" domain. In this
|
||||
case each library in the domain would have it's own directory
|
||||
under the domain name directory - for example headers for the
|
||||
rational library may end up in boost-root/boost/numeric/rational/.</p>
|
||||
<p><b>Rationale</b>: the aim here is to prevent the number of
|
||||
top level libraries growing to an unmanageable number, and to
|
||||
allow a logical group of libraries to be accessed with a
|
||||
single name (for cvs checkouts or for building part of boost).</p>
|
||||
</blockquote>
|
||||
|
||||
<h3>Root directory name reflects boost version</h3>
|
||||
|
||||
<blockquote>
|
||||
<p>That is the name of the root directory in the zip file
|
||||
reflects the boost version number "boost_1_1_9/"
|
||||
etc, subsequent directories - like the boost header file
|
||||
directory - then split off from this.</p>
|
||||
<p><b>Rationale: </b>Allows developers to have multiple
|
||||
versions coexisting on their machine within a single
|
||||
directory structure, developers can switch between versions
|
||||
with a by changing their compilers include and library search
|
||||
paths only.</p>
|
||||
</blockquote>
|
||||
|
||||
<h3>Consistent handling of development code</h3>
|
||||
|
||||
<blockquote>
|
||||
<p>If there exists development or non-reviewed code in the
|
||||
cvs tree then it should not interfere with release code or
|
||||
exist in the same directory tree as the release code. Nor
|
||||
should development code appear in zip files.</p>
|
||||
<p><b>Rationale</b>: developers will typically work with
|
||||
either the latest release code, or the latest development
|
||||
code, they should be able to switch between them fairly
|
||||
easily.</p>
|
||||
<p><b>Rationale</b>: end users don't generally need to see
|
||||
development code, it unnecessarily duplicates what's already
|
||||
in the library and may lead to confusion as to what's release
|
||||
code and what's still in development.</p>
|
||||
<p><b>Implication</b>: There are a couple of ways of dealing
|
||||
with this.</p>
|
||||
<blockquote>
|
||||
<p><b>Method 1</b>: provide a subdirectory "<code>boost-root/development/library-name/</code>"
|
||||
that internally mirrors the directory structure of <code>boost-root/</code>,
|
||||
to contain development code for library "library-name".
|
||||
This has the advantage of being easy to work with, but
|
||||
requires setting multiple include and library search
|
||||
paths, it also complicates multiple development versions
|
||||
of the same library (for example multiple ports to new
|
||||
platforms may proceed in parallel).</p>
|
||||
<p><b>Method 2</b>: provide a separate top-level CVS
|
||||
directory for development code, development code could
|
||||
then be checked out with "<code>cvs checkout
|
||||
development"</code> instead of "<code>cvs
|
||||
checkout boost"</code>, otherwise this method is the
|
||||
same as Method 1 above, and has the same pros and cons.</p>
|
||||
<p><b>Method 3</b>: use a cvs branch for development work.
|
||||
This allows multiple development efforts to proceed in
|
||||
parallel, but may be harder to work with and keep in
|
||||
synch with the main branch.</p>
|
||||
</blockquote>
|
||||
<p>Ideally<b> </b>I see no reason why either method 1 or 2
|
||||
can't coexist with method 3, depending which method is easier
|
||||
for the task in hand. Personally I prefer (2) to (1), but
|
||||
that's just personal preference.</p>
|
||||
</blockquote>
|
||||
|
||||
<h3>Mandatory Source code is centrally located</h3>
|
||||
|
||||
<blockquote>
|
||||
<p>That is that there is some central directory (let's call
|
||||
it boost-root/src/) that contains all mandatory source files
|
||||
for a particular library in its sub-directories: boost-root/src/library1/,
|
||||
boost-root/src/library2/ etc.</p>
|
||||
<p><b>Rationale: </b>This ensures that the source is easily
|
||||
discoverable by the user; for example if a user suspects that
|
||||
there may be a bug in library X, and decides to try and debug
|
||||
the problem, they may want to add all the source code for
|
||||
library X directly to their project to facilitate debugging.
|
||||
(I appreciate that the build process <i>may</i> provide
|
||||
debugging versions of the library, but it is still often
|
||||
easier to add the source direct to the IDE's project,
|
||||
depending upon how well the IDE handles debugging of external
|
||||
libraries).</p>
|
||||
<p><b>Rationale: </b>some IDE's have search paths for source
|
||||
files as well as headers etc, this structure shortens the
|
||||
paths to mandatory source files (this is more of a feature
|
||||
request than a requirement).</p>
|
||||
</blockquote>
|
||||
|
||||
<h3>Directories containing documentation contain an index.html
|
||||
file, and nothing but documentation</h3>
|
||||
|
||||
<blockquote>
|
||||
<p><b>Rationale</b>: Some file browsers (KFM for example)
|
||||
will automatically display documentation when they see either
|
||||
index.htm or index.html in the current directory. Any other
|
||||
files located in that directory effectively become "hidden"
|
||||
from the user. Whether this is an annoyance or a great
|
||||
feature depends upon your point of view. Separating
|
||||
documentation into it's own sub-directory solves this problem
|
||||
(it happens to make installation of the documentation easier
|
||||
as well).</p>
|
||||
<p><b>Footnote</b>: actually KFM is usually quite intelligent
|
||||
about displaying documentation, however it does sometimes get
|
||||
it wrong.</p>
|
||||
</blockquote>
|
||||
|
||||
<h3>Boost supports an integrated build process</h3>
|
||||
|
||||
<blockquote>
|
||||
<p><b>Rationale</b>: Currently most boost libraries are
|
||||
"headers only", those that are not have their own
|
||||
build processes or none at all. This is confusing for the end
|
||||
user, especially as boost is likely to get much larger.</p>
|
||||
</blockquote>
|
||||
|
||||
<h3>Boost supports building of separate sub-libraries</h3>
|
||||
|
||||
<blockquote>
|
||||
<p><b>Rationale</b>: Building boost as a single monolithic
|
||||
library is likely to put end users off - especially as boost
|
||||
grows in size - few users will use all of boost in a single
|
||||
project (even if they use all of it at some time or another).</p>
|
||||
<p><b>Implication</b>: Build each boost library separately
|
||||
using a consistent naming scheme incorporating the library
|
||||
name and the compiler name: libboost_timer_gcc.so, libboost_regex_gcc.so,
|
||||
lib_boost_thread_gcc.so etc. Provide a monolithic version of
|
||||
the library as an option for those that want a simple life (this
|
||||
is mainly more appropriate for static libraries where unused
|
||||
library code doesn't make it into the executable).</p>
|
||||
</blockquote>
|
||||
|
||||
<h3>Boost supports multiple compiler build options.</h3>
|
||||
|
||||
<blockquote>
|
||||
<p><b>Rationale</b>: some compilers ship with multiple run-time
|
||||
libraries. For example the Borland C++ compiler comes with 6
|
||||
different runtimes, any third party libraries must be built
|
||||
with the same runtime options as the executable to which it
|
||||
will be linked, failure to observe this rule leads to hard to
|
||||
track down runtime crashes.</p>
|
||||
<p><b>Implication</b>: boost libraries must each be built
|
||||
multiple times with the same runtime variants that the
|
||||
compiler ships with. As before name mangling separates the
|
||||
variants: </p>
|
||||
</blockquote>
|
||||
|
||||
<pre> boost_regex_bc55_cw.lib
|
||||
boost_regex_bc55_cwi.lib
|
||||
boost_regex_bc55_cwi.dll
|
||||
boost_regex_bc55_cwm.lib
|
||||
boost_regex_bc55_cwmi.lib
|
||||
boost_regex_bc55_cwmi.dll
|
||||
boost_regex_bc55_cp.lib
|
||||
boost_regex_bc55_cpi.lib
|
||||
boost_regex_bc55_cpi.dll</pre>
|
||||
|
||||
<blockquote>
|
||||
<p>(for non-Borland users the suffixes chosen here reflect
|
||||
the names of Borland's own runtime libraries).</p>
|
||||
</blockquote>
|
||||
|
||||
<h3>Boost's build system uses the minimal amount of meta-data
|
||||
required.</h3>
|
||||
|
||||
<blockquote>
|
||||
<p><b>Rationale</b>: some meta-data is likely to be required,
|
||||
but to reduce maintenance requirements this should be as
|
||||
small as possible. Generally speaking the smaller the meta-data
|
||||
requirement the more likely it is that the build system is in
|
||||
synch with the library. The worst case would be hand-crafted
|
||||
makefiles (hard to maintain), the best case no meta-data at
|
||||
all; for example the directory structure describes the
|
||||
library well enough that makefiles (or their equivalent) can
|
||||
be automatically generated.</p>
|
||||
</blockquote>
|
||||
|
||||
<h3>Boost supports installation to a central location</h3>
|
||||
|
||||
<blockquote>
|
||||
<p><b>Rationale</b>: most unix variants more or less require
|
||||
an install step before using third party libraries, this also
|
||||
allows network installs (for multiple compilers and/or
|
||||
platforms if required), from a single source tree.</p>
|
||||
</blockquote>
|
||||
|
||||
<blockquote>
|
||||
<p><b>Implication</b>: Keep the boost directory structure as
|
||||
close as possible to the install structure to simplify the
|
||||
installation process (strictly speaking this is not an
|
||||
absolute requirement, but cross-platform installation is hard
|
||||
enough with making it any harder than it needs to be). The
|
||||
easiest way is to keep the documentation/header/build trees
|
||||
separate.</p>
|
||||
</blockquote>
|
||||
|
||||
<h3>The boost directory structure should be "optimally
|
||||
branched"</h3>
|
||||
|
||||
<blockquote>
|
||||
<p>This is a nebulous requirement that is based as much on
|
||||
personal preference as anything else.</p>
|
||||
<p><b>Rationale</b>: the directory structure is more "discoverable"
|
||||
if it branches consistently - that is with no directories
|
||||
with a massive number of entries.</p>
|
||||
<p><b>Implication</b>: where appropriate combine related
|
||||
libraries into domains.</p>
|
||||
<p><b>Implication</b>: avoid directories with a single sub-directory
|
||||
entry (redundancy).</p>
|
||||
</blockquote>
|
||||
|
||||
<h2 align="center">Proposed tools to aid boost management (build
|
||||
system)</h2>
|
||||
|
||||
<p>While writing the requirements above one theme kept
|
||||
reoccurring; that of interdependency of boost libraries, and the
|
||||
need for an automated tool to deal with this problem. In fact
|
||||
from a code-reuse point of view, we need a library that describes
|
||||
the boost library and determines library dependencies that can
|
||||
then be reused in multiple tools. In my view the gains in ease of
|
||||
management, and automatic generation of makefiles etc, means that
|
||||
these tools should be developed regardless of the actual
|
||||
directory structure chosen (although the code will probably be
|
||||
dependent upon the directory structure chosen).</p>
|
||||
|
||||
<h3>Dependency library</h3>
|
||||
|
||||
<blockquote>
|
||||
<p>This library would define two types:</p>
|
||||
<p><b>Library</b>: defines the files that belong to a
|
||||
particular library, plus header file dependencies and a list
|
||||
of binary dependencies to other boost libraries.</p>
|
||||
<p><b>Libraries</b>: a collection of Library objects, also
|
||||
maintains a database of which header belongs to which library
|
||||
(used to calculate binary dependencies).</p>
|
||||
<p>As far as is possible, these types should be able to load
|
||||
themselves directly from the boost directory structure, with
|
||||
only a minimal amount of meta-data used to describe the
|
||||
unusual cases.</p>
|
||||
</blockquote>
|
||||
|
||||
<h3>Paths library</h3>
|
||||
|
||||
<p>In order for the dependency library to do it's job it is
|
||||
necessary to iterate over a directory structure, join and split
|
||||
path names, and convert path names to/from a platform specific
|
||||
format. For example to insert relative-paths into makefiles which
|
||||
may be used on platforms other than the one on which the makefile
|
||||
is generated. Some, but by no means all, of this functionality is
|
||||
already covered by Dietmar Kühl's dir_it library.</p>
|
||||
|
||||
<h3>Automatic alias generation</h3>
|
||||
|
||||
<p>This is a short program that just iterates through a Libraries
|
||||
collection and prints out the dependencies, so that the result
|
||||
can be cut and pasted into the cvs modules file.</p>
|
||||
|
||||
<h3>Boost distiller</h3>
|
||||
|
||||
<p>This is almost the same program as the alias generator, but
|
||||
copies files to a new location instead of printing them out. Used
|
||||
to "distil" out a subset of the boost library (including
|
||||
dependencies). This can be used to: split boost into multiple (domain
|
||||
specific) zip files for easier download, or split out that subset
|
||||
of boost that is being used by a particular project (for
|
||||
integration with the project without getting the whole of boost).</p>
|
||||
|
||||
<h3>Build system</h3>
|
||||
|
||||
<p>By combining the description of the boost library contained in
|
||||
a Libraries object with a description of the compiler/platform in
|
||||
use, it is possible to do one of two things: directly build the
|
||||
library, or output compiler/platform specific makefiles for
|
||||
distribution with boost. For brevity I'm going to skip over a
|
||||
description of this here - my pencil and paper sketch has a list
|
||||
of around 14 points of variation between compilers, and another
|
||||
list of 7 options for each compiler configuration (release, debug,
|
||||
static, dynamic etc). Probably even this fairly long list is not
|
||||
complete.</p>
|
||||
|
||||
<p>I'm assuming that the build system will probably output
|
||||
makefiles in the first instance; apart from anything else, most
|
||||
compilers come with some kind of make, using this avoids the need
|
||||
for the end user to have to build/install any tools that do not
|
||||
ship with their compiler. Here I'm assuming that the boost
|
||||
library maintainers periodically generate the makefiles, and then
|
||||
ship them with the library.</p>
|
||||
|
||||
<h2 align="center">The directory structure</h2>
|
||||
|
||||
<table border="0" cellpadding="7" cellspacing="1" width="100%">
|
||||
<tr>
|
||||
<td valign="top" width="6%"> </td>
|
||||
<td valign="top" width="44%" bgcolor="#008080">Directory</td>
|
||||
<td valign="top" width="43%" bgcolor="#008080">Description</td>
|
||||
<td valign="top" width="7%"> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top" width="6%"> </td>
|
||||
<td valign="top" width="44%" bgcolor="#C0C0C0">Boost-root/boost/</td>
|
||||
<td valign="top" width="43%" bgcolor="#C0C0C0">All entry
|
||||
point boost headers, mainly these should be called "library-name.hpp"</td>
|
||||
<td valign="top" width="7%"> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top" width="6%"> </td>
|
||||
<td valign="top" width="44%" bgcolor="#C0C0C0">Boost-root/boost/library-name/</td>
|
||||
<td valign="top" width="43%" bgcolor="#C0C0C0">All domain
|
||||
specific headers, all "expert-user" non-entry
|
||||
point headers.</td>
|
||||
<td valign="top" width="7%"> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top" width="6%"> </td>
|
||||
<td valign="top" width="44%" bgcolor="#C0C0C0">Boost-root/boost/library-name/detail/</td>
|
||||
<td valign="top" width="43%" bgcolor="#C0C0C0">All
|
||||
implementation private headers.</td>
|
||||
<td valign="top" width="7%"> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top" width="6%"> </td>
|
||||
<td valign="top" width="44%" bgcolor="#C0C0C0">Boost-root/src/library-name/</td>
|
||||
<td valign="top" width="43%" bgcolor="#C0C0C0">All
|
||||
mandatory source files.</td>
|
||||
<td valign="top" width="7%"> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top" width="6%"> </td>
|
||||
<td valign="top" width="44%" bgcolor="#C0C0C0">Boost-root/src/library-name/config/</td>
|
||||
<td valign="top" width="43%" bgcolor="#C0C0C0">Any
|
||||
private configuration code (for example autoconf scripts),
|
||||
if these grow then we could move to an integrated
|
||||
configure system in Boost-root/config/ but that isn't
|
||||
currently necessary.</td>
|
||||
<td valign="top" width="7%"> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top" width="6%"> </td>
|
||||
<td valign="top" width="44%" bgcolor="#C0C0C0">Boost-root/src/library-name/build/</td>
|
||||
<td valign="top" width="43%" bgcolor="#C0C0C0">Temporary
|
||||
location for private build systems, until the boost-wide
|
||||
integrated build comes on line.</td>
|
||||
<td valign="top" width="7%"> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top" width="6%"> </td>
|
||||
<td valign="top" width="44%" bgcolor="#C0C0C0">Boost-root/docs/</td>
|
||||
<td valign="top" width="43%" bgcolor="#C0C0C0">All common
|
||||
documentation.</td>
|
||||
<td valign="top" width="7%"> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top" width="6%"> </td>
|
||||
<td valign="top" width="44%" bgcolor="#C0C0C0">Boost-root/docs/library-name/</td>
|
||||
<td valign="top" width="43%" bgcolor="#C0C0C0">All
|
||||
documentation for "library-name"; must include
|
||||
an index.htm file.</td>
|
||||
<td valign="top" width="7%"> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td valign="top" bgcolor="#C0C0C0">Boost-root/licence</td>
|
||||
<td bgcolor="#C0C0C0">A "generic" boost licence
|
||||
that describes the minimal guarantees made by all boost
|
||||
libraries (free for commercial use etc), with sub-directories
|
||||
for those boost libraries that have their own licences (currently
|
||||
just regex and graph, but this number is likely to grow).</td>
|
||||
<td> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top" width="6%"> </td>
|
||||
<td valign="top" width="44%" bgcolor="#C0C0C0">Boost-root/tests/library-name/</td>
|
||||
<td valign="top" width="43%" bgcolor="#C0C0C0">All test
|
||||
programs for "library-name". These may be
|
||||
either: a single (multi-file) test program, multiple
|
||||
single file test programs, or multiple sub-directories (one
|
||||
for each test program).</td>
|
||||
<td valign="top" width="7%"> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top" width="6%"> </td>
|
||||
<td valign="top" width="44%" bgcolor="#C0C0C0">Boost-root/examples/library-name/</td>
|
||||
<td valign="top" width="43%" bgcolor="#C0C0C0">All
|
||||
example programs for "library-name". These may
|
||||
be either: a single (multi-file) example program,
|
||||
multiple single file example programs, or multiple sub-directories
|
||||
(one for each example program).</td>
|
||||
<td valign="top" width="7%"> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top" width="6%"> </td>
|
||||
<td valign="top" width="44%" bgcolor="#C0C0C0">Boost-root/tools/tool-name/</td>
|
||||
<td valign="top" width="43%" bgcolor="#C0C0C0">Contains
|
||||
all files required to build and use the specified tool (makefile
|
||||
generators etc).</td>
|
||||
<td valign="top" width="7%"> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top" width="6%"> </td>
|
||||
<td valign="top" width="44%" bgcolor="#C0C0C0">Boost-root/build/</td>
|
||||
<td valign="top" width="43%" bgcolor="#C0C0C0">The boost
|
||||
build system. Consists of a collection of makefiles (one
|
||||
for each supported compiler), plus subdirectories: libs/
|
||||
for built libraries, bin/ for built dll's (win32 only)
|
||||
and obj/ for object files.</td>
|
||||
<td valign="top" width="7%"> </td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p>There are a couple of myths surrounding this structure that
|
||||
need exploding:</p>
|
||||
|
||||
<h4>It is hard to check in new libraries to the cvs repository</h4>
|
||||
|
||||
<p>Not true: if the submission arrives as a zip file containing
|
||||
the directory structure described above, then the command:</p>
|
||||
|
||||
<p><code>cvs import boost library-name library-name-sub</code></p>
|
||||
|
||||
<p>will import the whole of the <i>current</i> directory tree and
|
||||
"intermingle" it with the existing boost tree in the
|
||||
repository.</p>
|
||||
|
||||
<p>There is one caveat to this however: if the imported source
|
||||
contains some files that were already in the boost directory tree
|
||||
(probably not a common situation), then an additional merge and
|
||||
resolve conflicts step arises:</p>
|
||||
|
||||
<p>On the main branch working copy:</p>
|
||||
|
||||
<p><code>cvs checkout -jlibrary-name-sub boost</code></p>
|
||||
|
||||
<p>Resolve any conflicts, and then:</p>
|
||||
|
||||
<p><code>cvs commit</code></p>
|
||||
|
||||
<p>The latter two steps should not be necessary in most cases,
|
||||
and occur whatever directory structure is used (it is probably
|
||||
easier in most cases to resolve such conflicts manually before
|
||||
importing the new sources).</p>
|
||||
|
||||
<h4>It is hard to checkout or to commit individual boost
|
||||
libraries.</h4>
|
||||
|
||||
<p>By using cvs aliases (defined in the modules file) this
|
||||
situation does not arise, just specify the module/alias name when
|
||||
performing a checkout/commit.</p>
|
||||
|
||||
<h2 align="center">Migrating to the new structure</h2>
|
||||
|
||||
<p>This is probably the hardest and most painful part of the
|
||||
whole process. I'm going to suggest a migration method as follows:</p>
|
||||
|
||||
<ol>
|
||||
<li>Instigate a moratorium on cvs commits.</li>
|
||||
<li>Copy the files to the new structure and commit the
|
||||
changes, leaving the boost-root/libs/ directory in place
|
||||
for now.</li>
|
||||
<li>Fix html links, and documentation descriptions of file
|
||||
locations.</li>
|
||||
<li>Fix any library specific scripts/makefiles.</li>
|
||||
<li>Publish the new structure (as a zip-file beta
|
||||
distribution) and ask boost users/authors to check that
|
||||
everything looks OK.</li>
|
||||
<li>Delete the boost-root/libs/ directory (actually this is
|
||||
quite hard, as cvs has no method for removing whole
|
||||
directory trees).</li>
|
||||
<li>Lift the moratorium on changes.</li>
|
||||
<li>Publish the next boost revision with the new structure.</li>
|
||||
</ol>
|
||||
|
||||
<p>The whole process described above is quite likely to take 1-2
|
||||
weeks, during which no changes can be committed; this is going to
|
||||
require a fair amount of co-ordination between developers (actually
|
||||
this applies to any major change to the directory structure,
|
||||
irrespective of what the change is).</p>
|
||||
|
||||
<p>You will note that I haven't mentioned a time scale for the
|
||||
associated tools that I have suggested, probably these will need
|
||||
to be developed after the directory structure changes - although
|
||||
I believe it is possible to develop a minimal subset (the library
|
||||
description and alias generator) before making the changes if
|
||||
that is required.</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p>There were a couple of other directory structures that were
|
||||
evaluated while preparing this document:</p>
|
||||
|
||||
<p><i>The "half way house structure":</i></p>
|
||||
|
||||
<p>This is the same as the current structure, but moves mandatory
|
||||
source files to boost-root/src/libname. This is easier to migrate
|
||||
to from the current structure, but was felt to be neither one
|
||||
thing nor the other.</p>
|
||||
|
||||
<p><i>The "skinny root structure":</i></p>
|
||||
|
||||
<p>This was proposed by John David, and Lois Goldthwaite, and
|
||||
moves the contents of the current boost-root/libs/ directory into
|
||||
boost-root/boost/. My main objection to this proposal is that it
|
||||
is less "discoverable" than the one presented here - my
|
||||
immediate reaction was "where has everything gone" - I
|
||||
also dislike mixing headers and non-headers in the same tree.
|
||||
However I'm prepared to accept that this could just be due to
|
||||
personal bias.</p>
|
||||
|
||||
<h2 align="center">Acknowledgements</h2>
|
||||
|
||||
<p>The following people have had their ideas reused,
|
||||
reconstituted and reformulated :-)</p>
|
||||
|
||||
<p>Beman Dawes, Ed Brey, Walter E. Brown, John (EBo) David, Jeff
|
||||
Garland, Lois Goldthwaite, Jens Maurer, Jeff Squyres, Gary Powell
|
||||
and Daryle Walker.</p>
|
||||
|
||||
<p>
|
||||
<hr>
|
||||
<p>
|
||||
|
||||
<h2 align="center">An Alternative Directory Structure</h2>
|
||||
|
||||
<p align="center">By Jens Maurer</p>
|
||||
|
||||
I favor the following structure, which puts different emphasis on the
|
||||
some of the requirements.
|
||||
|
||||
<p>
|
||||
|
||||
<table border="1">
|
||||
|
||||
<tr>
|
||||
<th>Directory</th>
|
||||
<th>Description</th>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Boost-root/include/boost/</td>
|
||||
<td>All entry-point boost headers, mainly these should be called
|
||||
"library-name.hpp".</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Boost-root/include/boost/.../</td>
|
||||
<td>Domain-specific subdirectory; the "..." can be empty or
|
||||
arbitrarily nested while observing the "optimally branched"
|
||||
requirement.</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Boost-root/include/boost/.../library-name/</td>
|
||||
<td>All domain-specific headers, all "expert-user" non-entry point
|
||||
headers.</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Boost-root/include/boost/.../library-name/detail/</td>
|
||||
<td>All implementation private headers.</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Boost-root/libs/.../</td>
|
||||
<td>Main directory for a given subdomain; the "..." can be empty or
|
||||
arbitrarily nested while observing the "optimally branched"
|
||||
requirement. The "..." must correspond to some "..." in the header
|
||||
tree. The directory should contain a "index.html" which links to all
|
||||
libraries and subdomains contained.</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Boost-root/libs/.../library-name/</td>
|
||||
<td>Main directory for a given library.</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Boost-root/libs/.../library-name/src/</td>
|
||||
<td>All mandatory source files for the library.</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Boost-root/libs/.../library-name/build/</td>
|
||||
<td>Temporary location for private build system, until the boost-wide
|
||||
integrated build becomes available.</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Boost-root/libs/.../library-name/config/</td>
|
||||
<td>Any private configuration code (for example, autoconf
|
||||
scripts).</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Boost-root/libs/.../library-name/doc/</td>
|
||||
<td>All documentation for the library.</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Boost-root/libs/.../library-name/test/</td>
|
||||
<td>All regression tests for the library, suitable for the regression
|
||||
test suite. Due to test execution time constraints, not all of the tests
|
||||
may actually be added to "regression.cfg".</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Boost-root/libs/.../library-name/example/</td>
|
||||
<td>All example programs for "library-name". These may be either: a
|
||||
single (multi-file) example program, multiple single file example
|
||||
programs, or multiple sub-directories (one for each example
|
||||
program).</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Boost-root/tools/tool-name/</td>
|
||||
<td>Contains all files required to build and use the specified tool
|
||||
(makefile generators etc).</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Boost-root/build</td>
|
||||
<td>The boost build system (user front-end; tools go in the "tools"
|
||||
hierarchy). Details still hazy.</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Boost-root/more/license.html</td>
|
||||
<td>A "generic" boost license that describes the minimal guarantee
|
||||
provided by all boost libraries. This should get a prominent link on
|
||||
the main boost page.</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
|
||||
<p>
|
||||
Note that the "include" path component contains only one subdirectory
|
||||
"boost" and thus violates the "optimally branched" requirement. It
|
||||
helps with discoverability, though, because people know what to expect
|
||||
under any directory named "include", i.e. header files.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,235 +1,372 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta name="generator" content=
|
||||
"Microsoft FrontPage 5.0">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
||||
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
|
||||
<meta name="ProgId" content="FrontPage.Editor.Document">
|
||||
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
||||
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
|
||||
<meta name="ProgId" content="FrontPage.Editor.Document">
|
||||
<title>Boost C++ Libraries</title>
|
||||
</head>
|
||||
<title>Boost C++ Libraries</title>
|
||||
</head>
|
||||
|
||||
<body bgcolor="#FFFFFF" text="#000000">
|
||||
<h1>
|
||||
<img src="c++boost.gif" alt="c++boost.gif (8819 bytes)" align="middle" width="277" height="86">
|
||||
Welcome to Boost.org!</h1>
|
||||
<body bgcolor="#FFFFFF" text="#000000">
|
||||
<h1><img src="c++boost.gif" alt="c++boost.gif (8819 bytes)" align=
|
||||
"middle" width="277" height="86"> Welcome to Boost.org!</h1>
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<td>
|
||||
<table border="3" cellpadding="5" align="left">
|
||||
<tr>
|
||||
<td>
|
||||
<p><b>Libraries<br>
|
||||
</b>• <a href="libs/libraries.htm">Documentation</a><br>
|
||||
• <a href="more/download.html">Download</a> <br>
|
||||
• <a href="more/download.html#Installation">Install</a> & <a href="tools/build/index.html">Build<br>
|
||||
</a>• <a href="status/compiler_status.html">Compiler Status</a></p>
|
||||
<p>
|
||||
<b>Mailing Lists<br>
|
||||
and newsgroups</b><br>
|
||||
• <a href="more/mailing_lists.htm#main">Boost (Developers)</a><br>
|
||||
• <a href="more/mailing_lists.htm#users">Boost Users</a><br>
|
||||
• <a href="more/mailing_lists.htm#announce">Announcements</a><br>
|
||||
• <a href="more/discussion_policy.htm">Discussion Policy</a></p>
|
||||
<p>
|
||||
<b>Support<br>
|
||||
</b>
|
||||
• <a href="more/faq.htm">FAQ</a><br>
|
||||
• <a href="http://sourceforge.net/tracker/?group_id=7586">Request
|
||||
Support</a><br>
|
||||
• <a href="more/bugs.htm">Report Bugs</a><br>
|
||||
• <a href="more/requesting_new_features.htm">Suggest Features</a><br>
|
||||
• <a href="more/links.htm#Commercial Support">Commercial Support</a><br>
|
||||
• Also: <a href="more/mailing_lists.htm">Mailing Lists</a></p>
|
||||
<p><b>About<br>
|
||||
</b>• <a href="more/formal_review_process.htm">Formal Reviews</a><b><br>
|
||||
</b>• <a href="more/formal_review_schedule.html">Review Schedule<br>
|
||||
</a>• <a href="more/lib_guide.htm#Requirements">Requirements</a><br>
|
||||
• <a href="more/lib_guide.htm#Guidelines">Guidelines</a><br>
|
||||
• <a href="more/submission_process.htm">Submissions</a></p>
|
||||
<p><b>Other Resources<br>
|
||||
</b>• <a href="http://www.yahoogroups.com/files/boost/">Files</a>
|
||||
(members only)<br>
|
||||
• <a href="more/download.html#CVS">Main CVS</a><br>
|
||||
• <a href="more/mailing_lists.htm#sandbox">Sandbox CVS</a><br>
|
||||
• <a href="people/people.htm">People</a><br>
|
||||
• <a href="more/moderators.html">Moderators</a><br>
|
||||
• <a href="more/index.htm">More Boost...</a><br>
|
||||
• <a href="more/links.htm#cpp">More C++...</a></p>
|
||||
<p>
|
||||
<b>Unofficial<br>
|
||||
</b>
|
||||
• <a href="http://www.crystalclearsoftware.com/cgi-bin/boost_wiki/wiki.pl">Wiki</a><br>
|
||||
• <a href="http://boost.c-view.org">Chinese mirror</a><br>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<table>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>
|
||||
<p>The Boost web site provides free peer-reviewed portable C++ source libraries.
|
||||
The emphasis is on libraries which work well with the C++ Standard
|
||||
Library. One goal is to
|
||||
establish "existing practice" and provide reference implementations so
|
||||
that the Boost libraries are suitable for eventual standardization. Some of the
|
||||
libraries have already been proposed for inclusion in the <a href="http://anubis.dkuug.dk/jtc1/sc22/wg21/">C++
|
||||
Standards Committee</a>'s upcoming C++
|
||||
Standard Library Technical Report.</p>
|
||||
<p> Although Boost was begun by members of the C++
|
||||
Standards Committee Library Working Group, membership has expanded to include
|
||||
nearly two thousand members of the C++ community at large.
|
||||
</p>
|
||||
<h2><a name="Membership">Membership</a></h2>
|
||||
<p>If you are interested in becoming a member of Boost, please do so by joining our main
|
||||
developers mailing list. Discussions include both technical and site-related issues, and
|
||||
members are encouraged to participate in
|
||||
formal reviews of proposed libraries. There is also a users mailing list.</p>
|
||||
<table>
|
||||
<tr>
|
||||
<td>
|
||||
<table border="3" cellpadding="5" align="left">
|
||||
<tr>
|
||||
<td>
|
||||
<p><b>Libraries<br>
|
||||
</b> • <a href=
|
||||
"libs/libraries.htm">Documentation</a><br>
|
||||
• <a href="more/download.html">Download</a><br>
|
||||
• <a href=
|
||||
"more/download.html#Installation">Install</a> & <a href=
|
||||
"tools/build/index.html">Build<br>
|
||||
</a> • <a href=
|
||||
"status/compiler_status.html">Compiler Status</a></p>
|
||||
|
||||
<p>Both the main Boost developers list and the users list are also accessible as
|
||||
<a href="more/mailing_lists.htm">newsgroups</a>.</p>
|
||||
<p><b>Mailing Lists<br>
|
||||
and newsgroups</b><br>
|
||||
• <a href="more/mailing_lists.htm#main">Boost
|
||||
(Developers)</a><br>
|
||||
• <a href="more/mailing_lists.htm#users">Boost
|
||||
Users</a><br>
|
||||
• <a href=
|
||||
"more/mailing_lists.htm#announce">Announcements</a><br>
|
||||
• <a href="more/discussion_policy.htm">Discussion
|
||||
Policy</a></p>
|
||||
|
||||
<h2>Search Boost</h2>
|
||||
<p><b>Support<br>
|
||||
</b> • <a href="more/faq.htm">FAQ</a><br>
|
||||
• <a href=
|
||||
"http://sourceforge.net/tracker/?group_id=7586">Request
|
||||
Support</a><br>
|
||||
• <a href="more/bugs.htm">Report Bugs</a><br>
|
||||
• <a href=
|
||||
"more/requesting_new_features.htm">Suggest Features</a><br>
|
||||
• <a href=
|
||||
"more/links.htm#Commercial%20Support">Commercial
|
||||
Support</a><br>
|
||||
• Also: <a href="more/mailing_lists.htm">Mailing
|
||||
Lists</a></p>
|
||||
|
||||
<!-- Search Google -->
|
||||
<center>
|
||||
<FORM method=GET action=http://www.google.com/custom>
|
||||
<TABLE bgcolor=#FFFFFF cellspacing=0 border=0>
|
||||
<tr valign=top><td>
|
||||
<A HREF=http://www.google.com/search>
|
||||
<IMG SRC=http://www.google.com/logos/Logo_40wht.gif border=0 ALT=Google align=middle width="128" height="53"></A>
|
||||
</td>
|
||||
<td>
|
||||
<p><b>About<br>
|
||||
</b> • <a href=
|
||||
"more/formal_review_process.htm">Formal Reviews</a><b><br>
|
||||
</b> • <a href=
|
||||
"more/formal_review_schedule.html">Review Schedule<br>
|
||||
</a> • <a href=
|
||||
"more/lib_guide.htm#Requirements">Requirements</a><br>
|
||||
• <a href=
|
||||
"more/lib_guide.htm#Guidelines">Guidelines</a><br>
|
||||
• <a href=
|
||||
"more/submission_process.htm">Submissions</a></p>
|
||||
|
||||
<INPUT TYPE=text name=q size=31 maxlength=255 value="">
|
||||
<INPUT type=submit name=sa VALUE="Google Search">
|
||||
<p><b>Other Resources<br>
|
||||
</b> • <a href=
|
||||
"http://www.yahoogroups.com/files/boost/">Files</a> (members
|
||||
only)<br>
|
||||
• <a href="more/download.html#CVS">Main
|
||||
CVS</a><br>
|
||||
• <a href="more/mailing_lists.htm#sandbox">Sandbox
|
||||
CVS</a><br>
|
||||
• <a href="people/people.htm">People</a><br>
|
||||
• <a href=
|
||||
"more/moderators.html">Moderators</a><br>
|
||||
• <a href="more/index.htm">More Boost...</a><br>
|
||||
• <a href="more/links.htm#cpp">More C++...</a></p>
|
||||
|
||||
<INPUT type=hidden name=cof VALUE="LW:277;L:http://www.boost.org/c++boost.gif;LH:86;AH:center;GL:0;S:http://www.boost.org;AWFID:9b83d16ce652ed5a;">
|
||||
<font face=arial,sans-serif size=-1>
|
||||
<input type=hidden name=domains value="lists.boost.org;www.boost.org">
|
||||
<br>
|
||||
<input type=radio name=sitesearch value="www.boost.org" checked> Search www.boost.org
|
||||
<input type=radio name=sitesearch value="lists.boost.org"> Search lists.boost.org
|
||||
</font>
|
||||
<br>
|
||||
</td>
|
||||
</tr>
|
||||
</TABLE>
|
||||
</FORM>
|
||||
</center>
|
||||
<!-- Search Google -->
|
||||
<p><b>Unofficial<br>
|
||||
</b> • <a href=
|
||||
"http://www.crystalclearsoftware.com/cgi-bin/boost_wiki/wiki.pl">
|
||||
Wiki</a><br>
|
||||
• <a href="http://boost.c-view.org">Chinese
|
||||
mirror</a><br>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<h2><a name="Latest News">Latest News</a></h2>
|
||||
<p>???, 2002 - Version 1.29.0</p>
|
||||
<ul>
|
||||
<li><a href="libs/date_time/doc/index.html">Date-Time Library</a> added -
|
||||
Dates, times, leap seconds, infinity, and more, from Jeff Garland.</li>
|
||||
<li><a href="libs/dynamic_bitset/dynamic_bitset.html">Dynamic Bitset</a>
|
||||
added - A runtime sized version of the <tt>std::bitset</tt> class from Jeremy
|
||||
Siek and Chuck Allison.</li>
|
||||
<li><a href="libs/format/index.htm">Format Library</a>
|
||||
added - Type-safe 'printf-like' format operations, from Samuel Krempp.</li>
|
||||
<li><a href="libs/multi_array/doc/index.html">Multi-array Library</a> added -
|
||||
Multidimensional containers and adaptors for arrays of contiguous data, from
|
||||
Ron Garcia.</li>
|
||||
<li><a href="libs/signals/doc/index.html">Signals Library</a> added - Managed signals & slots callback implementation, from Doug Gregor.</li>
|
||||
<li><a href="libs/numeric/ublas/doc/index.htm">uBLAS Library</a> added - Basic
|
||||
linear algebra for dense, packed and sparse matrices, from Joerg Walter and
|
||||
Mathias Koch.</li>
|
||||
<li><a href="libs/function/index.html">Function Library</a>: Major syntactic changes have been made. Some old syntax and little-used features have been deprecated (and will be removed shortly), and the syntax for the <code>boost::function</code> class template has been greatly improved on conforming compilers. Please see the <a href="libs/function/index.html#compatibility">compatibility note</a> for more information.</li>
|
||||
<li><a href="libs/preprocessor/index.html">Preprocessor Library</a>: major
|
||||
upgrade, from Paul Mensonides.</li>
|
||||
<li><a href="libs/test/doc/index.htm">Test Library</a>: major upgrade,
|
||||
including full unit test capabilities, from Gennadiy Rozental.</li>
|
||||
<table>
|
||||
<tr>
|
||||
<td> </td>
|
||||
|
||||
</ul>
|
||||
<p>May 15, 2002 - Version 1.28.0</p>
|
||||
<ul>
|
||||
<li>The Boost mailing lists are now also accessible as
|
||||
<a href="more/mailing_lists.htm#newsgroup">newsgroups</a>.<li>A powerful
|
||||
<a href="http://aspn.activestate.com/ASPN/Mail/Archives/boost/">mailing list
|
||||
archive</a> has been contributed by the
|
||||
<a href="http://aspn.activestate.com/ASPN">ActiveState
|
||||
Programmer Network</a>.<li>
|
||||
<a href="libs/lambda/doc/index.html">Lambda Library</a> added, from Jaakko
|
||||
Järvi and Gary Powell. Define small unnamed function objects at the actual
|
||||
call site:<br>
|
||||
<br>
|
||||
<code> for_each(a.begin(), a.end(), std::cout << _1 << ' ');</code><br>
|
||||
<li><a href="libs/io/doc/ios_state.html">I/O State Saver Library added</a>
|
||||
- Save I/O state to prevent jumbled data, from Daryle Walker.<li><a href="libs/config/config.htm">Configuration Library</a>:
|
||||
User code should not use BOOST_NO_LIMITS.
|
||||
<li><a href="libs/random/index.html">Random Number Library</a>:
|
||||
Avoid compiler warnings</li>
|
||||
<li><a href="libs/smart_ptr/index.htm">Smart Pointers Library</a>: Added
|
||||
<a href="libs/smart_ptr/shared_ptr.htm#shared_polymorphic_cast">shared_polymorphic_cast</a>
|
||||
and
|
||||
<a href="libs/smart_ptr/shared_ptr.htm#shared_polymorphic_downcast">shared_polymorphic_downcast</a>.</li>
|
||||
<li><a href="libs/function/index.html">Function Library</a>: Now supports function objects with the unary <code>&</code> operator overloaded.</li>
|
||||
<li><a href="libs/utility/utility.htm">Utility Library</a>: Added <code>addressof()</code> function.</li>
|
||||
<li>The usual small fixes and tweaks.</li>
|
||||
</ul>
|
||||
<p>February 5, 2002 - Version 1.27.0</p>
|
||||
<ul>
|
||||
<li><a href="libs/python/doc/index.html">Python Library</a>: Scott Snyder contributed inplace operator support.</li>
|
||||
<li><a href="libs/integer/index.htm">Integer Library</a>: Daryle
|
||||
Walker contributed enhancements to the
|
||||
<a href="libs/integer/integer.htm">type selection templates</a>,
|
||||
and added new compile-time
|
||||
<a href="libs/integer/doc/integer_mask.html">bit mask</a>,
|
||||
<a href="libs/integer/doc/static_log2.html">binary logarithm</a>, and
|
||||
<a href="libs/integer/doc/static_min_max.html">extrema</a> templates.</li>
|
||||
<li><a href="libs/function/index.html">Function Library</a>: user may request that <code>boost::function</code>
|
||||
objects store a reference to a function object target instead of a copy, using
|
||||
<a href="libs/bind/ref.html"><code>ref</code></a>.
|
||||
Stateless objects are optimized so that they require no dynamic storage.</li>
|
||||
<li><a href="libs/math/quaternion/index.html">Quaternions</a>: added support for GCC 2.95.x.</li>
|
||||
<li><a href="libs/math/octonion/index.html">Octonions</a>: added support for GCC 2.95.x.</li>
|
||||
<li><a href="libs/smart_ptr/index.htm">Smart Pointers Library</a>: Peter Dimov contributed a new
|
||||
implementation that fixes some bugs and adds some features including
|
||||
<a href="libs/smart_ptr/compatibility.htm#threadsafe">thread safety</a> when manipulating the use count,
|
||||
<a href="libs/smart_ptr/shared_ptr.htm#constructors">custom delete functions</a>,
|
||||
a new <a href="libs/smart_ptr/weak_ptr.htm">weak_ptr</a>, and
|
||||
<a href="libs/smart_ptr/shared_ptr.htm#shared_static_cast">shared_static_cast</a>
|
||||
and
|
||||
<a href="libs/smart_ptr/shared_ptr.htm#shared_dynamic_cast">shared_dynamic_cast</a>.</li>
|
||||
<li><a href="libs/preprocessor/doc/index.htm">Preprocessor Library</a>:
|
||||
changed macro prefix from BOOST_PREPROCESSOR to BOOST_PP, added
|
||||
support for <a href="libs/preprocessor/doc/reference/list_adt.htm">list data structure</a> manipulation, added examples,
|
||||
made library ANSI C friendly, added generalized <a href="libs/preprocessor/doc/reference/for.htm">repetition</a>
|
||||
and <a href="libs/preprocessor/doc/reference/while.htm">iteration</a> primitives, improved reference
|
||||
manual.</li>
|
||||
<li><a href="libs/thread/doc/index.html">Threads Library:</a> Mac
|
||||
Carbon implementation contributed by Mac Murrett.</li>
|
||||
<li>Minor fixes to many libraries.</li>
|
||||
</ul>
|
||||
<p>November 30, 2001 - Version 1.26.0</p>
|
||||
<ul>
|
||||
<li><a href="libs/math/doc/common_factor.html">Common Factor Library</a>
|
||||
added. Greatest common divisor and least common multiple, from Daryle Walker.<li>
|
||||
<a href="libs/preprocessor/doc/index.htm">Preprocessor Library</a> added.
|
||||
Preprocessor metaprogramming tools including repetition and recursion, from
|
||||
Vesa Karvonen.<li><a href="libs/utility/iterator_adaptors.htm">Iterator Adaptor Library</a>:
|
||||
Added <a href="libs/utility/generator_iterator.htm">generator iterator</a>
|
||||
adaptor, from Jens Maurer.
|
||||
<li><a href="libs/random/index.html">Random Number Library</a>:
|
||||
Removed iterator interface. Fixed overflows in uniform_int<>. Both changes cause random number sequences to differ compared to previous boost releases.<li><a href="libs/utility/operators.htm">
|
||||
operators.hpp</a>: Improvements from Daryle and Helmut Ziesel<li>
|
||||
<a href="tools/build/index.html">Boost.Build:</a> Continuing improvements,
|
||||
including pre-built <a href="tools/build/index.html#Jam">Boost.Jam executables</a>.<li>Minor fixes to a number of other libraries.</li>
|
||||
</ul>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<td>
|
||||
<p>The Boost web site provides free peer-reviewed portable
|
||||
C++ source libraries. The emphasis is on libraries which work
|
||||
well with the C++ Standard Library. One goal is to establish
|
||||
"existing practice" and provide reference implementations so
|
||||
that the Boost libraries are suitable for eventual
|
||||
standardization. Some of the libraries have already been
|
||||
proposed for inclusion in the <a href=
|
||||
"http://anubis.dkuug.dk/jtc1/sc22/wg21/">C++ Standards
|
||||
Committee</a>'s upcoming C++ Standard Library Technical
|
||||
Report.</p>
|
||||
|
||||
<hr>
|
||||
<p>Revised
|
||||
<!--webbot bot="Timestamp" S-Type="EDITED" S-Format="%d %B, %Y" startspan -->16 September, 2002<!--webbot bot="Timestamp" endspan i-checksum="39342" --></p>
|
||||
<p>Although Boost was begun by members of the C++ Standards
|
||||
Committee Library Working Group, membership has expanded to
|
||||
include nearly two thousand members of the C++ community at
|
||||
large.</p>
|
||||
|
||||
</body>
|
||||
<h2><a name="Membership">Membership</a></h2>
|
||||
|
||||
<p>If you are interested in becoming a member of Boost,
|
||||
please do so by joining our main developers mailing list.
|
||||
Discussions include both technical and site-related issues,
|
||||
and members are encouraged to participate in formal reviews
|
||||
of proposed libraries. There is also a users mailing
|
||||
list.</p>
|
||||
|
||||
<p>Both the main Boost developers list and the users list are
|
||||
also accessible as <a href=
|
||||
"more/mailing_lists.htm">newsgroups</a>.</p>
|
||||
|
||||
<h2>Search Boost</h2>
|
||||
<!-- Search Google -->
|
||||
|
||||
<center>
|
||||
<form method="get" action="http://www.google.com/custom">
|
||||
<table bgcolor="#FFFFFF" cellspacing="0" border="0">
|
||||
<tr valign="top">
|
||||
<td><a href="http://www.google.com/search"><img src=
|
||||
"http://www.google.com/logos/Logo_40wht.gif" border=
|
||||
"0" alt="Google" align="middle" width="128" height=
|
||||
"53"></a></td>
|
||||
|
||||
<td><input type="text" name="q" size="31" maxlength=
|
||||
"255" value=""> <input type="submit" name="sa" value=
|
||||
"Google Search"> <input type="hidden" name="cof"
|
||||
value=
|
||||
"LW:277;L:http://www.boost.org/c++boost.gif;LH:86;AH:center;GL:0;S:http://www.boost.org;AWFID:9b83d16ce652ed5a;">
|
||||
<font face="arial,sans-serif" size="-1"><input type=
|
||||
"hidden" name="domains" value=
|
||||
"lists.boost.org;www.boost.org"><br>
|
||||
<input type="radio" name="sitesearch" value=
|
||||
"www.boost.org" checked> Search www.boost.org <input
|
||||
type="radio" name="sitesearch" value=
|
||||
"lists.boost.org"> Search lists.boost.org</font><br>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</center>
|
||||
<!-- Search Google -->
|
||||
|
||||
<h2><a name="Latest News">Latest News</a></h2>
|
||||
|
||||
<p>October 10, 2002 - Version 1.29.0</p>
|
||||
|
||||
<ul>
|
||||
<li><a href="libs/date_time/doc/index.html">Date-Time
|
||||
Library</a> added - Dates, times, leap seconds, infinity,
|
||||
and more, from Jeff Garland.</li>
|
||||
|
||||
<li><a href=
|
||||
"libs/dynamic_bitset/dynamic_bitset.html">Dynamic
|
||||
Bitset</a> added - A runtime sized version of the
|
||||
<tt>std::bitset</tt> class from Jeremy Siek and Chuck
|
||||
Allison.</li>
|
||||
|
||||
<li><a href="libs/format/index.htm">Format Library</a>
|
||||
added - Type-safe 'printf-like' format operations, from
|
||||
Samuel Krempp.</li>
|
||||
|
||||
<li><a href="libs/function/index.html">Function
|
||||
Library</a>: Major syntactic changes have been made. Some
|
||||
old syntax and little-used features have been deprecated
|
||||
(and will be removed shortly), and the syntax for the
|
||||
<code>boost::function</code> class template has been
|
||||
greatly improved on conforming compilers. Please see the <a
|
||||
href="libs/function/index.html#compatibility">compatibility
|
||||
note</a> for more information.</li>
|
||||
|
||||
<li><a href="libs/multi_array/doc/index.html">Multi-array
|
||||
Library</a> added - Multidimensional containers and
|
||||
adaptors for arrays of contiguous data, from Ron
|
||||
Garcia.</li>
|
||||
|
||||
<li><a href="libs/preprocessor/index.html">Preprocessor
|
||||
Library</a>: Major upgrade, from Paul Mensonides.</li>
|
||||
|
||||
<li><a href="libs/python/doc/index.html">Python
|
||||
Library</a> - Version 2 is released, from Dave
|
||||
Abrahams and others. This is a major rewrite which
|
||||
works on many more compilers and platforms, with a
|
||||
completely new interface and lots of new
|
||||
features. Boost.Python v2 requires Python 2.2 or
|
||||
later.</li>
|
||||
|
||||
<li><a href="libs/signals/doc/index.html">Signals
|
||||
Library</a> added - Managed signals & slots callback
|
||||
implementation, from Doug Gregor.</li>
|
||||
|
||||
<li><a href="libs/test/doc/index.htm">Test Library</a>:
|
||||
Major new version, including full unit test capabilities, from Gennadiy Rozental.</li>
|
||||
|
||||
<li><a href="libs/numeric/ublas/doc/index.htm">uBLAS
|
||||
Library</a> added - Basic linear algebra for dense, packed
|
||||
and sparse matrices, from Joerg Walter and Mathias
|
||||
Koch.</li>
|
||||
</ul>
|
||||
|
||||
<p>May 15, 2002 - Version 1.28.0</p>
|
||||
|
||||
<ul>
|
||||
<li>The Boost mailing lists are now also accessible as <a
|
||||
href=
|
||||
"more/mailing_lists.htm#newsgroup">newsgroups</a>.</li>
|
||||
|
||||
<li>A powerful <a href=
|
||||
"http://aspn.activestate.com/ASPN/Mail/Archives/boost/">mailing
|
||||
list archive</a> has been contributed by the <a href=
|
||||
"http://aspn.activestate.com/ASPN">ActiveState Programmer
|
||||
Network</a>.</li>
|
||||
|
||||
<li><a href="libs/lambda/doc/index.html">Lambda Library</a>
|
||||
added, from Jaakko Järvi and Gary Powell. Define small
|
||||
unnamed function objects at the actual call site:<br>
|
||||
<br>
|
||||
<code> for_each(a.begin(), a.end(),
|
||||
std::cout << _1 << ' ');</code><br>
|
||||
</li>
|
||||
|
||||
<li><a href="libs/io/doc/ios_state.html">I/O State Saver
|
||||
Library added</a> - Save I/O state to prevent jumbled data,
|
||||
from Daryle Walker.</li>
|
||||
|
||||
<li><a href="libs/config/config.htm">Configuration
|
||||
Library</a>: User code should not use BOOST_NO_LIMITS.</li>
|
||||
|
||||
<li><a href="libs/random/index.html">Random Number
|
||||
Library</a>: Avoid compiler warnings</li>
|
||||
|
||||
<li><a href="libs/smart_ptr/index.htm">Smart Pointers
|
||||
Library</a>: Added <a href=
|
||||
"libs/smart_ptr/shared_ptr.htm#shared_polymorphic_cast">shared_polymorphic_cast</a>
|
||||
and <a href=
|
||||
"libs/smart_ptr/shared_ptr.htm#shared_polymorphic_downcast">
|
||||
shared_polymorphic_downcast</a>.</li>
|
||||
|
||||
<li><a href="libs/function/index.html">Function
|
||||
Library</a>: Now supports function objects with the unary
|
||||
<code>&</code> operator overloaded.</li>
|
||||
|
||||
<li><a href="libs/utility/utility.htm">Utility Library</a>:
|
||||
Added <code>addressof()</code> function.</li>
|
||||
|
||||
<li>The usual small fixes and tweaks.</li>
|
||||
</ul>
|
||||
|
||||
<p>February 5, 2002 - Version 1.27.0</p>
|
||||
|
||||
<ul>
|
||||
<li><a href="libs/python/doc/index.html">Python
|
||||
Library</a>: Scott Snyder contributed inplace operator
|
||||
support.</li>
|
||||
|
||||
<li><a href="libs/integer/index.htm">Integer Library</a>:
|
||||
Daryle Walker contributed enhancements to the <a href=
|
||||
"libs/integer/integer.htm">type selection templates</a>,
|
||||
and added new compile-time <a href=
|
||||
"libs/integer/doc/integer_mask.html">bit mask</a>, <a href=
|
||||
"libs/integer/doc/static_log2.html">binary logarithm</a>,
|
||||
and <a href=
|
||||
"libs/integer/doc/static_min_max.html">extrema</a>
|
||||
templates.</li>
|
||||
|
||||
<li><a href="libs/function/index.html">Function
|
||||
Library</a>: user may request that
|
||||
<code>boost::function</code> objects store a reference to a
|
||||
function object target instead of a copy, using <a href=
|
||||
"libs/bind/ref.html"><code>ref</code></a>. Stateless
|
||||
objects are optimized so that they require no dynamic
|
||||
storage.</li>
|
||||
|
||||
<li><a href=
|
||||
"libs/math/quaternion/index.html">Quaternions</a>: added
|
||||
support for GCC 2.95.x.</li>
|
||||
|
||||
<li><a href="libs/math/octonion/index.html">Octonions</a>:
|
||||
added support for GCC 2.95.x.</li>
|
||||
|
||||
<li><a href="libs/smart_ptr/index.htm">Smart Pointers
|
||||
Library</a>: Peter Dimov contributed a new implementation
|
||||
that fixes some bugs and adds some features including <a
|
||||
href="libs/smart_ptr/compatibility.htm#threadsafe">thread
|
||||
safety</a> when manipulating the use count, <a href=
|
||||
"libs/smart_ptr/shared_ptr.htm#constructors">custom delete
|
||||
functions</a>, a new <a href=
|
||||
"libs/smart_ptr/weak_ptr.htm">weak_ptr</a>, and <a href=
|
||||
"libs/smart_ptr/shared_ptr.htm#shared_static_cast">shared_static_cast</a>
|
||||
and <a href=
|
||||
"libs/smart_ptr/shared_ptr.htm#shared_dynamic_cast">shared_dynamic_cast</a>.</li>
|
||||
|
||||
<li><a href="libs/preprocessor/doc/index.htm">Preprocessor
|
||||
Library</a>: changed macro prefix from BOOST_PREPROCESSOR
|
||||
to BOOST_PP, added support for <a href=
|
||||
"libs/preprocessor/doc/reference/list_adt.htm">list data
|
||||
structure</a> manipulation, added examples, made library
|
||||
ANSI C friendly, added generalized <a href=
|
||||
"libs/preprocessor/doc/reference/for.htm">repetition</a>
|
||||
and <a href=
|
||||
"libs/preprocessor/doc/reference/while.htm">iteration</a>
|
||||
primitives, improved reference manual.</li>
|
||||
|
||||
<li><a href="libs/thread/doc/index.html">Threads
|
||||
Library:</a> Mac Carbon implementation contributed by Mac
|
||||
Murrett.</li>
|
||||
|
||||
<li>Minor fixes to many libraries.</li>
|
||||
</ul>
|
||||
|
||||
<p>November 30, 2001 - Version 1.26.0</p>
|
||||
|
||||
<ul>
|
||||
<li><a href="libs/math/doc/common_factor.html">Common
|
||||
Factor Library</a> added. Greatest common divisor and least
|
||||
common multiple, from Daryle Walker.</li>
|
||||
|
||||
<li><a href="libs/preprocessor/doc/index.htm">Preprocessor
|
||||
Library</a> added. Preprocessor metaprogramming tools
|
||||
including repetition and recursion, from Vesa
|
||||
Karvonen.</li>
|
||||
|
||||
<li><a href="libs/utility/iterator_adaptors.htm">Iterator
|
||||
Adaptor Library</a>: Added <a href=
|
||||
"libs/utility/generator_iterator.htm">generator
|
||||
iterator</a> adaptor, from Jens Maurer.</li>
|
||||
|
||||
<li><a href="libs/random/index.html">Random Number
|
||||
Library</a>: Removed iterator interface. Fixed overflows in
|
||||
uniform_int<>. Both changes cause random number
|
||||
sequences to differ compared to previous boost
|
||||
releases.</li>
|
||||
|
||||
<li><a href="libs/utility/operators.htm">operators.hpp</a>:
|
||||
Improvements from Daryle and Helmut Ziesel</li>
|
||||
|
||||
<li><a href="tools/build/index.html">Boost.Build:</a>
|
||||
Continuing improvements, including pre-built <a href=
|
||||
"tools/build/index.html#Jam">Boost.Jam
|
||||
executables</a>.</li>
|
||||
|
||||
<li>Minor fixes to a number of other libraries.</li>
|
||||
</ul>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<hr>
|
||||
|
||||
<p>Revised
|
||||
<!--webbot bot="Timestamp" S-Type="EDITED" S-Format="%d %B, %Y" startspan -->10 October, 2002<!--webbot bot="Timestamp" endspan i-checksum="38418" --></p>
|
||||
</body>
|
||||
</html>
|
||||
+1
-1
Submodule libs/any updated: aa27b0a204...90933bf13c
+1
-1
Submodule libs/array updated: 785e98fcac...d335bcbc50
+1
-1
Submodule libs/bind updated: 55dbef0000...5bca8bb195
+1
-1
Submodule libs/compatibility updated: 1235f5192d...1282adbed5
+1
-1
Submodule libs/compose updated: becadf3a9e...b2cf8386dc
+1
-1
Submodule libs/concept_check updated: 2ebed5a25a...984721fd97
+1
-1
Submodule libs/config updated: 8c49d00328...476647be19
+1
-1
Submodule libs/conversion updated: ccf7efe620...152efbdf83
+1
-1
Submodule libs/crc updated: 60d80ae3f1...aea36dd60d
+1
-1
Submodule libs/date_time updated: f1fd279d93...74f716d2eb
+1
-1
Submodule libs/detail updated: a38297a6cc...6cb9175369
+1
-1
Submodule libs/disjoint_sets updated: dcfd93ddc9...df69cbdfa3
+1
-1
Submodule libs/dynamic_bitset updated: 892d1a8341...5d0ce5eabf
+1
-1
Submodule libs/exception updated: b01dc32c72...b707807cb0
+1
-1
Submodule libs/format updated: ee2ed45450...2a2e96e31b
+1
-1
Submodule libs/function updated: f36e83fb27...7c560d1d5a
+1
-1
Submodule libs/functional updated: 3ad2408d42...db6efd0fa6
+1
-1
Submodule libs/graph updated: 39104a5514...511535f8dc
+1
-1
Submodule libs/integer updated: 2de1422682...5d7c770d11
+1
-1
Submodule libs/io updated: 689887f1fc...d438365880
+1
-1
Submodule libs/iterator updated: 5bacd289b6...577969e6a5
+1
-1
Submodule libs/lambda updated: e1b36955b7...d4bde698f6
+3
-3
@@ -138,7 +138,7 @@ out how to build object libraries, when needed.</p>
|
||||
and Jeremy Siek.</li>
|
||||
<li><a href="pool/doc/index.html">pool</a> - Memory pool management, from
|
||||
Steve Cleary.</li>
|
||||
<li><a href="preprocessor/doc/index.htm">preprocessor</a> - Preprocessor
|
||||
<li><a href="preprocessor/doc/index.html">preprocessor</a> - Preprocessor
|
||||
metaprogramming tools including repetition and recursion, from Vesa Karvonen.</li>
|
||||
<li><a href="property_map/property_map.html">property map</a>
|
||||
- Concepts defining interfaces which map key objects to
|
||||
@@ -309,7 +309,7 @@ out how to build object libraries, when needed.</p>
|
||||
<h3><a name="Preprocessor">Preprocessor</a> Metaprogramming</h3>
|
||||
|
||||
<ul>
|
||||
<li><a href="preprocessor/doc/index.htm">preprocessor</a> - Preprocessor
|
||||
<li><a href="preprocessor/doc/index.html">preprocessor</a> - Preprocessor
|
||||
metaprogramming tools including repetition and recursion, from Vesa Karvonen.</li>
|
||||
</ul>
|
||||
|
||||
@@ -458,4 +458,4 @@ out how to build object libraries, when needed.</p>
|
||||
<p>Revised <!--webbot bot="Timestamp" s-type="EDITED"
|
||||
s-format="%d %b %Y" startspan -->16 Sep 2002<!--webbot bot="Timestamp" i-checksum="14941" endspan --></p>
|
||||
</body>
|
||||
</html>
|
||||
</html>
|
||||
|
||||
Submodule
+1
Submodule libs/log added at 6a032b633e
+1
-1
Submodule libs/math updated: aa71de4ee8...7b9e491905
+1
-1
Submodule libs/mpl updated: d84ea224a8...1ec7a7c8bb
+1
-1
Submodule libs/multi_array updated: 6d413aa039...e9ed7d57fd
+1
-1
Submodule libs/numeric/ublas updated: 8b05f0db83...fbc31072b7
+1
-1
Submodule libs/pool updated: da601c7ee7...05210b1c0c
+1
-1
Submodule libs/preprocessor updated: 3b93d471b1...525b86db40
+1
-1
Submodule libs/property_map updated: d6b29af1be...3ba550b9b2
+1
-1
Submodule libs/python updated: 8e941417a5...7cbf652c85
+1
-1
Submodule libs/random updated: b745b11af9...3e631c894c
+1
-1
Submodule libs/rational updated: 16acf13b51...e605250a26
+1
-1
Submodule libs/regex updated: 0fec291b28...354bb1e035
+1
-1
Submodule libs/signals updated: 933cc8d444...d42697ad94
+1
-1
Submodule libs/smart_ptr updated: 9dcbc46225...9fa591db1f
Submodule libs/statechart deleted from 26ce69161d
+1
-1
Submodule libs/static_assert updated: 1029ee8032...d919a89ee3
+1
-1
Submodule libs/test updated: 7fdc4c22da...152750e5fd
+1
-1
Submodule libs/thread updated: 51f80f6c15...60326d5b37
+1
-1
Submodule libs/timer updated: 15b3c0dca3...4df3e23fd5
+1
-1
Submodule libs/tokenizer updated: 215a8c1536...2b6b1edb4d
+1
-1
Submodule libs/tuple updated: 74a2ab1242...fd84aacaae
+1
-1
Submodule libs/type_traits updated: 3e40fe2c5b...da1120b44f
+1
-1
Submodule libs/utility updated: aff985a563...199e0c00be
@@ -26,6 +26,7 @@
|
||||
<p> When not hunched over in front of an <a href="http://www.xemacs.org">XEmacs</a> window, Doug looks to his wife Amy to help him navigate through the daylight. Once there, he enjoys tennis and the occasional game of paintball.
|
||||
|
||||
<p>Email: <a href="mailto:gregod@cs.rpi.edu">gregod@cs.rpi.edu</a></p>
|
||||
<p>Home page: <a href="http://www.cs.rpi.edu/~gregod"><code>http://www.cs.rpi.edu/~gregod</code></a>
|
||||
|
||||
</body>
|
||||
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>Paul Mensonides</title>
|
||||
<body bgcolor="#FFFFFF" text="#000000">
|
||||
|
||||
<table border="1" bgcolor="#007F7F" cellpadding="2">
|
||||
<tr>
|
||||
<td bgcolor="#FFFFFF"><img src="../c++boost.gif" alt="c++boost.gif (8819 bytes)" width="277" height="86"></td>
|
||||
<td><a href="../index.htm"><font face="Arial" color="#FFFFFF"><big>Home</big></font></a></td>
|
||||
<td><a href="../libs/libraries.htm"><font face="Arial" color="#FFFFFF"><big>Libraries</big></font></a></td>
|
||||
<td><a href="people.htm"><font face="Arial" color="#FFFFFF"><big>People</big></font></a></td>
|
||||
<td><a href="../more/faq.htm"><font face="Arial" color="#FFFFFF"><big>FAQ</big></font></a></td>
|
||||
<td><a href="../more/index.htm"><font face="Arial" color="#FFFFFF"><big>More</big></font></a></td>
|
||||
</tr>
|
||||
</table>
|
||||
<p>
|
||||
<a href="paul_mensonides.jpg"><img border="0" src="paul_mensonides_small.jpg" alt="paul_mensonides.jpg (286309 bytes)" align="left" hspace="10" vspace="5" width="100" height="131"></a>
|
||||
Paul Mensonides was born on March 31 in 1977.
|
||||
He lives in Tacoma, Washington.
|
||||
</p>
|
||||
<p>
|
||||
His interests include musical composition, playing the guitar, skiing, and programming--particularly in C and C++.
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 26 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 3.3 KiB |
@@ -134,6 +134,11 @@
|
||||
<td><a href="jens_maurer.htm">Jens Maurer</a></td>
|
||||
<td><a href="jens_maurer.jpg"><img border="0" src="jens_maurer_small.jpg" width="100" height="124"></a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="paul_mensonides.htm">Paul Mensonides</a></td>
|
||||
<td><a href="paul_mensonides.jpg">
|
||||
<img border="0" src="paul_mensonides_small.jpg" alt="paul_mensonides.jpg (286309 bytes)" width="100" height="131"></a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="paul_moore.htm">Paul Moore</a></td>
|
||||
<td><a href="paul_moore.jpg">
|
||||
|
||||
+185
-6
@@ -140,6 +140,11 @@ include testing.jam ;
|
||||
[ run libs/dynamic_bitset/dyn_bitset_unit_tests3.cpp <lib>../libs/test/build/test_exec_monitor ]
|
||||
;
|
||||
|
||||
test-suite format
|
||||
: [ run libs/format/test/format_test1.cpp <lib>../libs/test/build/test_exec_monitor ]
|
||||
[ run libs/format/test/format_test2.cpp <lib>../libs/test/build/test_exec_monitor ]
|
||||
;
|
||||
|
||||
test-suite function
|
||||
: [ run libs/function/test/deprecated_syntax_test.cpp <lib>../libs/test/build/test_exec_monitor ]
|
||||
[ run libs/function/test/function_test.cpp <lib>../libs/test/build/test_exec_monitor ]
|
||||
@@ -300,19 +305,186 @@ include testing.jam ;
|
||||
<define>BOOST_REGEX_STATIC_LINK=1
|
||||
]
|
||||
|
||||
[ run libs/regex/example/timer/regex_timer.cpp
|
||||
<lib>../libs/regex/build/boost_regex$(SUFLIB)
|
||||
:
|
||||
$(BOOST_ROOT)$(SLASH)libs$(SLASH)regex$(SLASH)example$(SLASH)timer$(SLASH)input_script.txt
|
||||
:
|
||||
:
|
||||
<define>BOOST_REGEX_NO_LIB=1
|
||||
<define>BOOST_REGEX_STATIC_LINK=1
|
||||
:
|
||||
regex_timer
|
||||
]
|
||||
|
||||
[ run libs/regex/example/jgrep/jgrep.cpp libs/regex/example/jgrep/main.cpp
|
||||
<lib>../libs/regex/build/boost_regex$(SUFLIB)
|
||||
:
|
||||
-n boost/ $(BOOST_ROOT)$(SLASH)boost$(SLASH)regex.hpp
|
||||
:
|
||||
:
|
||||
<define>BOOST_REGEX_NO_LIB=1
|
||||
<define>BOOST_REGEX_STATIC_LINK=1
|
||||
:
|
||||
jgrep
|
||||
]
|
||||
|
||||
[ run libs/regex/example/snippets/credit_card_example.cpp
|
||||
<lib>../libs/regex/build/boost_regex$(SUFLIB)
|
||||
:
|
||||
:
|
||||
:
|
||||
<define>BOOST_REGEX_NO_LIB=1
|
||||
<define>BOOST_REGEX_STATIC_LINK=1
|
||||
:
|
||||
credit_card_example
|
||||
]
|
||||
|
||||
[ run libs/regex/example/snippets/partial_regex_grep.cpp
|
||||
<lib>../libs/regex/build/boost_regex$(SUFLIB)
|
||||
:
|
||||
$(BOOST_ROOT)$(SLASH)libs$(SLASH)regex$(SLASH)index.htm
|
||||
:
|
||||
:
|
||||
<define>BOOST_REGEX_NO_LIB=1
|
||||
<define>BOOST_REGEX_STATIC_LINK=1
|
||||
:
|
||||
partial_regex_grep
|
||||
]
|
||||
|
||||
[ run libs/regex/example/snippets/partial_regex_match.cpp
|
||||
<lib>../libs/regex/build/boost_regex$(SUFLIB)
|
||||
:
|
||||
1234-5678-8765-4
|
||||
:
|
||||
:
|
||||
<define>BOOST_REGEX_NO_LIB=1
|
||||
<define>BOOST_REGEX_STATIC_LINK=1
|
||||
:
|
||||
partial_regex_match
|
||||
]
|
||||
|
||||
[ run libs/regex/example/snippets/regex_grep_example_1.cpp
|
||||
<lib>../libs/regex/build/boost_regex$(SUFLIB)
|
||||
:
|
||||
$(BOOST_ROOT)$(SLASH)boost$(SLASH)rational.hpp
|
||||
:
|
||||
:
|
||||
<define>BOOST_REGEX_NO_LIB=1
|
||||
<define>BOOST_REGEX_STATIC_LINK=1
|
||||
:
|
||||
regex_grep_example_1
|
||||
]
|
||||
|
||||
[ run libs/regex/example/snippets/regex_grep_example_2.cpp
|
||||
<lib>../libs/regex/build/boost_regex$(SUFLIB)
|
||||
:
|
||||
$(BOOST_ROOT)$(SLASH)boost$(SLASH)rational.hpp
|
||||
:
|
||||
:
|
||||
<define>BOOST_REGEX_NO_LIB=1
|
||||
<define>BOOST_REGEX_STATIC_LINK=1
|
||||
:
|
||||
regex_grep_example_2
|
||||
]
|
||||
|
||||
[ run libs/regex/example/snippets/regex_grep_example_3.cpp
|
||||
<lib>../libs/regex/build/boost_regex$(SUFLIB)
|
||||
:
|
||||
$(BOOST_ROOT)$(SLASH)boost$(SLASH)rational.hpp
|
||||
:
|
||||
:
|
||||
<define>BOOST_REGEX_NO_LIB=1
|
||||
<define>BOOST_REGEX_STATIC_LINK=1
|
||||
:
|
||||
regex_grep_example_3
|
||||
]
|
||||
|
||||
[ run libs/regex/example/snippets/regex_grep_example_4.cpp
|
||||
<lib>../libs/regex/build/boost_regex$(SUFLIB)
|
||||
:
|
||||
$(BOOST_ROOT)$(SLASH)boost$(SLASH)rational.hpp
|
||||
:
|
||||
:
|
||||
<define>BOOST_REGEX_NO_LIB=1
|
||||
<define>BOOST_REGEX_STATIC_LINK=1
|
||||
:
|
||||
regex_grep_example_4
|
||||
]
|
||||
|
||||
[ run libs/regex/example/snippets/regex_match_example.cpp
|
||||
<lib>../libs/regex/build/boost_regex$(SUFLIB)
|
||||
:
|
||||
-auto
|
||||
:
|
||||
:
|
||||
<define>BOOST_REGEX_NO_LIB=1
|
||||
<define>BOOST_REGEX_STATIC_LINK=1
|
||||
:
|
||||
regex_match_example
|
||||
]
|
||||
|
||||
[ run libs/regex/example/snippets/regex_merge_example.cpp
|
||||
<lib>../libs/regex/build/boost_regex$(SUFLIB)
|
||||
:
|
||||
$(BOOST_ROOT)$(SLASH)boost$(SLASH)rational.hpp
|
||||
:
|
||||
:
|
||||
<define>BOOST_REGEX_NO_LIB=1
|
||||
<define>BOOST_REGEX_STATIC_LINK=1
|
||||
:
|
||||
regex_merge_example
|
||||
]
|
||||
|
||||
[ run libs/regex/example/snippets/regex_search_example.cpp
|
||||
<lib>../libs/regex/build/boost_regex$(SUFLIB)
|
||||
:
|
||||
$(BOOST_ROOT)$(SLASH)boost$(SLASH)rational.hpp
|
||||
:
|
||||
:
|
||||
<define>BOOST_REGEX_NO_LIB=1
|
||||
<define>BOOST_REGEX_STATIC_LINK=1
|
||||
:
|
||||
regex_search_example
|
||||
]
|
||||
|
||||
[ run libs/regex/example/snippets/regex_split_example_1.cpp
|
||||
<lib>../libs/regex/build/boost_regex$(SUFLIB)
|
||||
:
|
||||
-auto
|
||||
:
|
||||
:
|
||||
<define>BOOST_REGEX_NO_LIB=1
|
||||
<define>BOOST_REGEX_STATIC_LINK=1
|
||||
:
|
||||
regex_split_example_1
|
||||
]
|
||||
|
||||
[ run libs/regex/example/snippets/regex_split_example_2.cpp
|
||||
<lib>../libs/regex/build/boost_regex$(SUFLIB)
|
||||
:
|
||||
$(BOOST_ROOT)$(SLASH)libs$(SLASH)regex$(SLASH)index.htm
|
||||
:
|
||||
:
|
||||
<define>BOOST_REGEX_NO_LIB=1
|
||||
<define>BOOST_REGEX_STATIC_LINK=1
|
||||
:
|
||||
regex_split_example_2
|
||||
]
|
||||
|
||||
;
|
||||
|
||||
}
|
||||
|
||||
test-suite signals
|
||||
: [ run libs/signals/test/dead_slot_test.cpp
|
||||
<lib>../libs/test/build/test_exec_monitor
|
||||
: [ run libs/signals/test/dead_slot_test.cpp
|
||||
<lib>../libs/test/build/test_exec_monitor
|
||||
<lib>../libs/signals/build/boost_signals$(SUFLIB) ]
|
||||
[ run libs/signals/test/deletion_test.cpp
|
||||
<lib>../libs/test/build/test_exec_monitor
|
||||
[ run libs/signals/test/deletion_test.cpp
|
||||
<lib>../libs/test/build/test_exec_monitor
|
||||
<lib>../libs/signals/build/boost_signals$(SUFLIB) ]
|
||||
[ run libs/signals/test/ordering_test.cpp
|
||||
<lib>../libs/test/build/test_exec_monitor
|
||||
[ run libs/signals/test/ordering_test.cpp
|
||||
<lib>../libs/test/build/test_exec_monitor
|
||||
<lib>../libs/signals/build/boost_signals$(SUFLIB) ]
|
||||
[ run libs/signals/test/signal_n_test.cpp
|
||||
<lib>../libs/test/build/test_exec_monitor
|
||||
@@ -464,6 +636,7 @@ include testing.jam ;
|
||||
libs/numeric/ublas/test1/test11.cpp
|
||||
libs/numeric/ublas/test1/test12.cpp
|
||||
libs/numeric/ublas/test1/test13.cpp
|
||||
: # args
|
||||
: # input files
|
||||
: # requirements
|
||||
|
||||
@@ -474,6 +647,7 @@ include testing.jam ;
|
||||
libs/numeric/ublas/test2/test21.cpp
|
||||
libs/numeric/ublas/test2/test22.cpp
|
||||
libs/numeric/ublas/test2/test23.cpp
|
||||
: # args
|
||||
: # input files
|
||||
: # requirements
|
||||
|
||||
@@ -484,6 +658,7 @@ include testing.jam ;
|
||||
libs/numeric/ublas/test3/test31.cpp
|
||||
libs/numeric/ublas/test3/test32.cpp
|
||||
libs/numeric/ublas/test3/test33.cpp
|
||||
: # args
|
||||
: # input files
|
||||
: # requirements
|
||||
|
||||
@@ -494,6 +669,7 @@ include testing.jam ;
|
||||
libs/numeric/ublas/test4/test41.cpp
|
||||
libs/numeric/ublas/test4/test42.cpp
|
||||
libs/numeric/ublas/test4/test43.cpp
|
||||
: # args
|
||||
: # input files
|
||||
: # requirements
|
||||
|
||||
@@ -504,6 +680,7 @@ include testing.jam ;
|
||||
libs/numeric/ublas/test5/test51.cpp
|
||||
libs/numeric/ublas/test5/test52.cpp
|
||||
libs/numeric/ublas/test5/test53.cpp
|
||||
: # args
|
||||
: # input files
|
||||
: # requirements
|
||||
|
||||
@@ -514,6 +691,7 @@ include testing.jam ;
|
||||
libs/numeric/ublas/test6/test61.cpp
|
||||
libs/numeric/ublas/test6/test62.cpp
|
||||
libs/numeric/ublas/test6/test63.cpp
|
||||
: # args
|
||||
: # input files
|
||||
: # requirements
|
||||
|
||||
@@ -521,6 +699,7 @@ include testing.jam ;
|
||||
<borland><*><cxxflags>"-w-8026 -w-8027 -w-8057 -w-8084 -w-8092"
|
||||
]
|
||||
[ run libs/numeric/ublas/concepts.cpp
|
||||
: # args
|
||||
: # input files
|
||||
: # requirements
|
||||
|
||||
|
||||
@@ -80,9 +80,9 @@ current release
|
||||
code from the <a href="http://www.boost.org">www.boost.org</a> web site.</p>
|
||||
|
||||
<p>Select the <b>CVS</b> links if you want to know the status of the code in the
|
||||
Boost <a href="../more/download.html#CVS">CVS repository</a>. Because this
|
||||
code is being updated several times a day, it may contain bug fixes, compiler
|
||||
workarounds, new features, and even whole new libraries. It is often unstable,
|
||||
Boost <a href="../more/download.html#CVS">CVS repository</a>. The CVS
|
||||
code is being updated several times a day, so it may contain bug fixes, compiler
|
||||
workarounds, new features, and even whole new libraries. It may be unstable,
|
||||
however.</p>
|
||||
|
||||
<table border="1" cellpadding="5" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111">
|
||||
@@ -338,7 +338,7 @@ above. </p>
|
||||
<hr>
|
||||
|
||||
<p>Revised <!--webbot bot="Timestamp" startspan s-type="EDITED"
|
||||
s-format="%d %B %Y" -->19 September 2002<!--webbot bot="Timestamp"
|
||||
i-checksum="39506" endspan --></p>
|
||||
s-format="%d %B %Y" -->11 October 2002<!--webbot bot="Timestamp"
|
||||
i-checksum="32212" endspan --></p>
|
||||
</body>
|
||||
</html>
|
||||
+29
-7
@@ -8,7 +8,7 @@
|
||||
<td><img border="0" src="../c++boost.gif" width="277" height="86"></td>
|
||||
<td>
|
||||
<h1>Compiler Status: Win32</h1>
|
||||
<b>Run Date:</b> 14:39:53 UTC, Thursday 19 September 2002
|
||||
<b>Run Date:</b> 15:12:44 UTC, Friday 11 October 2002
|
||||
</td>
|
||||
</table>
|
||||
<br>
|
||||
@@ -65,9 +65,11 @@
|
||||
<tr><td><a href="../libs/date_time/index.html">date_time</a></td><td><a href="../libs/date_time/test/testtime_resolution_traits.cpp">testtime_resolution_traits</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/date_time/index.html">date_time</a></td><td><a href="../libs/date_time/test/testwrapping_int.cpp">testwrapping_int</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/disjoint_sets/index.html">disjoint_sets</a></td><td><a href="../libs/disjoint_sets/disjoint_set_test.cpp">disjoint_set_test</a></td><td>run</td><td>Pass</td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/dynamic_bitset/index.html">dynamic_bitset</a></td><td><a href="../libs/dynamic_bitset/dyn_bitset_unit_tests1.cpp">dyn_bitset_unit_tests1</a></td><td>run</td><td>Pass</td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/dynamic_bitset/index.html">dynamic_bitset</a></td><td><a href="../libs/dynamic_bitset/dyn_bitset_unit_tests2.cpp">dyn_bitset_unit_tests2</a></td><td>run</td><td>Pass</td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/dynamic_bitset/index.html">dynamic_bitset</a></td><td><a href="../libs/dynamic_bitset/dyn_bitset_unit_tests3.cpp">dyn_bitset_unit_tests3</a></td><td>run</td><td>Pass</td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/dynamic_bitset/index.html">dynamic_bitset</a></td><td><a href="../libs/dynamic_bitset/dyn_bitset_unit_tests1.cpp">dyn_bitset_unit_tests1</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/dynamic_bitset/index.html">dynamic_bitset</a></td><td><a href="../libs/dynamic_bitset/dyn_bitset_unit_tests2.cpp">dyn_bitset_unit_tests2</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/dynamic_bitset/index.html">dynamic_bitset</a></td><td><a href="../libs/dynamic_bitset/dyn_bitset_unit_tests3.cpp">dyn_bitset_unit_tests3</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/format/index.htm">format</a></td><td><a href="../libs/format/test/format_test1.cpp">format_test1</a></td><td>run</td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td>Pass</td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/format/index.htm">format</a></td><td><a href="../libs/format/test/format_test2.cpp">format_test2</a></td><td>run</td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td>Pass</td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/function/index.html">function</a></td><td><a href="../libs/function/test/allocator_test.cpp">allocator_test</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td><font color="#FF0000"><big><i>Fail</i></big></font></td></tr>
|
||||
<tr><td><a href="../libs/function/index.html">function</a></td><td><a href="../libs/function/test/deprecated_syntax_test.cpp">deprecated_syntax_test</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/function/index.html">function</a></td><td><a href="../libs/function/test/function_n_test.cpp">function_n_test</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
@@ -75,10 +77,10 @@
|
||||
<tr><td><a href="../libs/function/index.html">function</a></td><td><a href="../libs/function/test/function_test_fail1.cpp">function_test_fail1</a></td><td>compile-fail</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/function/index.html">function</a></td><td><a href="../libs/function/test/function_test_fail2.cpp">function_test_fail2</a></td><td>compile-fail</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/function/index.html">function</a></td><td><a href="../libs/function/test/stateless_test.cpp">stateless_test</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/graph/doc/index.html">graph</a></td><td><a href="../libs/graph/test/graph.cpp">graph</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/graph/index.html">graph</a></td><td><a href="../libs/graph/test/graph.cpp">graph</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/integer/index.htm">integer</a></td><td><a href="../libs/integer/cstdint_test.cpp">cstdint_test</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/integer/index.htm">integer</a></td><td><a href="../libs/integer/integer_test.cpp">integer_test</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/integer/index.htm">integer</a></td><td><a href="../libs/integer/integer_traits_test.cpp">integer_traits_test</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/integer/index.htm">integer</a></td><td><a href="../libs/integer/integer_traits_test.cpp">integer_traits_test</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/io/index.html">io</a></td><td><a href="../libs/io/test/ios_state_test.cpp">ios_state_test</a></td><td>run</td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/lambda/index.html">lambda</a></td><td><a href="../libs/lambda/test/bind_tests_advanced.cpp">bind_tests_advanced</a></td><td>run</td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td>Pass</td><td>Pass</td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td><font color="#FF0000"><big><i>Fail</i></big></font></td></tr>
|
||||
<tr><td><a href="../libs/lambda/index.html">lambda</a></td><td><a href="../libs/lambda/test/bind_tests_simple.cpp">bind_tests_simple</a></td><td>run</td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td>Pass</td><td>Pass</td><td>Pass</td><td><font color="#FF0000"><big><i>Fail</i></big></font></td></tr>
|
||||
@@ -132,7 +134,13 @@
|
||||
<tr><td><a href="../libs/multi_array/index.html">multi_array</a></td><td><a href="../libs/multi_array/test/slice.cpp">slice</a></td><td>run</td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/multi_array/index.html">multi_array</a></td><td><a href="../libs/multi_array/test/stl_interaction.cpp">stl_interaction</a></td><td>run</td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td>Pass</td><td>Pass</td><td><font color="#FF0000"><big><i>Fail</i></big></font></td></tr>
|
||||
<tr><td><a href="../libs/multi_array/index.html">multi_array</a></td><td><a href="../libs/multi_array/test/storage_order.cpp">storage_order</a></td><td>run</td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/numeric/index.html">numeric</a></td><td><a href="../libs/numeric/ublas/test1/test1.cpp">test1</a></td><td>run</td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td>Pass</td><td>Pass</td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/numeric/index.html">numeric</a></td><td><a href="../libs/numeric/ublas/concepts.cpp">concepts</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/numeric/index.html">numeric</a></td><td><a href="../libs/numeric/ublas/test1/test1.cpp">test1</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/numeric/index.html">numeric</a></td><td><a href="../libs/numeric/ublas/test2/test2.cpp">test2</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/numeric/index.html">numeric</a></td><td><a href="../libs/numeric/ublas/test3/test3.cpp">test3</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/numeric/index.html">numeric</a></td><td><a href="../libs/numeric/ublas/test4/test4.cpp">test4</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/numeric/index.html">numeric</a></td><td><a href="../libs/numeric/ublas/test5/test5.cpp">test5</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/numeric/index.html">numeric</a></td><td><a href="../libs/numeric/ublas/test6/test6.cpp">test6</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/pool/index.html">pool</a></td><td><a href="../libs/pool/test/test_pool_alloc.cpp">test_pool_alloc</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td><font color="#FF0000"><big><i>Fail</i></big></font></td></tr>
|
||||
<tr><td><a href="../libs/preprocessor/index.html">preprocessor</a></td><td><a href="../libs/preprocessor/regression/arithmetic.cpp">arithmetic</a></td><td>compile</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/preprocessor/index.html">preprocessor</a></td><td><a href="../libs/preprocessor/regression/array.cpp">array</a></td><td>compile</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
@@ -152,6 +160,20 @@
|
||||
<tr><td><a href="../libs/random/index.html">random</a></td><td><a href="../libs/random/random_test.cpp">random_test</a></td><td>run</td><td>Pass</td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/rational/index.html">rational</a></td><td><a href="../libs/rational/rational_example.cpp">rational_example</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/rational/index.html">rational</a></td><td><a href="../libs/rational/rational_test.cpp">rational_test</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/regex/index.htm">regex</a></td><td><a href="../libs/regex/example/jgrep/jgrep.cpp">jgrep</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/regex/index.htm">regex</a></td><td><a href="../libs/regex/example/snippets/credit_card_example.cpp">credit_card_example</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/regex/index.htm">regex</a></td><td><a href="../libs/regex/example/snippets/partial_regex_grep.cpp">partial_regex_grep</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/regex/index.htm">regex</a></td><td><a href="../libs/regex/example/snippets/partial_regex_match.cpp">partial_regex_match</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/regex/index.htm">regex</a></td><td><a href="../libs/regex/example/snippets/regex_grep_example_1.cpp">regex_grep_example_1</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/regex/index.htm">regex</a></td><td><a href="../libs/regex/example/snippets/regex_grep_example_2.cpp">regex_grep_example_2</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/regex/index.htm">regex</a></td><td><a href="../libs/regex/example/snippets/regex_grep_example_3.cpp">regex_grep_example_3</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/regex/index.htm">regex</a></td><td><a href="../libs/regex/example/snippets/regex_grep_example_4.cpp">regex_grep_example_4</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/regex/index.htm">regex</a></td><td><a href="../libs/regex/example/snippets/regex_match_example.cpp">regex_match_example</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/regex/index.htm">regex</a></td><td><a href="../libs/regex/example/snippets/regex_merge_example.cpp">regex_merge_example</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/regex/index.htm">regex</a></td><td><a href="../libs/regex/example/snippets/regex_search_example.cpp">regex_search_example</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/regex/index.htm">regex</a></td><td><a href="../libs/regex/example/snippets/regex_split_example_1.cpp">regex_split_example_1</a></td><td>run</td><td>Pass</td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/regex/index.htm">regex</a></td><td><a href="../libs/regex/example/snippets/regex_split_example_2.cpp">regex_split_example_2</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/regex/index.htm">regex</a></td><td><a href="../libs/regex/example/timer/regex_timer.cpp">regex_timer</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/regex/index.htm">regex</a></td><td><a href="../libs/regex/test/c_compiler_checks/posix_api_check.c">posix_api_check_c</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/regex/index.htm">regex</a></td><td><a href="../libs/regex/test/c_compiler_checks/posix_api_check.cpp">posix_api_check</a></td><td>run</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td><td>Pass</td></tr>
|
||||
<tr><td><a href="../libs/regex/index.htm">regex</a></td><td><a href="../libs/regex/test/c_compiler_checks/wide_posix_api_check.c">wide_posix_api_check_c</a></td><td>run</td><td>Pass</td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td><font color="#FF0000"><big><i>Fail</i></big></font></td><td>Pass</td><td>Pass</td></tr>
|
||||
|
||||
+1
-1
Submodule tools/build updated: df9871f818...2777b12d8e
Reference in New Issue
Block a user