Compare commits

...
223 Commits
Author SHA1 Message Date
Andrey Semashev 59a0922851 Boost.Log merged to trunk.
[SVN r83860]
2013-04-13 12:30:25 +00:00
nobody 439b09ff13 This commit was manufactured by cvs2svn to create tag
'Version_1_32_0'.

[SVN r26264]
2004-11-19 19:19:18 +00:00
Aleksey Gurtovoy 19e0e8a9e7 fix invalid (quickbook generated) links
[SVN r26263]
2004-11-19 19:19:17 +00:00
Aleksey Gurtovoy cbc9a5b2e1 fix invalid URL
[SVN r26262]
2004-11-19 19:11:49 +00:00
Aleksey Gurtovoy f0a94bf808 correct //wrapper link
[SVN r26261]
2004-11-19 16:12:36 +00:00
Aleksey Gurtovoy b60d237e3f Update MPL notes
[SVN r26260]
2004-11-19 16:02:21 +00:00
Dave Abrahams d93cb250e7 merged from trunk
[SVN r26259]
2004-11-19 15:51:02 +00:00
Aleksey Gurtovoy bc34a196ee Add Regression Tests section
[SVN r26258]
2004-11-19 15:16:32 +00:00
Dave Abrahams 54e47cae19 updated Boost.Python news
[SVN r26257]
2004-11-19 14:21:13 +00:00
Dave Abrahams 806746d40b merged from trunk
[SVN r26256]
2004-11-19 14:17:59 +00:00
Aleksey Gurtovoy 0aa853d6c0 final 1.32 markup
[SVN r26253]
2004-11-19 12:34:29 +00:00
Aleksey Gurtovoy 4607a439a4 Add unreseached failure to the legend
[SVN r26248]
2004-11-19 06:09:57 +00:00
Aleksey Gurtovoy ecc98cbdf4 more final 1.32 markup
[SVN r26247]
2004-11-19 06:01:53 +00:00
Aleksey Gurtovoy f76efea4d4 serialization markup
[SVN r26246]
2004-11-19 05:43:08 +00:00
Aleksey Gurtovoy c057a2b78f Python/gcc 3.4.2/Martin Wille's results markup
[SVN r26245]
2004-11-19 05:29:19 +00:00
Aleksey Gurtovoy 47b5fcdf83 MPL set_c markup
[SVN r26244]
2004-11-19 05:24:18 +00:00
Aleksey Gurtovoy b675a138df Apply Jonathan Wakely's patch
[SVN r26243]
2004-11-19 05:08:31 +00:00
Aleksey Gurtovoy 8b40c93800 Add Jonathan Wakely to the Acknowledgements
[SVN r26242]
2004-11-19 05:07:00 +00:00
Aleksey Gurtovoy f2d7e137ab merge documentation fix from the main trunk
[SVN r26241]
2004-11-19 04:57:58 +00:00
Aleksey Gurtovoy 05ff04a46b commented out undocumented additions
[SVN r26240]
2004-11-19 04:51:52 +00:00
Aleksey Gurtovoy 92a0ac9406 move TODO into comments
[SVN r26239]
2004-11-19 04:44:10 +00:00
Aleksey Gurtovoy 9ad4dbb792 tweak bio
[SVN r26238]
2004-11-19 04:41:12 +00:00
Aleksey Gurtovoy bfe9785f6b add links to archived PDFs
[SVN r26237]
2004-11-19 04:09:41 +00:00
Aleksey Gurtovoy 440eb70225 fix invalid <p> tags
[SVN r26236]
2004-11-18 23:55:33 +00:00
Aleksey Gurtovoy 1dbe30a54d tweak examples to fit PDF pages
[SVN r26235]
2004-11-18 23:15:15 +00:00
Dave Abrahams dd488c8332 Acknowledge Aleksey
[SVN r26230]
2004-11-17 23:23:19 +00:00
Gennadiy Rozental f76e47cf3c gennadiy_rozental.htm
[SVN r26223]
2004-11-16 06:34:09 +00:00
Aleksey Gurtovoy 2444fa8c8a refmanual.pdf checkin
[SVN r26218]
2004-11-15 13:18:16 +00:00
Aleksey Gurtovoy 4bc59890b5 GCC workaround
[SVN r26217]
2004-11-15 13:12:51 +00:00
Aleksey Gurtovoy 31d60c14e8 Acknowledgements
[SVN r26216]
2004-11-15 12:56:41 +00:00
Aleksey Gurtovoy 706816506c move PDF to web (in hope we are going to have it by the time the tarballs are tested)
[SVN r26215]
2004-11-15 12:38:10 +00:00
Aleksey Gurtovoy 278123a68a index page update
[SVN r26214]
2004-11-15 12:31:41 +00:00
Aleksey Gurtovoy a5b93d3f82 new MPL docs
[SVN r26213]
2004-11-15 12:30:30 +00:00
Aleksey Gurtovoy 506e9449ef new MPL docs
[SVN r26212]
2004-11-15 12:24:13 +00:00
Joel de Guzman d0f8afa90c New Wrapper Facility
[SVN r26209]
2004-11-15 06:55:48 +00:00
Joel de Guzman 1b31c8d7b5 New Wrapper Facility
[SVN r26208]
2004-11-15 06:43:54 +00:00
Joel de Guzman 2c21831232 New Wrapper Facility
[SVN r26207]
2004-11-15 06:34:34 +00:00
Aleksey Gurtovoy 9b244b8e9b accumulate checkin
[SVN r26206]
2004-11-15 04:55:58 +00:00
Aleksey Gurtovoy cd90083595 empty_sequence checkin
[SVN r26201]
2004-11-13 20:19:44 +00:00
Aleksey Gurtovoy 0df56bb718 Put in the toolsets note
[SVN r26195]
2004-11-12 15:05:33 +00:00
Beman Dawes 4584ca0615 fix Windows backslash bug
[SVN r26191]
2004-11-12 01:34:49 +00:00
Douglas Gregor 9686478b59 Graph is always const
[SVN r26187]
2004-11-11 18:28:29 +00:00
John Maddock 2587d0087f Added copyright declaration.
[SVN r26182]
2004-11-11 13:34:47 +00:00
Joaquín M. López Muñoz ec81d02bff bugfix in ordered_index_node_impl::restore merged from trunk
[SVN r26181]
2004-11-11 11:57:39 +00:00
Aleksey Gurtovoy d0efdee3e1 iterator tags fix
[SVN r26179]
2004-11-11 05:15:08 +00:00
Aleksey Gurtovoy 44a7bac528 add min/max headers
[SVN r26178]
2004-11-11 04:50:18 +00:00
Aleksey Gurtovoy 2ebfaca08c disable autolinking for the rest of the numbered Intel toolsets
[SVN r26177]
2004-11-11 04:42:20 +00:00
Aleksey Gurtovoy 687b47c918 final fixes
[SVN r26176]
2004-11-10 23:53:10 +00:00
Aleksey Gurtovoy 730cb0f7f3 final fixes
[SVN r26175]
2004-11-10 23:38:18 +00:00
Aleksey Gurtovoy 0a62923183 deque
[SVN r26174]
2004-11-10 21:06:20 +00:00
Aleksey Gurtovoy 0c0ca0c20a set_c
[SVN r26173]
2004-11-10 16:18:11 +00:00
Aleksey Gurtovoy be33b664e5 set_c
[SVN r26172]
2004-11-10 16:06:51 +00:00
Aleksey Gurtovoy be23922907 set_c
[SVN r26171]
2004-11-10 15:59:54 +00:00
Aleksey Gurtovoy 4e78f16eaf update paper
[SVN r26170]
2004-11-10 12:59:26 +00:00
Robert Ramey f21664cf77 correct namespace
[SVN r26169]
2004-11-10 01:55:21 +00:00
Jens Maurer 3e81a5c5f7 merged fix for sourceforge bug 911758 from main branch:
properly instantiate variate_generator<> using a reference to the base engine


[SVN r26165]
2004-11-09 21:30:02 +00:00
Hartmut Kaiser e26a73e40e Added a missing operator() to range_char_compare.
[SVN r26157]
2004-11-09 08:13:39 +00:00
Aleksey Gurtovoy 0f9d7d9314 convert replace/replace_if into sequence-building algorithms
[SVN r26153]
2004-11-08 19:00:27 +00:00
Aleksey Gurtovoy c0d5ad8d78 na spec bug fix
[SVN r26152]
2004-11-08 18:23:49 +00:00
Aleksey Gurtovoy d37dedf97c MSVC 6.5 fix
[SVN r26150]
2004-11-08 15:15:49 +00:00
John Maddock c2011929c6 Fixed and enabled auto-linking code.
[SVN r26148]
2004-11-08 12:24:56 +00:00
John Maddock ab380550cb Enable auto-linking for compilers other than MSVC.
[SVN r26147]
2004-11-08 12:24:18 +00:00
John Maddock 5d3b4d4018 Disabled auto-linking with versioned Intel toolsets: the toolsets use a naming convention that is inconsistent with auto-linking.
[SVN r26146]
2004-11-08 12:22:29 +00:00
Robert Ramey b2c1672f04 escape xml output
[SVN r26144]
2004-11-08 01:39:33 +00:00
Dave Abrahams 9bd6d7ff21 Boost Consulting no longer mirrors the CVS snapshot
[SVN r26141]
2004-11-07 17:13:00 +00:00
Rene Rivera 3eb31d236a Eat error output from HardLink for file delete, to prevent ominous messages during install about nonexistant files. (Merge from HEAD)
[SVN r26140]
2004-11-07 16:55:58 +00:00
John Maddock 1b23cd699c Merged documentation from main branch (added section on auto-linking)
[SVN r26133]
2004-11-06 12:48:45 +00:00
Hartmut Kaiser e7ac7a46cb Minor tweak...
[SVN r26129]
2004-11-06 10:36:15 +00:00
Hartmut Kaiser d73d480a01 Added copyright to the new testcase.
[SVN r26128]
2004-11-06 10:34:14 +00:00
nobody 4fe65a5fa8 This commit was manufactured by cvs2svn to create branch 'RC_1_32_0'.
[SVN r26126]
2004-11-06 10:31:47 +00:00
Hartmut Kaiser c545c2eaaa Added new test case for select_p containing a rule.
[SVN r26125]
2004-11-06 10:31:46 +00:00
Joaquín M. López Muñoz 86dd1aabd4 fixes to the is_abstract hack merged from trunk
[SVN r26124]
2004-11-05 07:19:23 +00:00
Hartmut Kaiser bc8300296d Added version test for Boost V1.32.0.
[SVN r26123]
2004-11-05 07:18:08 +00:00
Hartmut Kaiser 73ef713a19 Added remove_const to parser_result meta function.
[SVN r26121]
2004-11-05 07:12:20 +00:00
Michael Stevens 5269b3dfc0 range and slice are not storage array
[SVN r26118]
2004-11-05 02:51:16 +00:00
Robert Ramey b6867a6d78 corrected place of serialization in the alpha index
[SVN r26117]
2004-11-04 22:48:25 +00:00
Aleksey Gurtovoy f20bfce788 fix dereference
[SVN r26115]
2004-11-04 13:35:46 +00:00
Aleksey Gurtovoy 8d97d79cfb fix dereference
[SVN r26112]
2004-11-04 12:40:53 +00:00
Aleksey Gurtovoy cec619ebc0 apply Andreas Huber's patch
[SVN r26107]
2004-11-04 04:27:56 +00:00
Aleksey Gurtovoy d047beb517 fix parameter name
[SVN r26098]
2004-11-03 07:59:14 +00:00
Vladimir Prus 5bedffe9d5 Merge program_options/IBM fix to RC_1_32_0.
[SVN r26097]
2004-11-03 07:13:23 +00:00
Aleksey Gurtovoy 60548f6426 fix copyright wording
[SVN r26095]
2004-11-03 06:44:04 +00:00
Aleksey Gurtovoy e214b2ec5c fix www.boost.org links
[SVN r26093]
2004-11-02 23:30:52 +00:00
Aleksey Gurtovoy b3f823e8ab fix www.boost.org links
[SVN r26092]
2004-11-02 23:20:39 +00:00
Dave Abrahams 915ddc4428 merged from trunk
[SVN r26090]
2004-11-02 20:11:53 +00:00
Dave Abrahams f952c72e0e merged from trunk
[SVN r26087]
2004-11-02 14:39:05 +00:00
Dave Abrahams 8e2a00c5cb merged from trunk
[SVN r26086]
2004-11-02 14:33:01 +00:00
Aleksey Gurtovoy 98cfadca96 fix build_monitor link
[SVN r26083]
2004-11-02 08:49:21 +00:00
Vladimir Prus ad065bf73f Merge 1.10->1.11 to RC_1_32_0 (doc fix)
[SVN r26082]
2004-11-02 07:42:53 +00:00
Aleksey Gurtovoy bc6dc2ec29 mark-expected-failures/@reason handling
[SVN r26080]
2004-11-02 07:12:40 +00:00
Aleksey Gurtovoy 8ded147961 remove moved test from jamfiles
[SVN r26079]
2004-11-02 06:51:22 +00:00
Aleksey Gurtovoy df1f41e1a4 integrate Wieger Wesselink's clarifications on the build process intricacies/pitfalls
[SVN r26078]
2004-11-02 06:31:59 +00:00
Aleksey Gurtovoy 44b77dd2ca fix typos reported on the user list
[SVN r26077]
2004-11-02 05:19:02 +00:00
Aleksey Gurtovoy a02b1a3d6a fix main return type
[SVN r26076]
2004-11-02 05:14:24 +00:00
Robert Ramey 622ccd056c merged correction
[SVN r26075]
2004-11-02 04:36:21 +00:00
Aleksey Gurtovoy 82dbf39c97 fix newly introduced tabs
[SVN r26074]
2004-11-02 04:32:34 +00:00
Jeff Garland cb4565d303 remove local_time_base reference
[SVN r26071]
2004-11-01 22:28:39 +00:00
Jeff Garland 6b91f41f3d fix linking problem
[SVN r26070]
2004-11-01 22:10:01 +00:00
Dave Abrahams b0671cfe4b merged from trunk
[SVN r26068]
2004-11-01 21:24:48 +00:00
nobody 7e6d9fa823 This commit was manufactured by cvs2svn to create branch 'RC_1_32_0'.
[SVN r26066]
2004-11-01 21:18:55 +00:00
Beman Dawes d53ed04ec5 fix failure to remove dangling symbolic link (Walter Landry)
[SVN r26064]
2004-11-01 21:09:25 +00:00
Stefan Slapeta d63740b62e Take back last commit
[SVN r26063]
2004-11-01 18:38:09 +00:00
Stefan Slapeta 78e7b3ef8e control node collapsing by macro
[SVN r26062]
2004-11-01 18:21:46 +00:00
Robert Ramey df79561566 remove space from file names
[SVN r26061]
2004-11-01 17:24:07 +00:00
Robert Ramey 0cb27bb7a6 merge changes
[SVN r26059]
2004-11-01 17:07:35 +00:00
nobody d706fad3c6 This commit was manufactured by cvs2svn to create branch 'RC_1_32_0'.
[SVN r26058]
2004-11-01 16:41:45 +00:00
Robert Ramey b84594f3e8 conflict resolution
[SVN r26054]
2004-11-01 16:22:06 +00:00
Robert Ramey 7ff0c69335 merging from trunk
[SVN r26053]
2004-11-01 16:13:21 +00:00
Dave Abrahams 5b72a3b2e7 merged from trunk
[SVN r26050]
2004-11-01 14:17:40 +00:00
Dave Abrahams b990cdbaae merged from trunk
[SVN r26048]
2004-11-01 14:15:48 +00:00
Aleksey Gurtovoy 986a4990d5 --local accepts unpacked directory as well as tarball
[SVN r26046]
2004-11-01 13:47:47 +00:00
Fernando Cacciola d503911eaf Merged to RC
[SVN r26045]
2004-11-01 13:40:44 +00:00
Aleksey Gurtovoy c2d34565a8 Convert docs to the Boost License 1.0
[SVN r26044]
2004-11-01 11:47:24 +00:00
Aleksey Gurtovoy e7cacee0c3 Convert docs to the Boost License 1.0
[SVN r26043]
2004-11-01 11:37:47 +00:00
Aleksey Gurtovoy 9d2011f4f7 switch to the preferred license wording
[SVN r26042]
2004-11-01 10:38:56 +00:00
Aleksey Gurtovoy 470fed403c switch to the preferred copyright wording
[SVN r26041]
2004-11-01 10:29:02 +00:00
Aleksey Gurtovoy 65c630631b Add tribool to the Misc. category
[SVN r26040]
2004-11-01 07:08:39 +00:00
Aleksey Gurtovoy 3ae386b2f7 Add program_options, fix broken links
[SVN r26039]
2004-11-01 07:01:18 +00:00
Dave Abrahams 15ba1fe3c6 merged from trunk
[SVN r26027]
2004-11-01 00:23:09 +00:00
Aleksey Gurtovoy a01eaf6d66 move userman.pdf in the doc subdirectory
[SVN r26023]
2004-10-31 16:03:42 +00:00
Aleksey Gurtovoy 23a26eee70 fix VC 7.1 toolset name
[SVN r26020]
2004-10-31 15:37:37 +00:00
Aleksey Gurtovoy 034bd03468 add PDF/DocBook/FO links
[SVN r26019]
2004-10-31 14:58:50 +00:00
Aleksey Gurtovoy 7b8e73a496 serialization library markup
[SVN r26018]
2004-10-31 14:02:08 +00:00
Dave Abrahams 5cea071d61 merged from trunk
[SVN r26016]
2004-10-31 12:39:25 +00:00
Misha Bergal 1efa58852c merge regression tools from the main trunk
[SVN r26009]
2004-10-31 12:05:54 +00:00
Aleksey Gurtovoy b4839737c5 value_init_test markup
[SVN r26007]
2004-10-31 10:29:49 +00:00
Aleksey Gurtovoy 46dd16fbf4 variant/Borland markup
[SVN r26006]
2004-10-31 10:17:48 +00:00
Aleksey Gurtovoy ad1ecf8ae5 bump MSVC workaround for 7.0
[SVN r26005]
2004-10-31 10:15:04 +00:00
Aleksey Gurtovoy 66076ee7f0 remove duplicate examples/move missing bits to the example directory
[SVN r26004]
2004-10-31 09:57:19 +00:00
Aleksey Gurtovoy 60941a9394 fix line endings
[SVN r26003]
2004-10-31 09:38:17 +00:00
Aleksey Gurtovoy 12f8cf19a6 more broken links fixes
[SVN r26001]
2004-10-31 09:13:18 +00:00
Aleksey Gurtovoy 40596fe2c5 fix invalid anchor link
[SVN r26000]
2004-10-31 09:07:37 +00:00
Aleksey Gurtovoy 24c2554438 merge changes from the main trunk
[SVN r25999]
2004-10-31 08:25:41 +00:00
Joel de Guzman bb0146768d typo
[SVN r25996]
2004-10-31 06:58:36 +00:00
Aleksey Gurtovoy 902719dcd6 fix tabs
[SVN r25995]
2004-10-31 06:24:07 +00:00
Aleksey Gurtovoy 322b112360 fix broken links
[SVN r25994]
2004-10-31 06:17:30 +00:00
Aleksey Gurtovoy c37cc697af fix tabs
[SVN r25993]
2004-10-31 06:08:02 +00:00
Aleksey Gurtovoy 3eb53c9494 remove tabs
[SVN r25992]
2004-10-31 05:49:38 +00:00
Aleksey Gurtovoy 325d229778 fix broken links
[SVN r25991]
2004-10-31 05:46:37 +00:00
Aleksey Gurtovoy 54cc6d5a64 fix broken links/add placeholders for yet-to-be-written pages
[SVN r25990]
2004-10-31 05:42:03 +00:00
Aleksey Gurtovoy c81a5a7361 fix broken links
[SVN r25989]
2004-10-31 05:29:51 +00:00
Aleksey Gurtovoy 3aa93a5542 fix broken links
[SVN r25988]
2004-10-31 03:03:49 +00:00
Aleksey Gurtovoy 0faacc28fd fix broken links
[SVN r25987]
2004-10-31 02:50:40 +00:00
Joel de Guzman 52b8e8dfb7 Fixed broken links
[SVN r25986]
2004-10-31 01:48:48 +00:00
Aleksey Gurtovoy e7d29a9619 more broken links fixes
[SVN r25984]
2004-10-30 14:43:03 +00:00
Aleksey Gurtovoy 80f7610202 fix libraries.html and other broken links
[SVN r25983]
2004-10-30 14:30:51 +00:00
Aleksey Gurtovoy f139b7edbd move over iterator adaptor examples from 'utility'
[SVN r25979]
2004-10-30 12:52:40 +00:00
Aleksey Gurtovoy cb4836cf83 MSVC/Borland fixes
[SVN r25978]
2004-10-30 11:34:27 +00:00
Joel de Guzman d0812d0ecc Fixed links
[SVN r25977]
2004-10-30 10:39:28 +00:00
Aleksey Gurtovoy a3ccbbf14c is_abstract markup
[SVN r25976]
2004-10-30 10:13:49 +00:00
Aleksey Gurtovoy 62169fa1d0 result_of/GCC markup
[SVN r25975]
2004-10-30 09:48:50 +00:00
Vladimir Prus b190caa79d Merge BBV2 Milestone_10 to RC_1_32_0
[SVN r25974]
2004-10-30 09:42:37 +00:00
Vladimir Prus 208ee9a722 Merge current version of docs from trunk to RC_1_32_0. In particular, this fixes some broken links
[SVN r25973]
2004-10-30 09:35:01 +00:00
Aleksey Gurtovoy 9110a52055 fix ref_ct_test.cpp for Borland
[SVN r25972]
2004-10-30 09:34:26 +00:00
Aleksey Gurtovoy 4d005511f2 fix reference wrapper metafunction to handle cv-qualified type
[SVN r25971]
2004-10-30 09:33:27 +00:00
Vladimir Prus aa094c2411 Merged 1.5->1.6 from trunk to RC_1_32_0
[SVN r25969]
2004-10-30 08:34:09 +00:00
Vladimir Prus 1c173160d2 Merge 1.4->1.7 from trunk to RC_1_32
[SVN r25967]
2004-10-30 08:30:02 +00:00
Aleksey Gurtovoy 67e7ccf48d check for STLPORT instead of specific compiler
[SVN r25965]
2004-10-30 08:27:47 +00:00
Aleksey Gurtovoy 53949cf019 more Borland fixes
[SVN r25964]
2004-10-30 08:22:23 +00:00
Aleksey Gurtovoy dd3b0e96e9 invert incorrect Borland check
[SVN r25963]
2004-10-30 08:20:20 +00:00
Aleksey Gurtovoy 8af7d2ab6b make value_init_test pass for compilers with no ADL support
[SVN r25962]
2004-10-30 08:07:25 +00:00
Aleksey Gurtovoy 9d082d88b5 fix Python markup typos
[SVN r25961]
2004-10-30 07:42:29 +00:00
Aleksey Gurtovoy 29189ff7b8 fix typo
[SVN r25960]
2004-10-30 06:36:22 +00:00
Rene Rivera 2d20fd7853 Fixed header scanning to restore detection of secondary header dependencies. Three basic problems fixed:
* The scan regex had spaces instead of tabs in some places. So if an include happen to have tabs it would never be detected.
* The matching for <>, and "" includes generated extra matches with and without the brakets, or quotes.
* The SYSHDRS were not getting added, and hence not considered in search.
(merge from HEAD)


[SVN r25959]
2004-10-30 06:35:41 +00:00
Aleksey Gurtovoy a2e3edf22e numeric ops fixes
[SVN r25958]
2004-10-30 06:26:16 +00:00
Aleksey Gurtovoy 3fb7153d4c fix Borland regression
[SVN r25956]
2004-10-30 06:10:35 +00:00
Aleksey Gurtovoy 2fb06cc969 fix broken links
[SVN r25955]
2004-10-30 04:34:07 +00:00
Aleksey Gurtovoy f2ce8eca19 fix broken links
[SVN r25954]
2004-10-30 04:00:14 +00:00
Aleksey Gurtovoy cc19b4035c revert accidentally merge main trunk changes
[SVN r25953]
2004-10-30 03:33:19 +00:00
Aleksey Gurtovoy 85c946f07b merge regression.py changes from the main trunk
[SVN r25952]
2004-10-30 02:18:06 +00:00
Jaakko Järvi 673dc8f734 Commented out a bit of false information
[SVN r25951]
2004-10-29 20:41:15 +00:00
Daniel Frey e899a5c496 Merged fix for link to function_output_iterator
[SVN r25950]
2004-10-29 19:27:28 +00:00
Douglas Gregor 376a543aed Removed tabs from files
[SVN r25946]
2004-10-29 12:44:13 +00:00
Douglas Gregor 7cbb7facdd Added tribool lib
[SVN r25945]
2004-10-29 12:43:34 +00:00
John Maddock f044dff5e6 Improved Jam licence handling (again)
Added --version option.


[SVN r25938]
2004-10-29 11:22:33 +00:00
Aleksey Gurtovoy 166a61fbb8 fix BoostBook/broken links/invalid filenames/etc.
[SVN r25935]
2004-10-29 10:40:32 +00:00
Aleksey Gurtovoy 31a56812e7 fix BoostBook/broken links/invalid filenames/etc.
[SVN r25934]
2004-10-29 10:33:35 +00:00
Aleksey Gurtovoy 0ed2dba6b9 fix BoostBook/broken links/invalid filenames/etc.
[SVN r25933]
2004-10-29 10:23:48 +00:00
Aleksey Gurtovoy 43890e2314 fix BoostBook/broken links/invalid filenames/etc.
[SVN r25931]
2004-10-29 09:40:12 +00:00
Victor A. Wagner Jr. 43624baa76 fix to the VC8.0 regrssion test. Comments in the source, this was a bug just
waiting to happen as soon as some new string implementation came along.


[SVN r25927]
2004-10-29 06:27:24 +00:00
Aleksey Gurtovoy 61bfce9f6e Python/Spirit markup
[SVN r25926]
2004-10-29 04:42:08 +00:00
Aleksey Gurtovoy 47d5c20852 merged const_argument fixes from the main trunk
[SVN r25925]
2004-10-29 03:21:18 +00:00
Aleksey Gurtovoy 03a22f9eee more VC 8.0 markup
[SVN r25923]
2004-10-29 01:53:03 +00:00
Aleksey Gurtovoy 26e4576380 Date-time/VC 8.0 markup
[SVN r25922]
2004-10-29 01:24:34 +00:00
Rene Rivera 0e681366b0 Fix target-id-of and target-path-of to not throw away extra grist prefixes when more than on is present. (merge from HEAD)
[SVN r25920]
2004-10-28 20:07:53 +00:00
Aleksey Gurtovoy 9cec1a3858 add portability check
[SVN r25917]
2004-10-28 12:19:01 +00:00
John Maddock 3479f71977 Merged added copyrights from main branch.
[SVN r25913]
2004-10-28 11:06:12 +00:00
Michael Stevens 598636acff better links to Effective uBLAS
[SVN r25908]
2004-10-28 07:02:56 +00:00
Gennadiy Rozental e20a1eec13 Boost.Test release notes
[SVN r25907]
2004-10-28 06:50:16 +00:00
Aleksey Gurtovoy 523cd6ee1a fix nonconforming filenames
[SVN r25906]
2004-10-28 04:44:32 +00:00
Eric Niebler bfa270e276 merged new navigation icons from trunk to branch
[SVN r25901]
2004-10-27 17:23:31 +00:00
Eric Niebler afbe7e4f86 merged new stylesheet from trunk to branch
[SVN r25899]
2004-10-27 16:54:36 +00:00
Rene Rivera f0e17e1f5f Fix missing close ']' when Darwin special case for ABI compat was removed.
[SVN r25898]
2004-10-27 16:51:49 +00:00
John Maddock 0b7c0844e3 Merged changes from main branch: better handling of Bison files (and licences).
[SVN r25889]
2004-10-27 11:51:46 +00:00
John Maddock 5e36a79c67 Added original jam copyrights.
[SVN r25888]
2004-10-27 11:45:36 +00:00
Douglas Gregor ffdf7730e3 Fix edge removal performance bug
[SVN r25880]
2004-10-27 06:21:51 +00:00
Douglas Gregor 2d5946c0f0 build instructions added
[SVN r25879]
2004-10-27 06:21:21 +00:00
Pavol Droba 0bb4870f1f forgotten "using" added
regex_finder and regex_formatter pulled to the boost namespace


[SVN r25878]
2004-10-26 21:45:49 +00:00
Aleksey Gurtovoy af49605fe0 merged gcc 2.95 fixes from the main trunk
[SVN r25876]
2004-10-26 14:57:30 +00:00
Markus Schöpflin fe08d0b4cf Changed template instantiation mode from "-tlocal" to "-implicit_local".
[SVN r25870]
2004-10-26 10:05:51 +00:00
Beman Dawes 359adffb36 Quiet gcc warning (Lars Gullik Bjønne)
[SVN r25866]
2004-10-25 17:04:01 +00:00
John Maddock f0d327f998 BSL updates based on permissions in blanket-permission.txt
[SVN r25862]
2004-10-25 11:51:16 +00:00
John Maddock 54c20b0e7b Merged copyright additions from main branch
[SVN r25861]
2004-10-25 10:52:47 +00:00
John Maddock 5440bc7b30 Merged copyright declaration fixups from main trunk
[SVN r25860]
2004-10-25 10:49:26 +00:00
John Maddock e83a662b92 Merged newly fixed copyrights
[SVN r25859]
2004-10-25 10:39:14 +00:00
Paul Mensonides 81c583df9d ..
[SVN r25858]
2004-10-25 00:23:59 +00:00
nobody baf67e47cb This commit was manufactured by cvs2svn to create branch 'RC_1_32_0'.
[SVN r25857]
2004-10-24 23:52:56 +00:00
Robert Ramey 657f03612a improve test
[SVN r25852]
2004-10-24 22:22:27 +00:00
Aleksey Gurtovoy f237f73a89 merge tru64cxx fixes from the main trunk
[SVN r25851]
2004-10-24 08:27:10 +00:00
Aleksey Gurtovoy 54d6b4fdb5 merge fixes from the main trunk
[SVN r25849]
2004-10-24 07:32:42 +00:00
Aleksey Gurtovoy ba14127364 merge numeric protocol fixes from the main trunk
[SVN r25847]
2004-10-24 06:36:25 +00:00
Aleksey Gurtovoy d38097b72e merge numeric protocol fixes from the main trunk
[SVN r25846]
2004-10-24 06:31:11 +00:00
Michael Stevens e3810b25e2 special darwin tool detection does not work
[SVN r25843]
2004-10-23 17:09:07 +00:00
Michael Stevens c6528e30eb uBLAS tru64 test name was changed
[SVN r25842]
2004-10-23 17:08:12 +00:00
Robert Ramey 09d9131be9 correct roguewave version # in workaround
[SVN r25829]
2004-10-22 06:04:32 +00:00
Robert Ramey 87e48ad9b7 add padding to binary base64 text
[SVN r25828]
2004-10-22 06:00:32 +00:00
Gennadiy Rozental f77636002d email fixed
[SVN r25825]
2004-10-22 01:23:19 +00:00
Beman Dawes 1f3ef752b4 Add Gennadiy
[SVN r25823]
2004-10-21 19:54:46 +00:00
nobody b3083ed12f This commit was manufactured by cvs2svn to create branch 'RC_1_32_0'.
[SVN r25822]
2004-10-21 19:45:21 +00:00
Michael Stevens 3c11e582b3 Use storage header from new header dependencies
[SVN r25812]
2004-10-20 16:21:26 +00:00
Michael Stevens 43724aa637 add no exception which is easier to debug
[SVN r25811]
2004-10-20 16:20:18 +00:00
Michael Stevens a609c88a70 merge sparse non_zeros fix commited just before merge
[SVN r25808]
2004-10-20 13:07:19 +00:00
nobody c633112eb5 This commit was manufactured by cvs2svn to create branch 'RC_1_32_0'.
[SVN r25797]
2004-10-20 08:26:43 +00:00
100 changed files with 2480 additions and 2634 deletions
+212 -212
View File
@@ -1,222 +1,86 @@
[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
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
fetchRecurseSubmodules = on-demand
[submodule "preprocessor"]
path = libs/preprocessor
url = ../preprocessor.git
fetchRecurseSubmodules = on-demand
[submodule "lambda"]
path = libs/lambda
url = ../lambda.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
fetchRecurseSubmodules = on-demand
[submodule "mpl"]
path = libs/mpl
url = ../mpl.git
fetchRecurseSubmodules = on-demand
[submodule "range"]
path = libs/range
url = ../range.git
fetchRecurseSubmodules = on-demand
[submodule "serialization"]
path = libs/serialization
url = ../serialization.git
fetchRecurseSubmodules = on-demand
[submodule "numeric_conversion"]
path = libs/numeric/conversion
url = ../numeric_conversion.git
fetchRecurseSubmodules = on-demand
[submodule "assign"]
path = libs/assign
url = ../assign.git
fetchRecurseSubmodules = on-demand
[submodule "logic"]
path = libs/logic
url = ../logic.git
fetchRecurseSubmodules = on-demand
[submodule "exception"]
path = libs/exception
url = ../exception.git
fetchRecurseSubmodules = on-demand
[submodule "statechart"]
path = libs/statechart
url = ../statechart.git
fetchRecurseSubmodules = on-demand
[submodule "variant"]
path = libs/variant
url = ../variant.git
fetchRecurseSubmodules = on-demand
[submodule "interval"]
path = libs/numeric/interval
url = ../interval.git
[submodule "filesystem"]
path = libs/filesystem
url = ../filesystem.git
fetchRecurseSubmodules = on-demand
[submodule "optional"]
path = libs/optional
url = ../optional.git
fetchRecurseSubmodules = on-demand
[submodule "graph"]
path = libs/graph
url = ../graph.git
fetchRecurseSubmodules = on-demand
[submodule "build"]
path = tools/build
url = ../build.git
fetchRecurseSubmodules = on-demand
[submodule "iterator"]
path = libs/iterator
url = ../iterator.git
fetchRecurseSubmodules = on-demand
[submodule "dynamic_bitset"]
path = libs/dynamic_bitset
url = ../dynamic_bitset.git
fetchRecurseSubmodules = on-demand
[submodule "serialization"]
path = libs/serialization
url = ../serialization.git
fetchRecurseSubmodules = on-demand
[submodule "math"]
path = libs/math
url = ../math.git
fetchRecurseSubmodules = on-demand
[submodule "assign"]
path = libs/assign
url = ../assign.git
fetchRecurseSubmodules = on-demand
[submodule "detail"]
path = libs/detail
url = ../detail.git
fetchRecurseSubmodules = on-demand
[submodule "io"]
path = libs/io
url = ../io.git
fetchRecurseSubmodules = on-demand
[submodule "mpl"]
path = libs/mpl
url = ../mpl.git
fetchRecurseSubmodules = on-demand
[submodule "algorithm"]
path = libs/algorithm
url = ../algorithm.git
fetchRecurseSubmodules = on-demand
[submodule "python"]
path = libs/python
url = ../python.git
fetchRecurseSubmodules = on-demand
[submodule "timer"]
path = libs/timer
url = ../timer.git
fetchRecurseSubmodules = on-demand
[submodule "pool"]
path = libs/pool
url = ../pool.git
fetchRecurseSubmodules = on-demand
[submodule "bcp"]
path = tools/bcp
url = ../bcp.git
fetchRecurseSubmodules = on-demand
[submodule "spirit"]
path = libs/spirit
url = ../spirit.git
[submodule "compose"]
path = libs/compose
url = ../compose.git
fetchRecurseSubmodules = on-demand
[submodule "date_time"]
path = libs/date_time
url = ../date_time.git
fetchRecurseSubmodules = on-demand
[submodule "compatibility"]
path = libs/compatibility
url = ../compatibility.git
fetchRecurseSubmodules = on-demand
[submodule "inspect"]
path = tools/inspect
@@ -226,19 +90,155 @@
path = tools/boostbook
url = ../boostbook.git
fetchRecurseSubmodules = on-demand
[submodule "filesystem"]
path = libs/filesystem
url = ../filesystem.git
[submodule "disjoint_sets"]
path = libs/disjoint_sets
url = ../disjoint_sets.git
fetchRecurseSubmodules = on-demand
[submodule "utility"]
path = libs/utility
url = ../utility.git
fetchRecurseSubmodules = on-demand
[submodule "functional"]
path = libs/functional
url = ../functional.git
fetchRecurseSubmodules = on-demand
[submodule "config"]
path = libs/config
url = ../config.git
fetchRecurseSubmodules = on-demand
[submodule "multi_index"]
path = libs/multi_index
url = ../multi_index.git
fetchRecurseSubmodules = on-demand
[submodule "format"]
path = libs/format
url = ../format.git
fetchRecurseSubmodules = on-demand
[submodule "multi_array"]
path = libs/multi_array
url = ../multi_array.git
fetchRecurseSubmodules = on-demand
[submodule "interval"]
path = libs/numeric/interval
url = ../interval.git
fetchRecurseSubmodules = on-demand
[submodule "integer"]
path = libs/integer
url = ../integer.git
fetchRecurseSubmodules = on-demand
[submodule "ublas"]
path = libs/numeric/ublas
url = ../ublas.git
fetchRecurseSubmodules = on-demand
[submodule "type_traits"]
path = libs/type_traits
url = ../type_traits.git
fetchRecurseSubmodules = on-demand
[submodule "numeric_conversion"]
path = libs/numeric/conversion
url = ../numeric_conversion.git
fetchRecurseSubmodules = on-demand
[submodule "property_map"]
path = libs/property_map
url = ../property_map.git
fetchRecurseSubmodules = on-demand
[submodule "regex"]
path = libs/regex
url = ../regex.git
fetchRecurseSubmodules = on-demand
[submodule "rational"]
path = libs/rational
url = ../rational.git
fetchRecurseSubmodules = on-demand
[submodule "range"]
path = libs/range
url = ../range.git
fetchRecurseSubmodules = on-demand
[submodule "program_options"]
path = libs/program_options
url = ../program_options.git
fetchRecurseSubmodules = on-demand
[submodule "algorithm"]
path = libs/algorithm
url = ../algorithm.git
[submodule "function"]
path = libs/function
url = ../function.git
fetchRecurseSubmodules = on-demand
[submodule "random"]
path = libs/random
url = ../random.git
fetchRecurseSubmodules = on-demand
[submodule "concept_check"]
path = libs/concept_check
url = ../concept_check.git
fetchRecurseSubmodules = on-demand
[submodule "thread"]
path = libs/thread
url = ../thread.git
fetchRecurseSubmodules = on-demand
[submodule "signals"]
path = libs/signals
url = ../signals.git
fetchRecurseSubmodules = on-demand
[submodule "test"]
path = libs/test
url = ../test.git
fetchRecurseSubmodules = on-demand
[submodule "static_assert"]
path = libs/static_assert
url = ../static_assert.git
fetchRecurseSubmodules = on-demand
[submodule "tuple"]
path = libs/tuple
url = ../tuple.git
fetchRecurseSubmodules = on-demand
[submodule "logic"]
path = libs/logic
url = ../logic.git
fetchRecurseSubmodules = on-demand
[submodule "tokenizer"]
path = libs/tokenizer
url = ../tokenizer.git
fetchRecurseSubmodules = on-demand
[submodule "spirit"]
path = libs/spirit
url = ../spirit.git
fetchRecurseSubmodules = on-demand
[submodule "exception"]
path = libs/exception
url = ../exception.git
fetchRecurseSubmodules = on-demand
[submodule "conversion"]
path = libs/conversion
url = ../conversion.git
fetchRecurseSubmodules = on-demand
[submodule "lambda"]
path = libs/lambda
url = ../lambda.git
fetchRecurseSubmodules = on-demand
[submodule "crc"]
path = libs/crc
url = ../crc.git
fetchRecurseSubmodules = on-demand
[submodule "bind"]
path = libs/bind
url = ../bind.git
fetchRecurseSubmodules = on-demand
[submodule "array"]
path = libs/array
url = ../array.git
fetchRecurseSubmodules = on-demand
[submodule "preprocessor"]
path = libs/preprocessor
url = ../preprocessor.git
fetchRecurseSubmodules = on-demand
[submodule "any"]
path = libs/any
url = ../any.git
fetchRecurseSubmodules = on-demand
[submodule "variant"]
path = libs/variant
url = ../variant.git
fetchRecurseSubmodules = on-demand
[submodule "log"]
path = libs/log
url = ../log.git
fetchRecurseSubmodules = on-demand
-859
View File
@@ -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 &quot;do as little as
possible&quot; 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: &quot;I wonder what's
in here?&quot;, 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 &quot;<code>cvs checkout regex</code>&quot;
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 &quot;as is&quot;</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 &quot;occasional developers&quot;
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 &quot;wrapper compilers&quot;
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 &quot;boost-root/src/libname/boost&quot;,
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 &lt;boost/something.hpp&gt;</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 &lt;rw/thread.h&gt; // 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 &quot;non-end user&quot; 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 &quot;numeric&quot; 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 &quot;boost_1_1_9/&quot;
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 &quot;<code>boost-root/development/library-name/</code>&quot;
that internally mirrors the directory structure of <code>boost-root/</code>,
to contain development code for library &quot;library-name&quot;.
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 &quot;<code>cvs checkout
development&quot;</code> instead of &quot;<code>cvs
checkout boost&quot;</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 &quot;hidden&quot;
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
&quot;headers only&quot;, 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 &quot;optimally
branched&quot;</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 &quot;discoverable&quot;
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 &quot;distil&quot; 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%">&nbsp;</td>
<td valign="top" width="44%" bgcolor="#008080">Directory</td>
<td valign="top" width="43%" bgcolor="#008080">Description</td>
<td valign="top" width="7%">&nbsp;</td>
</tr>
<tr>
<td valign="top" width="6%">&nbsp;</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 &quot;library-name.hpp&quot;</td>
<td valign="top" width="7%">&nbsp;</td>
</tr>
<tr>
<td valign="top" width="6%">&nbsp;</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 &quot;expert-user&quot; non-entry
point headers.</td>
<td valign="top" width="7%">&nbsp;</td>
</tr>
<tr>
<td valign="top" width="6%">&nbsp;</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%">&nbsp;</td>
</tr>
<tr>
<td valign="top" width="6%">&nbsp;</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%">&nbsp;</td>
</tr>
<tr>
<td valign="top" width="6%">&nbsp;</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%">&nbsp;</td>
</tr>
<tr>
<td valign="top" width="6%">&nbsp;</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%">&nbsp;</td>
</tr>
<tr>
<td valign="top" width="6%">&nbsp;</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%">&nbsp;</td>
</tr>
<tr>
<td valign="top" width="6%">&nbsp;</td>
<td valign="top" width="44%" bgcolor="#C0C0C0">Boost-root/docs/library-name/</td>
<td valign="top" width="43%" bgcolor="#C0C0C0">All
documentation for &quot;library-name&quot;; must include
an index.htm file.</td>
<td valign="top" width="7%">&nbsp;</td>
</tr>
<tr>
<td>&nbsp;</td>
<td valign="top" bgcolor="#C0C0C0">Boost-root/licence</td>
<td bgcolor="#C0C0C0">A &quot;generic&quot; 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>&nbsp;</td>
</tr>
<tr>
<td valign="top" width="6%">&nbsp;</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 &quot;library-name&quot;. 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%">&nbsp;</td>
</tr>
<tr>
<td valign="top" width="6%">&nbsp;</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 &quot;library-name&quot;. 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%">&nbsp;</td>
</tr>
<tr>
<td valign="top" width="6%">&nbsp;</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%">&nbsp;</td>
</tr>
<tr>
<td valign="top" width="6%">&nbsp;</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%">&nbsp;</td>
</tr>
</table>
<p>&nbsp;</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
&quot;intermingle&quot; 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>&nbsp;</p>
<p>There were a couple of other directory structures that were
evaluated while preparing this document:</p>
<p><i>The &quot;half way house structure&quot;:</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 &quot;skinny root structure&quot;:</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 &quot;discoverable&quot; than the one presented here - my
immediate reaction was &quot;where has everything gone&quot; - 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
View File
@@ -9,5 +9,6 @@ boostbook doc : src/boost.xml
<dependency>../libs/program_options/doc//autodoc.xml
<dependency>../libs/algorithm/string/doc//autodoc.xml
<dependency>../libs/logic/doc//reference.xml
<xsl:param>boost.libraries=../../libs/libraries.htm
;
+276 -119
View File
@@ -1,26 +1,102 @@
th
/*=============================================================================
Copyright (c) 2002 2004 Joel de Guzman, Eric Niebler, Rene Rivera
http://spirit.sourceforge.net/
Use, modification and distribution is subject to the Boost Software
License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
/* CSS based on w3c documentation which I like a lot, and the classic Spirit
documentation. */
/* Body defaults */
body
{
font-weight: bold;
text-align: center;
padding: 2em 1em 2em 1em;
margin: 1em 1em 1em 1em;
font-family: sans-serif;
}
a img{ border: 0.1em solid black; }
.title, .refnamediv h2, .standalone-title
/* Paragraphs */
p
{
font-weight: bold;
font-size: 2pc;
font-family: Times New Roman;
margin-bottom: 1pc;
text-align: justify;
}
pre.synopsis
{
margin: 1pc 4% 0pc 4%;
padding: 0.5pc 0.5pc 0.5pc 0.5pc;
}
/* Headings */
h1, h2, h3, h4, h5, h6 { text-align: left; margin-top: 2pc; }
h1 { font: 170% sans-serif }
h2 { font: bold 140% sans-serif }
h3 { font: 120% sans-serif }
h4 { font: bold 100% sans-serif }
h5 { font: italic 100% sans-serif }
h6 { font: italic 100% sans-serif }
/* Unordered lists */
ul
{
text-align: justify;
}
/* Links */
a
{
text-decoration: none; /* no underline */
}
a:hover
{
text-decoration: underline;
}
/* Top page title */
title, h1.title, h2.title, h3.title,
h4.title, h5.title, h6.title,
.refentrytitle
{
font-weight: bold;
font-size: 2pc;
margin-bottom: 1pc;
}
/* Spirit style navigation */
.spirit-nav
{
text-align: right;
}
.spirit-nav a
{
color: white;
padding-left: 0.5em;
}
.spirit-nav img
{
border-width: 0px;
}
/* Program listing box */
.programlisting, .screen
{
display: block;
margin-left: 4%;
margin-right: 4%;
padding: 0.5pc 0.5pc 0.5pc 0.5pc;
}
/* Table of contents */
.toc
{
margin-left: 15%;
margin-right: 15%;
margin-top: 1pc;
margin-bottom: 0pc;
padding: 0.5pc;
margin: 1pc 4% 0pc 4%;
padding: 0.5pc 0.5pc 0.5pc 0.5pc;
}
.boost-toc
@@ -29,158 +105,239 @@ a img{ border: 0.1em solid black; }
padding: 0.5pc;
}
.spirit-nav
/* Tables */
.table-title, div.table p.title
{
text-align: right;
margin-left: 4%;
padding-right: 0.5em;
padding-left: 0.5em;
font-size: 120%;
}
.spirit-nav a
.informaltable table, .table table
{
padding-left: 0.5em;
width: 92%;
margin-left: 4%;
margin-right: 4%;
}
div pre.programlisting, .refsynopsisdiv
div.informaltable table, div.table table
{
margin-left: 3pc;
margin-right: 3pc;
padding: 4px 4px 4px 4px;
}
.computeroutput, .command
div.informaltable table tr td, div.table table tr td
{
font-family: Lucida Console;
font-size: 80%;
padding: 0.5em 0.5em 0.5em 0.5em;
text-align: justify;
}
.title, .refnamediv h2
div.informaltable table tr th, div.table table tr th
{
text-align: center;
padding: 0.5em 0.5em 0.5em 0.5em;
border: 1pt solid white;
}
.section .section .title, .chapter .section .title, .table .title
/* inlined images */
.inlinemediaobject
{
text-align: left;
}
.informaltable table
{
width: 100%;
}
i.firstterm
{
font-style: normal;
font-weight: bold;
padding: 0.5em 0.5em 0.5em 0.5em;
}
/* tone down the title of Parameter lists */
div.variablelist p.title
{
font-weight: bold;
font-size: 100%;
text-align: left;
background-color: white;
font-weight: bold;
font-size: 100%;
text-align: left;
}
/* tabularize parameter lists */
div.variablelist dl dt
{
float: left;
clear: left;
font-style: italic;
float: left;
clear: left;
display: block;
font-style: italic;
}
div.variablelist dl dd
{
padding-left: 8pc;
display: block;
clear: right;
padding-left: 8pc;
}
/* title of books and articles in bibliographies */
span.title
{
font-style: italic;
}
/* tips, notes and warnings done in Spirit style */
div.tip, div.note, div.warning
{
position: relative;
padding: 0.5em;
border: 0.5pt solid white;
}
div.tip .title, div.note .title, div.warning .title
{
display: block;
font: bold xx-small sans-serif;
margin: 0;
padding: 0;
position: absolute;
left: -4em;
top: 0em;
height: 25px;
width: 24px;
text-indent: 32px;
overflow: hidden;
z-index: 2;
}
div.tip .title
{
background: url(images/tip.png);
}
div.note .title
{
background: url(images/note.png);
}
div.warning .title
{
background: url(images/caution.png);
}
@media screen
{
a{ color: blue; }
a
{
color: #005a9c;
}
th, .title, .refnamediv h2
{
background-color: lightskyblue;
}
a:visited
{
color: #9c5a9c;
}
span.title
{
background-color: white;
font-size: 100%;
font-weight: normal;
}
/* Syntax Highlighting */
.keyword { color: #0000AA; font-weight: bold; }
.identifier {}
.special { color: #707070; }
.preprocessor { color: #402080; font-weight: bold; }
.char { color: teal; }
.comment { color: #800000; }
.string { color: teal; }
.number { color: teal; }
.copyright { color: #666666; font-size: small; }
.white_bkd { background-color: #FFFFFF; }
.dk_grey_bkd { background-color: #999999; }
.section .section .title, .chapter .section .title, .table .title
{
background-color: white;
}
pre.synopsis
{
background-color: #f3f3f3;
}
.table table, div.informaltable table, .section-title
{
background-color: #EEE;
}
.programlisting, .screen
{
background-color: #f3f3f3;
}
.table table tr td, div.informaltable table tr td
{
background-color: #CCC;
}
/* Table of contents */
.toc
{
background-color: #f3f3f3;
}
.programlisting, .table-programlisting
{
background-color: #EED;
border: 0.2em ridge #EED;
padding: 1pc;
}
div.informaltable table tr td, div.table table tr td
{
background-color: #F3F3F3;
border: 1pt solid white;
}
.refsynopsisdiv
{
background-color: lightskyblue;
border: 0.2em ridge cyan;
padding: 1pc;
font-family: Courier, Lucida Console;
}
div.informaltable table tr th, div.table table tr th
{
background-color: #e4e4e4;
}
.boost-head
{
background-color: #007F7F;
border: 0.1em outset #007F7F;
}
div.tip, div.note, div.warning
{
background-color: #F3F3F3;
}
.toc, .boost-toc
{
background-color: #DDD;
border: 0.2em ridge lightcoral;
}
table.boost-head tr td
{
border: 0.1em inset #007F7F;
}
.boost-headelem
{
color: white;
font-family: Arial;
font-weight: bold;
}
span.highlight
{
color: #00A000;
}
}
@media print
{
body{ text-align: justify; }
a{ color: black; }
table{ border: 0pc; }
a
{
color: black;
}
.boost-head, table.boost-head tr td
{
border: 0em;
}
a:visited
{
color: black;
}
.toc{ border: 0.2em solid black; }
.spirit-nav
{
display: none;
}
.table tr td, .table tr th
{
border: 0.1em solid black;
}
/* Syntax Highlighting */
.keyword
{
font-weight: bold;
}
pre.synopsis
{
border: 1px solid gray;
}
.programlisting, .screen
{
border: 1px solid gray;
}
/* Table of contents */
.toc
{
border: 1px solid gray;
}
.informaltable table, .table table
{
border: 1px solid gray;
border-collapse: collapse;
}
div.informaltable table tr td, div.table table tr td
{
border: 1px solid gray;
}
div.informaltable table tr th, div.table table tr th
{
border: 1px solid gray;
}
div.tip, div.note, div.warning
{
border: 1px solid gray;
}
span.highlight
{
font-weight: bold;
}
}
Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 358 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 336 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 334 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 370 B

+12 -12
View File
@@ -11,14 +11,14 @@
Documentation for some libraries is available in alternative formats:
<itemizedlist>
<listitem>
<simpara><ulink url="../boost-doc-html.tar.gz">HTML (tarred, gzipped)</ulink></simpara>
<simpara><ulink url="http://www.boost.org/doc/boost-doc-html.tar.gz">HTML (tarred, gzipped)</ulink></simpara>
</listitem>
<listitem>
<simpara><ulink url="../boost.pdf">PDF</ulink></simpara>
<simpara><ulink url="http://www.boost.org/doc/boost.pdf">PDF</ulink></simpara>
</listitem>
<listitem>
<simpara>
<ulink url="../boost-doc-man.tar.gz">Unix man pages</ulink>
<ulink url="http://www.boost.org/doc/boost-doc-man.tar.gz">Unix man pages</ulink>
</simpara>
</listitem>
<listitem>
@@ -218,7 +218,7 @@
</library>
<library name="Conversion" dirname="conversion" html-only="1"
url="../../libs/conversion/index.htm">
url="../../libs/conversion/index.html">
<libraryinfo>
<author>
<firstname>Dave</firstname>
@@ -264,7 +264,7 @@
</library>
<library name="Format" dirname="format" html-only="1"
url="../../libs/format/index.htm">
url="../../libs/format/index.html">
<libraryinfo>
<author>
<firstname>Samuel</firstname>
@@ -320,7 +320,7 @@
</library>
<library name="Integer" dirname="integer" html-only="1"
url="../../libs/integer/index.htm">
url="../../libs/integer/index.html">
<libraryinfo>
<author>
<firstname>various</firstname>
@@ -583,7 +583,7 @@
<xi:include href="../../libs/bind/doc/ref.xml"/>
<library name="Regex" dirname="regex" html-only="1"
url="../../libs/regex/index.htm">
url="../../libs/regex/index.html">
<libraryinfo>
<author>
<firstname>John</firstname>
@@ -595,7 +595,7 @@
</library>
<library name="Serialization" dirname="serialization" html-only="1"
url="../../libs/serialization/index.htm">
url="../../libs/serialization/index.html">
<libraryinfo>
<author>
<firstname>Robert</firstname>
@@ -609,7 +609,7 @@
<xi:include href="../../libs/signals/doc/signals.xml"/>
<library name="Smart Pointer" dirname="smart_ptr" html-only="1"
url="../../libs/smart_ptr/index.htm">
url="../../libs/smart_ptr/index.html">
<libraryinfo>
<author>
<firstname>Greg</firstname>
@@ -677,7 +677,7 @@
<xi:include href="../../libs/thread/doc/thread.xml"/>
<library name="Timer" dirname="timer" html-only="1"
url="../../libs/timer/index.htm">
url="../../libs/timer/index.html">
<libraryinfo>
<author>
<firstname>Beman</firstname>
@@ -689,7 +689,7 @@
</library>
<library name="Tokenizer" dirname="tokenizer" html-only="1"
url="../../libs/tokenizer/index.htm">
url="../../libs/tokenizer/index.html">
<libraryinfo>
<author>
<firstname>John</firstname>
@@ -715,7 +715,7 @@
</library>
<library name="Type Traits" dirname="type_traits" html-only="1"
url="../../libs/type_traits/index.htm">
url="../../libs/type_traits/index.html">
<libraryinfo>
<author>
<firstname>John</firstname>
Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

+99 -7
View File
@@ -100,7 +100,7 @@
<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="google_logo_40wht.gif" border="0" alt="Google" align="middle" width="128" height="53"></a></td>
<td><a href="http://www.google.com/search"><img src="google_logo_40wht.png" border="0" alt="Google" align="middle" width="128" height="53"></a></td>
<td><input type="text" name="q" size="31" maxlength="255"> <input type="submit" name="sa" value="Google Search">
<input type="hidden" name="cof" value="LW:277;L:http://www.boost.org/boost.png;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>
@@ -115,7 +115,19 @@
<!-- Search Google -->
<h2><a name="Latest News">Latest News</a></h2>
<h3> ??? - Version 1.32.0</h3>
<h3>November 19, 2004 - Version 1.32.0</h3>
<h4>Important - New Toolset Names</h4>
<p>The names of some the Boost.Build
<a href="more/getting_started.html#Tools">toolsets</a>
have been changed to remove the "<code>.</code>" (dot) character and to fix some
other naming inconsistencies. For example, <code>vc7.1</code> toolset was renamed
to become <code>vc-7_1</code>. Please refer to the
<a href="more/getting_started.html#Tools">Supported Toolsets</a> section
of the installation guide for the complete list of the current toolset names.
This change was made as a part of the effort to make the Boost distribution
compatible with ISO 9660 level 2 requirements.</p>
<h4>New Libraries</h4>
@@ -152,7 +164,7 @@
<h4>Updated Libraries</h4>
<ul>
<ul>
<li>Compose: This deprecated library has been removed.</li>
<li><a href="libs/graph/index.html">Graph</a>:
<ul>
@@ -177,9 +189,89 @@
spring layout</a> algorithms.</li>
</ul>
</li>
<li><a href="libs/mpl/doc/index.html">MPL Library</a>:
<ul>
<li>Updated to use the Boost Software License.</li>
<li>New <a href="libs/mpl/doc/index.html">documentation</a>, including a complete <a href="libs/mpl/doc/refmanual.html">reference manual.</a></li>
<li>Major interface changes and improvements, many of which are <em>not</em> backward
compatible. Please refer to the <a href="libs/mpl/doc/tutorial/changes-in-boost-1-32-0.html">
1.32 changelog</a> for the detailed information about upgrading to the new version.
</li>
</ul>
</li>
<li><a href="libs/python/doc/index.html">Python Library</a>:
<ul>
<li>Updated to use the Boost Software License.</li>
<li>A new, <a href="libs/python/doc/tutorial/doc/html/python/exposing.html#python.class_virtual_functions">better method of wrapping classes with virtual functions</a> has been implemented.</li>
<li>Support for the new Python Bool type, thanks to Daniel Holth.</li>
<li>Support for upcoming GCC symbol export control features have been folded in, thanks to Niall Douglas.</li>
<li>Improved support for <code>std::auto_ptr</code>-like types.</li>
<li>Components used by other libraries have been moved out of <code>python/detail</code> and into <code> boost/detail</code> to improve dependency relationships.</li>
<li>Miscellaneous bug fixes and compiler workarounds.</li>
</ul>
</li>
<li><a href="doc/html/signals.html">Signals Library</a>: Introduced deterministic slot ordering, permitting slots to be connected at the beginning or end of slot groups or the slot list itself. Combiners may safely have state and are accessible from the signal.</li>
<li><a href="libs/utility/utility.htm">Utility</a>: class template <a href="libs/utility/utility.htm#result_of">result_of</a> added.</li>
<li><a href="libs/test/index.html">Test Library</a>:
<ul>
<li>namespace names gets shorten; old one still
supported till next release</li>
<li>added proper encoding of XML PCDATA</li>
<li>support for wide string comparison implemented</li>
</ul>
For complete list of changes see Test Library <a href="libs/test/doc/release_notes.html#v1_32_0"> release notes</a>.
</li>
</ul>
<h4>Regression tests</h4>
This release has been extensively tested on a variety of different compilers and platforms.
It is known to contain no regressions against the previous reference release on the
compilers and configurations tested. Please refer to the corresponding
<a href="http://www.meta-comm.com/engineering/boost-regression/1_32_0/">regression reports</a> to see how well your
compiler performs on the new Boost codebase.
<h4>Acknowledgements</h4>
<p>
<img border="0" src="http://boost.sourceforge.net/photos/aleksey_gurtovoy2.jpg" align="left" hspace="10" vspace="5" width="128" height="250">
<a href="people/aleksey_gurtovoy.htm">Aleksey Gurtovoy</a> managed
this release. <a
href="more/release_procedures.htm">Managing
a release</a> at all is an enormous job, and
Aleksey always goes beyond merely meeting
requirements by insisting on the highest
possible quality. The Boost membership owes
him a debt of gratitude.
<p>This release wouldn't have been possible without the dedicated effort of
many, many members of the Boost community who generously contributed their
outstanding expertise, time and energy to making it happen. For patches, bug
fixes, troubleshooting, expert advice, and prompt responses to the release
manager's requests we thank:</p>
<p>David Abrahams, Misha Bergal, Jonathan Brandmeyer, Fernando Cacciola,
Marshall Clow, Christopher Currie, Pavol Droba, Caleb Epstein, Eric Friedman,
Jeff Garland, Michael Glassford, Doug Gregor, Joel de Guzman, Hubert Holin,
Jaakko Järvi, Hartmut Kaiser, Bronek Kozicki, Tarjei Knapstad, Toon Knapen,
Aaron W. LaFramboise, Joaquín M López Muñoz, Christoph Ludwig, John Maddock,
Paul Mensonides, Guillaume Melquiond, Thorsten Ottosen, Vladimir Prus,
Robert Ramey, Rene Rivera, Gennadiy Rozental, Stefan Slapeta, Jonathan
Turkanis, Pavel Vozenilek, Jonathan Wakely, Daryle Walker, Victor A. Wagner Jr.
and Martin Wille.</p>
<p>Also, our special thanks go to: John Maddock for the managing the effort
of converting the majority of the Boost libraries to the <a href="more/license_info.html">Boost Software License</a>,
Eric Niebler and Joel de Guzman for taking on the important job of improving
the Boost documentation's look and feel, and last, but not least, to our regression
test runners, without whom we simply would never have released: Toon Knapen,
Bronek Kozicki, Rene Rivera, Markus Schöpflin, Stefan Slapeta, Victor A.
Wagner Jr. and Martin Wille.
</p>
<p>Thank you everybody!</p>
<h3>January 26, 2004 - Version 1.31.0</h3>
@@ -247,7 +339,7 @@
<li>
<a href="libs/date_time/doc/index.html">Date Time Library:</a> A whole
host of bug fixes, new features, and documentation
improvements. See <a href="libs/date_time/doc/Changes.html"> Date Time
improvements. See <a href="doc/html/date_time/details.html#date_time.changes">Date Time
Change History</a> for details.
<li>
@@ -517,8 +609,8 @@
have been documented.
<li>
<a href="libs/date_time/doc/index.html">Date-Time Library</a> - several fixes
and small additions including an interface change to partial_date. See <a href="libs/date_time/doc/Changes.html">
Date-Time Change History</a>
and small additions including an interface change to partial_date. See
<a href="doc/html/date_time/details.html#date_time.changes">Date-Time Change History</a>
for more details.
<li>
<a href="libs/function/index.html">Function Library</a>
@@ -607,7 +699,7 @@
<!--webbot bot="Timestamp" S-Type="EDITED" S-Format="%d %B, %Y" startspan -->20 October, 2004<!--webbot bot="Timestamp" endspan i-checksum="40407" --></p>
<p>© Copyright Beman Dawes, David Abrahams, 1998-2003.</p>
<p>
Use, modification, and distribution is subject to the Boost Software License,
Distributed under the Boost Software License,
Version 1.0. (See accompanying file <a href="LICENSE_1_0.txt">LICENSE_1_0.txt</a>
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</p>
</body>
+1 -1
Submodule libs/io updated: 84d932365a...d5ebdd4426
+29 -7
View File
@@ -63,6 +63,19 @@ Metaprogramming</a><br>
See <a href="../more/getting_started.html">Getting Started</a> page to find out
how to download, build, and install the libraries.</p>
<p>Documentation for some libraries is available in alternative formats:</p>
<ul type="disc">
<li><a href="http://www.boost.org/doc/boost.pdf" target="_top">PDF</a>
[ <a href="http://www.boost.org/doc/boost.pdf.zip">.zip</a> |
<a href="http://www.boost.org/doc/boost.pdf.gz">.gz</a> |
<a href="http://www.boost.org/doc/boost.pdf.bz2">.bz2</a>
]
</li>
<li><a href="http://www.boost.org/doc/boost-doc-man.tar.gz" target="_top">Unix man pages</a></li>
<li><a href="../doc/boost.docbook" target="_top">DocBook</a></li>
<li><a href="../doc/boost.fo" target="_top">XSL Formatting Objects</a></li>
</ul>
<hr>
<h2>Libraries Listed <a name="Alphabetically">Alphabetically</a></h2>
@@ -161,6 +174,8 @@ how to download, build, and install the libraries.</p>
<li><a href="preprocessor/doc/index.html">preprocessor</a> - Preprocessor
metaprogramming tools including repetition and recursion, from Vesa Karvonen
and Paul Mensonides.</li>
<li><a href="../doc/html/program_options.html">program_options</a> - Access to configuration
data given on command line, in config files and other sources, from Vladimir Prus.</li>
<li><a href="property_map/property_map.html">property map</a>
- Concepts defining interfaces which map key objects to
value objects, from Jeremy Siek.</li>
@@ -182,6 +197,8 @@ how to download, build, and install the libraries.</p>
<li><a href="regex/index.html">regex</a> - Regular expression
library, from John Maddock.</li>
<li><a href="serialization/doc/index.html">serialization</a>
- Serialization for persistence and marshalling, from Robert Ramey</li>
<li><a href="signals/index.html">signals</a> - managed signals &amp;
slots callback implementation, from Doug Gregor.</li>
<li><a href="smart_ptr/index.html">smart_ptr</a> - Five smart
@@ -190,8 +207,6 @@ how to download, build, and install the libraries.</p>
<li><a href="static_assert/static_assert.htm">static_assert</a>
- Static assertions (compile time assertions), from John
Maddock.</li>
<li><a href="serialization/doc/index.html">serialization</a>
- Serialization for persistence and marshalling, from Robert Ramey</li>
<li><a href="spirit/index.html">spirit</a> - LL parser framework&nbsp;
represents parsers directly as EBNF grammars in inlined C++, from Joel de
Guzman and team.</li>
@@ -207,6 +222,7 @@ how to download, build, and install the libraries.</p>
Dawes.</li>
<li><a href="tokenizer/index.html">tokenizer</a> - Break of a string or other
character sequence into a series of tokens, from John Bandela.</li>
<li><a href="../doc/html/tribool.html">tribool</a> - 3-state boolean type library, from Doug Gregor.</li>
<li><a href="tuple/doc/tuple_users_guide.html">tuple</a> - Ease definition of functions returning multiple values, and more,
from Jaakko Järvi.</li>
<li><a href="type_traits/index.html">type_traits</a> -
@@ -453,8 +469,10 @@ how to download, build, and install the libraries.</p>
operations, from Samuel Krempp.</li>
<li><a href="io/doc/ios_state.html">io state savers</a> - Save I/O state to
prevent jumbled data, from Daryle Walker.</li>
<li><a href="../doc/html/program_options.html">program_options</a> - Access to configuration
data given on command line, in config files and other sources, from Vladimir Prus.</li>
<li><a href="serialization/doc/index.html">serialization</a> - Serialization
of arbitrary data for persistence and marshalling</li>
of arbitrary data for persistence and marshalling, from Robert Ramey</li>
<li><a href="assign/index.html">assign</a> - Filling containers
with constant or generated data has never been
easier, from Thorsten Ottosen.
@@ -514,9 +532,12 @@ of arbitrary data for persistence and marshalling</li>
Beman Dawes.</li>
<li><a href="optional/doc/optional.html">optional</a> - Discriminated-union
wrapper for optional values, from Fernando Cacciola.</li>
<li><a href="../doc/html/program_options.html">program_options</a> - Access to configuration
data given on command line, in config files and other sources, from Vladimir Prus.</li>
<li><a href="timer/index.html">timer</a> - Event timer,
progress timer, and progress display classes, from Beman
Dawes.</li>
<li><a href="../doc/html/tribool.html">tribool</a> - 3-state boolean type library, from Doug Gregor.</li>
<li><a href="utility/utility.htm">utility</a> - Class <b>noncopyable</b>
plus <b>checked_delete()</b>, <b>checked_array_delete()</b>, <b>next(),</b>&nbsp;
<b>prior()</b>
@@ -556,9 +577,10 @@ of arbitrary data for persistence and marshalling</li>
s-format="%d %b %Y" startspan -->07 October 2004<!--webbot bot="Timestamp" endspan i-checksum="14890" --></p>
<p>© Copyright Beman Dawes 2000-2004</p>
<p>Use, modification, and distribution are subject to the Boost Software
License, Version 1.0. (See accompanying file <a href="../LICENSE_1_0.txt">
LICENSE_1_0.txt</a> or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">
www.boost.org/LICENSE_1_0.txt</a>)</p>
<p>Distributed under the Boost Software License, Version 1.0.
(See accompanying file <a href="../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)
</p>
</body>
</html>
Submodule
+1
Submodule libs/log added at 6a032b633e
Submodule libs/statechart deleted from 8ab0f8a749
+4 -3
View File
@@ -448,8 +448,9 @@
<!--webbot bot="Timestamp" S-Type="EDITED" S-Format="%d %B, %Y" startspan -->
16 October, 2004<!--webbot bot="Timestamp" endspan i-checksum="40409" --></p>
<p>© Copyright Beman Dawes 2003</p>
<p>Use, modification, and distribution are subject to the Boost Software License,
Version 1.0. (See accompanying file <A href="../LICENSE_1_0.txt">LICENSE_1_0.txt</A>
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</p>
<p> Distributed under the Boost Software License, Version 1.0.
(See accompanying file <a href="../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)
</p>
</body>
</html>
+6 -2
View File
@@ -102,11 +102,15 @@ in the subject if you're submitting to the <a href="http://www.boost.org/more/ma
</ol>
<hr>
<p>Contributed by <a href="../people/aleksey_gurtovoy.htm">Aleksey Gurtovoy</a></p>
<p>Revised <!--webbot bot="Timestamp" s-type="EDITED" s-format="%d %B, %Y" startspan -->18 January, 2002<!--webbot bot="Timestamp" i-checksum="38453" endspan -->
</p>
<p>© Copyright <a href="../people/aleksey_gurtovoy.htm">Aleksey Gurtovoy</a>
2002</p>
<p> Distributed under the Boost Software License, Version 1.0.
(See accompanying file <a href="../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)
</p>
<br>
+4 -4
View File
@@ -207,10 +207,10 @@ understood the issues and felt comfortable discussing them.&nbsp;</p>
</p>
<p>© Beman Dawes 2000</p>
<p> Use, modification, and distribution are subject to the Boost Software
License, Version 1.0. (See accompanying file <a href="../LICENSE_1_0.txt">
LICENSE_1_0.txt</a> or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">
www.boost.org/LICENSE_1_0.txt</a>)</p>
<p> Distributed under the Boost Software License, Version 1.0.
(See accompanying file <a href="../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)
</p>
</body>
+1 -1
View File
@@ -308,7 +308,7 @@ namespace std {
<p><b>Note:</b> The <i>type generator</i> concept has largely been
superseded by the more refined notion of a <a href=
"../libs/mpl/doc/ref/Metafunction.html"><i>metafunction</i></a>. See
"../libs/mpl/doc/refmanual/metafunction.html"><i>metafunction</i></a>. See
<i><a href="http://www.boost-consulting.com/mplbook">C++ Template
Metaprogramming</a></i> for an in-depth discussion of metafunctions.</p>
+987 -1245
View File
File diff suppressed because it is too large Load Diff
+4 -1
View File
@@ -314,7 +314,10 @@ compiler (depending upon the template arguments used).</p>
<hr>
<p>Copyright Dr John Maddock 2001, all rights reserved.</p>
<p><i>© Copyright Dr John Maddock 2001</i></p>
<p><i>Use, modification and distribution are subject to the Boost Software License,
Version 1.0. (See accompanying file <a href="../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">http://www.boost.org/LICENSE_1_0.txt</a>)</i></p>
<p>&nbsp;</p>
+4 -4
View File
@@ -605,9 +605,9 @@ Automatic redirection failed, please go to
04 November, 2003<!--webbot bot="Timestamp" endspan i-checksum="39359" --></p>
<p>
© <a name="Copyright">Copyright</a> Beman Dawes 2003.</p>
<p>
Use, modification, and distribution are subject to the Boost Software License,
Version 1.0. (See accompanying file <a href="../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</p>
<p> Distributed under the Boost Software License, Version 1.0.
(See accompanying file <a href="../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)
</p>
</body>
</html>
+4 -4
View File
@@ -252,10 +252,10 @@ Boost members reviewed drafts of the license. Beman Dawes wrote this web page.</
<!--webbot bot="Timestamp" S-Type="EDITED" S-Format="%d %B, %Y" startspan -->27 August, 2004<!--webbot bot="Timestamp" endspan i-checksum="39365" --></p>
<p> © Copyright 2003-2004 Beman Dawes, Daniel Frey, David Abrahams.</p>
<p> Use, modification, and distribution are subject to the Boost Software
License, Version 1.0. (See accompanying file <a href="../LICENSE_1_0.txt">
LICENSE_1_0.txt</a> or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">
www.boost.org/LICENSE_1_0.txt</a>)</p>
<p> Distributed under the Boost Software License, Version 1.0.
(See accompanying file <a href="../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)
</p>
</body>
+4 -3
View File
@@ -46,9 +46,10 @@ Acknowledgements</a> section! </p>
<p>© Copyright <a href="../people/aleksey_gurtovoy.htm">Aleksey Gurtovoy</a>
2002</p>
<p>Use, modification, and distribution are subject to the Boost Software License,
Version 1.0. (See accompanying file <a href="../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or copy at
<a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</p>
<p> Distributed under the Boost Software License, Version 1.0.
(See accompanying file <a href="../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)
</p>
</body>
+1 -1
View File
@@ -67,7 +67,7 @@ useful components which ease the construction of test programs.</p>
<a href="../libs/test/doc/components/test_tools/index.html">Test Tools</a> for the construction of simple test
programs that do not need much structure.</li>
<li>Use the library's
<a href="../libs/test/doc/components/unit_test_framework/index.html">Unit Test
<a href="../libs/test/doc/components/utf/index.html">Unit Test
Framework</a> for the construction of more complex test programs that need to
be structured into individual tests
and test suites.</li>
+9 -11
View File
@@ -17,25 +17,23 @@
</tr>
</table>
<p><a href="http://boost.sourceforge.net/photos/aleksey_gurtovoy.jpg"><img border="0" src="http://boost.sourceforge.net/photos/aleksey_gurtovoy_small.jpg" alt="http://boost.sourceforge.net/photos/aleksey_gurtovoy.jpg (12871 bytes)" align="left" hspace="10" vspace="5" width="100" height="120"></a></p>
<p>Aleksey Gurtovoy is just a one Russian guy from Siberia, who now lives and
works in the United States. He is a technical lead in a small software company <a href="http://www.meta-comm.com">
<p>Aleksey Gurtovoy is a Russian guy from Siberia, who now lives and
works in the United States. He is a technical lead at <a href="http://www.meta-comm.com">
MetaCommunications</a>, a job and people which have taught him so much.</p>
<p>He was born in early 1977, has been in love with computers since 1989, and
still has a lot of (exciting) ideas for his &quot;spare time&quot; in the next
few years. The first computer he worked with was DEC PDP-11, and he still has a
kind of nostalgia about this amazing machine. He graduated with honors from
Krasnoyarsk Technical State University in 1998 with a Master Degree in Computer
Science.</p>
still has a lot of exciting ideas for his &quot;spare time&quot; in the next
few years. He graduated with honors from Krasnoyarsk Technical State University in
1998 with a Master Degree in Computer Science.</p>
<p>While being acknowledged as a talented programmer, Aleksey tries to be a
better engineer than he is now and hopes that reading good books will help him
with that task. He reads a lot... One of his favorite books about his
with that task. He reads a lot. One of his favorite books about his
profession is 'The Mythical Man-Month' by Frederic P. Brooks, Jr.</p>
<p>He has been working with C++ since 1993, he loves the language and wants to be
<p>Aleksey has been working with C++ since 1993, he loves the language, and is
involved in its progress. Sometimes you can come across his articles in the <a href="news:comp.lang.c++.moderated">
comp.lang.c++.moderated</a> and <a href="news:comp.std.c++">comp.std.c++</a><a>
newsgroups. The other numerous things Aleksey is interested in include
patterns, object-oriented methodology and programming languages, organization
of software development process and tools &amp; technologies which make
patterns, programming languages, organization
of software development process, and tools &amp; technologies which make
programmer's life easier (e.g. compilers).</p>
<p>He is not married, but he has in mind one great girl he hopes to be with
someday.</p>
+35
View File
@@ -0,0 +1,35 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Gennadiy Rozental</title>
<link rel="stylesheet" href="../boost.css" type="text/css">
</head>
<body>
<table border="1" bgcolor="#007F7F" cellpadding="2">
<tr>
<td bgcolor="#FFFFFF"><img src="../boost.png" alt="boost.png (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="http://boost.sourceforge.net/photos/gennadiy_rozental.jpg"><img
border="0"
src="http://boost.sourceforge.net/photos/gennadiy_rozental_small.jpg"
alt="http://boost.sourceforge.net/photos/gennadiy_rozental.jpg"
align="left" width="100" height="75"></a> Gennadiy Rozental is a software
developer from Ukraine, who now lives in New Jersey, United States and work
for Thomson Financial in New York. He is married, with son and daughter.<p>
Gennadiy graduated from MIPT: Moscow Institute of Physics and Technology
with Master degree in computer science. Ever since Gennadiy has been
programming mostly in C++.<p>
In his spare time he not only works on boost, but also enjoy origami making.<p>
You can contact him by sending mail to rogeeff at mail dot com
</body>
</html>
+5 -1
View File
@@ -180,6 +180,10 @@
<td><a href="mark_rodgers.htm">Mark Rodgers</a></td>
<td><a href="http://boost.sourceforge.net/photos/mark_rodgers.jpg"> <img border="0" src="http://boost.sourceforge.net/photos/mark_rodgers_small.jpg" alt="http://boost.sourceforge.net/photos/mark_rodgers.jpg (23035 bytes)" width="100" height="75"></a></td>
</tr>
<tr>
<td><a href="gennadiy_rozental.htm">Gennadiy Rozental</a></td>
<td><a href="http://boost.sourceforge.net/photos/gennadiy_rozental.jpg"> <img border="0" src="http://boost.sourceforge.net/photos/gennadiy_rozental_small.jpg" alt="http://boost.sourceforge.net/photos/gennadiy_rozental.jpg" width="100" height="75"></a></td>
</tr>
<tr>
<td><a href="jeremy_siek.htm">Jeremy Siek</a></td>
<td><a href="http://boost.sourceforge.net/photos/jeremy_siek.jpg"> <img border="0" src="http://boost.sourceforge.net/photos/jeremy_siek_small.jpg" alt="http://boost.sourceforge.net/photos/jeremy_siek.jpg (12867 bytes)" width="100" height="133"></a></td>
@@ -194,7 +198,7 @@
</tr>
</table>
<p>Revised
<!--webbot bot="Timestamp" S-Type="EDITED" S-Format="%d %B, %Y" startspan -->28 January, 2004<!--webbot bot="Timestamp" endspan i-checksum="38710" -->
<!--webbot bot="Timestamp" S-Type="EDITED" S-Format="%d %B, %Y" startspan -->21 October, 2004<!--webbot bot="Timestamp" endspan i-checksum="38677" -->
</p>
</body>
</html>
+339 -29
View File
@@ -50,7 +50,7 @@
<toolset name="gcc-2.95.3-stlport-4.5.3-linux"/>
<toolset name="mipspro"/>
<note author="P.Droba">
The compiler does not support features that are essential for the library.
The compiler does not support features that are essential for the library.
</note>
</mark-unusable>
</library>
@@ -114,6 +114,7 @@
<toolset name="borland-5_6_4"/>
<toolset name="gcc-2.95.3*"/>
<toolset name="intel-8.0-linux"/>
<toolset name="intel-8.1-linux"/>
<toolset name="gcc-3.4.1*"/>
<toolset name="gcc-3.4.2*"/>
<note refid="27" author="Thorsten Ottosen"/>
@@ -341,6 +342,15 @@
<note author="B. Garst" refid="18,19,20"/>
</mark-failure>
</test>
<test name="teststreams">
<mark-failure>
<toolset name="vc-8_0"/>
<note author="Aleksey Gurtovoy">
The test terminates at run-time due what appears to be a bug
in the standard library implementation.
</note>
</mark-failure>
</test>
<test name="testdate_dll">
<mark-failure>
<toolset name="gcc-2.95.3-stlport-4.5.3-linux"/>
@@ -375,7 +385,6 @@
<test name="dyn_bitset_unit_tests4">
<mark-failure>
<toolset name="cw-9_3"/>
<toolset name="intel-8.0-linux"/>
<note author="Aleksey Gurtovoy" refid="2"/>
</mark-failure>
</test>
@@ -459,6 +468,11 @@
<note refid="17">
</note>
</mark-unusable>
<mark-expected-failures>
<test name="bll_and_function"/>
<toolset name="vc-8_0"/>
<note author="Aleksey Gurtovoy" refid="6"/>
</mark-expected-failures>
</library>
<!-- logic -->
@@ -538,9 +552,8 @@
<mark-expected-failures>
<test name="map"/>
<test name="set"/>
<test name="set_c"/>
<toolset name="borland-5_6_4"/>
<toolset name="msvc*"/>
<toolset name="vc7"/>
<toolset name="gcc-2.95.3*"/>
<toolset name="mipspro"/>
<note author="Aleksey Gurtovoy" date="17 Sep 2004">
@@ -549,6 +562,16 @@
</note>
</mark-expected-failures>
<mark-expected-failures>
<test name="map"/>
<toolset name="msvc*"/>
<toolset name="vc7"/>
<note author="Aleksey Gurtovoy" date="17 Sep 2004">
This is an advanced functionality that hasn't been ported to the deficient
compilers (yet). Patches are welcome!
</note>
</mark-expected-failures>
</library>
@@ -560,8 +583,8 @@
<toolset name="borland-5_5_1"/>
<note author="Alisdair Meredith" date="30 Jan 2004">
<p>
This library has never worked [on Borland 5.5.1 and 5.6.4], and the only tests that 'pass' are
compile-fail tests failing for the wrong reasons!
This library has never worked [on Borland 5.5.1 and 5.6.4], and the only tests
that 'pass' are compile-fail tests failing for the wrong reasons!
</p>
</note>
</mark-unusable>
@@ -703,7 +726,7 @@ for more information.
<toolset name="msvc*"/>
<toolset name="vc7"/>
<note author="Robert Ramey" refid="6">
msvc 6 compiler failure. Sometimes can be worked around
msvc 6 compiler failure. Sometimes can be worked around.
</note>
</mark-expected-failures>
<mark-expected-failures>
@@ -749,8 +772,121 @@ for more information.
<test name="test_shared_ptr*"/>
<toolset name="cw*"/>
<note author="Robert Ramey">
All tests that serialize derived pointers currently fail with Metrowerks Compilers
</note>
All tests that serialize derived pointers currently fail with Metrowerks compilers.
</note>
</mark-expected-failures>
<mark-expected-failures reason="?">
<test name="*_warchive"/>
<test name="test_array_xml_*"/>
<test name="test_binary_xml_*"/>
<test name="test_class_info_load_xml_*"/>
<test name="test_class_info_save_xml_warchive"/>
<test name="test_contained_class_xml_*"/>
<test name="test_cyclic_ptrs_xml_warchive"/>
<test name="test_delete_pointer_xml_*"/>
<test name="test_demo_xml"/>
<test name="test_deque_xml_*"/>
<test name="test_derived_class_ptr_xml_*"/>
<test name="test_derived_class_xml_*"/>
<test name="test_derived_xml_*"/>
<test name="test_diamond_xml_*"/>
<test name="test_exported_xml_*"/>
<test name="test_list_ptrs_xml_*"/>
<test name="test_list_xml_*"/>
<test name="test_map_xml_*"/>
<test name="test_mi_xml_*"/>
<test name="test_mult_archive_types"/>
<test name="test_multiple_ptrs_xml_*"/>
<test name="test_no_rtti_xml_*"/>
<test name="test_non_default_ctor2_xml_*"/>
<test name="test_non_default_ctor_xml_*"/>
<test name="test_non_intrusive_xml_*"/>
<test name="test_null_ptr_xml_*"/>
<test name="test_nvp_xml_*"/>
<test name="test_object_xml_*"/>
<test name="test_optional_xml_*"/>
<test name="test_polymorphic_xml_*"/>
<test name="test_primitive_xml_*"/>
<test name="test_recursion_xml_*"/>
<test name="test_registered_xml_*"/>
<test name="test_set_binary_*"/>
<test name="test_set_text_*"/>
<test name="test_set_xml_*"/>
<test name="test_shared_ptr_xml_*"/>
<test name="test_simple_class_ptr_xml_*"/>
<test name="test_simple_class_xml_*"/>
<test name="test_split_xml_*"/>
<test name="test_tracking_xml_*"/>
<test name="test_unregistered_xml_*"/>
<test name="test_utf8_codecvt"/>
<test name="test_vector_xml_*"/>
<toolset name="iw-7_1-vc6-stlp-4_5_3"/>
<note author="Aleksey Gurtovoy" refid="29"/>
</mark-expected-failures>
<mark-expected-failures reason="?">
<test name="test_class_info_load_text_warchive"/>
<test name="test_const"/>
<test name="test_demo_fast_archive"/>
<test name="test_demo_portable_archive"/>
<test name="test_void_cast"/>
<toolset name="msvc"/>
<note author="Aleksey Gurtovoy" refid="29"/>
</mark-expected-failures>
<mark-expected-failures reason="?">
<test name="test_const"/>
<toolset name="vc7"/>
<note author="Aleksey Gurtovoy" refid="29"/>
</mark-expected-failures>
<mark-expected-failures reason="?">
<test name="test_demo_fast_archive"/>
<test name="test_no_rtti_binary_archive"/>
<test name="test_no_rtti_text_*"/>
<test name="test_no_rtti_xml_*"/>
<test name="test_set_binary_archive"/>
<test name="test_set_text_*"/>
<test name="test_set_xml_*"/>
<toolset name="borland-5_6_4"/>
<note author="Aleksey Gurtovoy" refid="29"/>
</mark-expected-failures>
<mark-expected-failures reason="?">
<test name="test_array_binary_archive"/>
<test name="test_array_text_*"/>
<test name="test_demo_shared_ptr"/>
<test name="test_demo_fast_archive"/>
<test name="test_no_rtti_binary_archive"/>
<test name="test_no_rtti_text_*"/>
<test name="test_no_rtti_xml_*"/>
<toolset name="cw-8_3"/>
<note author="Aleksey Gurtovoy" refid="29"/>
</mark-expected-failures>
<mark-expected-failures reason="?">
<test name="test_demo_shared_ptr"/>
<test name="test_demo_fast_archive"/>
<test name="test_no_rtti_binary_archive"/>
<test name="test_no_rtti_text_*"/>
<test name="test_no_rtti_xml_*"/>
<toolset name="cw-9_3"/>
<note author="Aleksey Gurtovoy" refid="29"/>
</mark-expected-failures>
<mark-expected-failures reason="?">
<test name="test_class_info_load_text_warchive"/>
<toolset name="iw-7_1-vc6"/>
<note author="Aleksey Gurtovoy" refid="29"/>
</mark-expected-failures>
<mark-expected-failures reason="?">
<test name="test_class_info_load_text_warchive"/>
<toolset name="intel-win32-8_0"/>
<note author="Aleksey Gurtovoy" refid="29"/>
</mark-expected-failures>
<mark-expected-failures reason="?">
<test name="test_smart_cast"/>
<toolset name="intel-7.1-linux"/>
<note author="Aleksey Gurtovoy" refid="29"/>
</mark-expected-failures>
<mark-expected-failures reason="?">
<test name="test_class_info_load_*"/>
<toolset name="intel-8.0-linux"/>
<note author="Aleksey Gurtovoy" refid="29"/>
</mark-expected-failures>
</library>
@@ -806,6 +942,7 @@ for more information.
<test name="multi_pass_compile_tests"/>
<test name="repeat_ast_tests*"/>
<toolset name="intel-8.0-linux"/>
<toolset name="intel-8.1-linux"/>
<note author="Aleksey Gurtovoy">
This failure is caused by a compiler bug that manifests itself in the
particular environment/hardware configuration the test has been run in.
@@ -822,7 +959,22 @@ for more information.
been fixed in the latest development "alpha".
</note>
</mark-expected-failures>
<mark-expected-failures>
<test name="escape_char_parser_tests*"/>
<toolset name="intel-7.1-linux"/>
<toolset name="intel-7.1-stdlib-default-linux"/>
<note author="Aleksey Gurtovoy" refid="19"/>
</mark-expected-failures>
<mark-expected-failures>
<test name="escape_char_parser_tests*"/>
<toolset name="iw-7_1-vc6*"/>
<note author="Aleksey Gurtovoy" refid="28"/>
</mark-expected-failures>
<mark-expected-failures>
<test name="chset_tests*"/>
<toolset name="iw-7_1-vc6-stlp-4_5_3"/>
<note author="Aleksey Gurtovoy" refid="28"/>
</mark-expected-failures>
</library>
<!-- function -->
@@ -1097,9 +1249,15 @@ for more information.
<toolset name="borland-5_6_4"/>
<note author="M.Stevens" refid="2"/>
</mark-unusable>
<test name="test1">
<mark-failure>
<toolset name="vc-8_0"/>
<note author="Aleksey Gurtovoy" refid="2"/>
</mark-failure>
</test>
<test name="test2">
<mark-failure>
<toolset name="tru64cxx65"/>
<toolset name="tru64cxx65- 041"/>
<note author="M.Stevens" refid="6"/>
</mark-failure>
</test>
@@ -1207,10 +1365,7 @@ for more information.
<test name="parsers_test_dll"/>
<test name="variable_map_test_dll"/>
<toolset name="mingw-3*"/>
<note>
Due to unresearched issues, the tested functionality is not
currently available for this particular configuration.
</note>
<note author="Aleksey Gurtovoy" refid="29"/>
</mark-expected-failures>
<mark-expected-failures>
@@ -1264,6 +1419,90 @@ for more information.
So technically GCC 2.x is usable if you're careful.
</note>
</mark-expected-failures>
<mark-expected-failures>
<test name="args"/>
<test name="auto_ptr"/>
<test name="back_reference"/>
<test name="ben_scott1"/>
<test name="bienstman1"/>
<test name="bienstman2"/>
<test name="bienstman3"/>
<test name="bienstman4"/>
<test name="bienstman5"/>
<test name="callbacks"/>
<test name="cltree"/>
<test name="const_argument"/>
<test name="crossmod_exception_a"/>
<test name="crossmod_exception_b"/>
<test name="data_members"/>
<test name="defaults"/>
<test name="dict"/>
<test name="docstring"/>
<test name="enum"/>
<test name="exception_translator"/>
<test name="extract"/>
<test name="implicit"/>
<test name="injected"/>
<test name="input_iterator"/>
<test name="int_map_indexing_suite"/>
<test name="iterator"/>
<test name="keywords"/>
<test name="list"/>
<test name="long"/>
<test name="m1"/>
<test name="m2"/>
<test name="map_indexing_suite"/>
<test name="minimal"/>
<test name="module_tail"/>
<test name="multi_arg_constructor"/>
<test name="nested"/>
<test name="object"/>
<test name="opaque"/>
<test name="operators"/>
<test name="pickle1"/>
<test name="pickle2"/>
<test name="pickle3"/>
<test name="pickle4"/>
<test name="polymorphism"/>
<test name="polymorphism2"/>
<test name="properties"/>
<test name="register_ptr"/>
<test name="return_arg"/>
<test name="shared_ptr"/>
<test name="slice"/>
<test name="staticmethod"/>
<test name="str"/>
<test name="test_builtin_converters"/>
<test name="test_pointer_adoption"/>
<test name="tuple"/>
<test name="vector_indexing_suite"/>
<test name="virtual_functions"/>
<toolset name="intel-7.1-linux"/>
<toolset name="intel-8.0-linux"/>
<note author="Aleksey Gurtovoy">
The library is <a href="http://article.gmane.org/gmane.comp.lib.boost.devel/110420">known to work</a>
in this configuration. The failures are due to configuration issues of
the particular testing environment these tests have been run in. The
regression runners and library developers are aware of the problem and
plan to fix it for the next release.
</note>
</mark-expected-failures>
<mark-expected-failures>
<test name="builtin_converters"/>
<test name="extract"/>
<test name="list"/>
<test name="operators"/>
<test name="pickle1"/>
<test name="pickle2"/>
<test name="pickle3"/>
<test name="pickle4"/>
<toolset name="gcc-3.4.2-linux"/>
<note author="Aleksey Gurtovoy">
The test is <a href="http://article.gmane.org/gmane.comp.lib.boost.devel/110671">known to work</a>
in this configuration. The failures are due to configuration issues of
the particular testing environment these tests have been run in.
</note>
</mark-expected-failures>
</library>
<!-- random -->
@@ -1378,6 +1617,12 @@ for more information.
<note author="J. Maddock"/>
</mark-failure>
</test>
<mark-expected-failures>
<test name="regex_regress*"/>
<test name="regex_wide_regress*"/>
<toolset name="vc-8_0"/>
<note author="Aleksey Gurtovoy" refid="6"/>
</mark-expected-failures>
</library>
<!-- signals -->
@@ -1433,6 +1678,26 @@ for more information.
<note author="B. Dawes" refid="3"/>
</mark-expected-failures>
<mark-expected-failures>
<test name="token_iterator_test"/>
<toolset name="msvc-stlport"/>
<note refid="3"/>
</mark-expected-failures>
<mark-expected-failures reason="?">
<test name="token_iterator_test"/>
<toolset name="iw-7_1-vc6"/>
<toolset name="msvc"/>
<toolset name="gcc-3.4.2-linux"/>
<note refid="29"/>
</mark-expected-failures>
<mark-expected-failures reason="?">
<test name="basic_cstring_test"/>
<toolset name="gcc-2.95.3-linux"/>
<note refid="29"/>
</mark-expected-failures>
</library>
@@ -1477,6 +1742,23 @@ for more information.
something else is known to resolve the issue.
</note>
</mark-expected-failures>
<mark-expected-failures>
<test name="test_barrier_lib"/>
<toolset name="vc-8_0"/>
<note author="Aleksey Gurtovoy" refid="6"/>
</mark-expected-failures>
<mark-expected-failures>
<test name="test_thread"/>
<toolset name="vc-7_1"/>
<note author="Aleksey Gurtovoy" refid="6"/>
</mark-expected-failures>
<mark-expected-failures reason="?">
<test name="*_lib"/>
<toolset name="gcc-2.95.3-stlport-4.5.3-linux"/>
<note author="Aleksey Gurtovoy" refid="29"/>
</mark-expected-failures>
</library>
@@ -1529,6 +1811,14 @@ for more information.
<toolset name="msvc"/>
<toolset name="msvc-stlport"/>
<toolset name="vc7"/>
<toolset name="mingw-3_3*"/>
<toolset name="gcc-2*"/>
<toolset name="gcc-3.2*"/>
<toolset name="gcc-3.3*"/>
<note author="Aleksey Gurtovoy">
This functionality is available only on compilers that implement C++ Core Language
<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html#337">Defect Report 337</a>.
</note>
</mark-failure>
</test>
</library>
@@ -1558,14 +1848,25 @@ for more information.
</test>
<test name="result_of_test">
<mark-failure>
<toolset name="borland-5_6_4"/>
<toolset name="borland-5*"/>
<toolset name="cw-8_3*"/>
<toolset name="msvc"/>
<toolset name="msvc-stlport"/>
<toolset name="vc7"/>
<toolset name="gcc-2.95.3*"/>
<note refid="3" author="D. Gregor"/>
</mark-failure>
</test>
<mark-expected-failures>
<test name="value_init_test"/>
<toolset name="msvc*"/>
<toolset name="vc7"/>
<note author="Aleksey Gurtovoy">
This failure is caused by a compiler bug (default-constructed scalar
types are not zero-initialized) that has been fixed in the latest
versions of the compiler (VC 7.1 and greater).
</note>
</mark-expected-failures>
</library>
@@ -1577,8 +1878,6 @@ for more information.
</mark-unusable>
<test name="recursive_variant_test">
<mark-failure>
<toolset name="borland"/>
<toolset name="borland-5_6_4"/>
<toolset name="como-win32"/>
<toolset name="msvc"/>
<toolset name="msvc-stlport"/>
@@ -1586,13 +1885,15 @@ for more information.
<note refid="3"/>
</mark-failure>
</test>
<test name="variant_test1">
<mark-failure>
<toolset name="borland"/>
<toolset name="borland-5_6_4"/>
<note refid="2"/>
</mark-failure>
</test>
<mark-expected-failures>
<test name="recursive_variant_test"/>
<test name="variant_test1"/>
<test name="variant_test5"/>
<test name="variant_visit_test"/>
<toolset name="borland"/>
<toolset name="borland-5_6_4"/>
<note author="Aleksey Gurtovoy" refid="3"/>
</mark-expected-failures>
<test name="variant_reference_test">
<mark-failure>
<toolset name="cw-8_3*"/>
@@ -1618,8 +1919,8 @@ for more information.
</note>
<note id="1">
The failure is caused by a problem in Boost code. The Boost developer is aware of
the problem and plans to fix it.
The failure is caused by a problem in Boost code. The Boost developers is aware of
the problem and plan to fix it.
</note>
<note id="2">
@@ -1705,7 +2006,6 @@ for more information.
work correctly.
</note>
<!-- R. Rivera -->
<note id="25">
The failure is caused by a runtime limitation. Locale support is only
available with the static linked variant of the runtime. Generally
@@ -1718,10 +2018,20 @@ for more information.
Patches are welcome!
</note>
<!-- Thorsten Ottosen -->
<note id="27" >
This failure is caused by bugs in the standard library implementation and/or
bugs in the compiler.
</note>
<note id="28">
Unresearched failure, please contact library developers for more
information about possible causes.
</note>
<note id="29">
The test fails due to unresearched issues. The library
developers are aware of this failure, but need help with
investigating/addressing it for future releases.
</note>
</explicit-failures-markup>
+1
View File
@@ -65,6 +65,7 @@
<xs:element ref="toolset" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="note" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="reason" type="xs:string"/>
</xs:complexType>
</xs:element>
@@ -0,0 +1,202 @@
# Copyright (c) MetaCommunications, Inc. 2003-2004
#
# Distributed under the Boost Software License, Version 1.0.
# (See accompanying file LICENSE_1_0.txt or copy at
# http://www.boost.org/LICENSE_1_0.txt)
import socket
import tarfile
import shutil
import time
import os.path
import string
import sys
import traceback
def retry( f, args, max_attempts=2, sleep_secs=10 ):
for attempts in range( max_attempts, -1, -1 ):
try:
return f( *args )
except Exception, msg:
utils.log( '%s failed with message "%s"' % ( f.__name__, msg ) )
if attempts == 0:
utils.log( 'Giving up.' )
raise
utils.log( 'Retrying (%d more attempts).' % attempts )
time.sleep( sleep_secs )
def rmtree( path ):
if os.path.exists( path ):
if sys.platform == 'win32':
os.system( 'del /f /s /q "%s" >nul 2>&1' % path )
shutil.rmtree( path )
else:
os.system( 'rm -f -r "%s"' % path )
def cvs_command( user, command ):
cmd = 'cvs -d:ext:%(user)s@cvs.sourceforge.net:/cvsroot/boost -z9 %(command)s' \
% { 'user': user, 'command': command }
utils.log( 'Executing CVS command "%s"' % cmd )
rc = os.system( cmd )
if rc != 0:
raise Exception( 'CVS command "%s" failed with code %d' % ( cmd, rc ) )
def cvs_export( working_dir, user, tag ):
if tag != 'CVS-HEAD':
command = 'export -r %s boost' % tag
else:
command = 'export boost'
os.chdir( working_dir )
retry(
cvs_command
, ( user, command )
, max_attempts=5
)
def make_tarball(
working_dir
, tag
, user
, site_dir
):
sources_dir = os.path.join( working_dir, 'boost' )
if os.path.exists( sources_dir ):
utils.log( 'Already running, exiting this one...' )
return False
try:
os.mkdir( sources_dir )
utils.log( 'Exporting files from CVS...' )
cvs_export( working_dir, user, tag )
except:
utils.log( 'Cleaning up...' )
rmtree( sources_dir )
raise
timestamped_dir_name = 'boost-%s-%s' % ( tag, time.strftime( '%y-%m-%d-%H%M', time.gmtime() ) )
timestamped_dir = os.path.join( working_dir, timestamped_dir_name )
utils.log( 'Renaming "%s" to "%s"...' % ( sources_dir, timestamped_dir ) )
os.rename( sources_dir, timestamped_dir )
tarball_name = 'boost-%s.tar.bz2' % tag
tarball_path = os.path.join( working_dir, tarball_name )
utils.log( 'Archiving "%s" to "%s"...' % ( timestamped_dir, tarball_path ) )
tar = tarfile.open( tarball_path, 'w|bz2' )
tar.posix = False # see http://tinyurl.com/4ebd8
tar.add( timestamped_dir, timestamped_dir_name )
tar.close()
if site_dir is not None:
utils.log( 'Moving "%s" to the site location "%s"...' % ( tarball_name, site_dir ) )
shutil.move( tarball_path, site_dir )
utils.log( 'Removing "%s"...' % timestamped_dir )
rmtree( timestamped_dir )
return True
def format_time( t ):
return time.strftime(
'%a, %d %b %Y %H:%M:%S +0000'
, t
)
def make_tarball_send_mail(
working_dir
, tag
, user
, site_dir
, mail
):
try:
mail_subject = '[Boost CVS tarball] Build for %s on %s' % ( tag, string.split(socket.gethostname(), '.')[0] )
send_mail = make_tarball(
working_dir
, tag
, user
, site_dir
)
if mail and send_mail:
utils.log( 'Sending report to "%s"' % mail )
utils.send_mail(
mail
, '%s completed successfully at %s.' % ( mail_subject, format_time( time.localtime() ) )
)
except:
if mail:
utils.log( 'Sending report to "%s"' % mail )
msg = apply( traceback.format_exception, sys.exc_info() )
utils.send_mail(
mail
, '%s failed at %s.' % ( mail_subject, format_time( time.localtime() ) )
, '\n'.join( msg )
)
raise
def accept_args( args ):
args_spec = [
'working-dir='
, 'tag='
, 'user='
, 'site-dir='
, 'mail='
, 'help'
]
options = {
'--tag': 'CVS-HEAD'
, '--site-dir': None
, '--mail': None
}
utils.accept_args( args_spec, args, options, usage )
return (
options[ '--working-dir' ]
, options[ '--tag' ]
, options[ '--user' ]
, options[ '--site-dir' ]
, options[ '--mail' ]
)
def usage():
print 'Usage: %s [options]' % os.path.basename( sys.argv[0] )
print '''
\t--working-dir working directory
\t--tag snapshot tag (i.e. 'CVS-HEAD')
\t--user SourceForge user name for a CVS account
\t--site-dir site directory to copy the snapshot to (optional)
\t--mail email address to send run notification to (optional)
'''
def main():
make_tarball_send_mail( *accept_args( sys.argv[ 1: ] ) )
if __name__ != '__main__': import utils
else:
# in absense of relative import...
xsl_path = os.path.abspath( os.path.dirname( sys.argv[ 0 ] ) )
while os.path.basename( xsl_path ) != 'xsl_reports': xsl_path = os.path.dirname( xsl_path )
sys.path.append( xsl_path )
import utils
main()
@@ -40,7 +40,7 @@ if sys.platform == 'win32':
bjam[ 'name' ] = 'bjam.exe'
bjam[ 'build_cmd' ] = lambda toolset: 'build.bat %s' % toolset
process_jam_log[ 'name' ] = 'process_jam_log.exe'
process_jam_log[ 'default_toolset' ] = 'vc7.1'
process_jam_log[ 'default_toolset' ] = 'vc-7_1'
patch_boost_name = 'patch_boost.bat'
else:
bjam[ 'name' ] = 'bjam'
@@ -63,7 +63,7 @@ process_jam_log[ 'build_path_root' ] = os.path.join(
process_jam_log[ 'build_cmd' ] = lambda toolset:'%s -sTOOLS=%s'% ( tool_path( bjam ), toolset )
build_monitor_url = 'http://www.meta-comm.com/engineering/boost-regression/build_monitor.zip'
build_monitor_url = 'http://www.meta-comm.com/engineering/resources/build_monitor.zip'
pskill_url = 'http://www.sysinternals.com/files/pskill.zip'
utils = None
@@ -126,16 +126,16 @@ def http_get( source_url, destination, proxy ):
def download_boost_tarball( destination, tag, proxy ):
site = 'www.boost-consulting.com'
tarball_name = 'boost.tar.bz2'
tarball_name = 'boost-%s.tar.bz2' % tag
tarball_path = os.path.join( destination, tarball_name )
tarball_url = 'http://www.meta-comm.com/engineering/boost/snapshot/%s' % tarball_name
log( "Downloading '%s' for tag %s from %s..." % ( tarball_path, tag, site ) )
log( 'Downloading "%s" to "%s"...' % ( tarball_url, os.path.dirname( tarball_path ) ) )
if os.path.exists( tarball_path ):
os.unlink( tarball_path )
http_get(
'http://%s/%s' % ( site, tarball_name ) # ignore tag for now
tarball_url
, tarball_path
, proxy
)
@@ -143,28 +143,57 @@ def download_boost_tarball( destination, tag, proxy ):
return tarball_path
def unpack_tarball( tarball_path, destination ):
log( 'Looking for old unpacked archives...' )
old_boost_dirs = glob.glob( os.path.join( destination, 'boost-*' ) )
def find_boost_dirs( path ):
return [ x for x in glob.glob( os.path.join( path, 'boost[-_]*' ) )
if os.path.isdir( x ) ]
def unpack_tarball( tarball_path, destination ):
log( 'Looking for old unpacked archives...' )
old_boost_dirs = find_boost_dirs( destination )
for old_boost_dir in old_boost_dirs:
log( 'Deleting old directory %s.' % old_boost_dir )
rmtree( old_boost_dir )
if old_boost_dir != tarball_path:
log( 'Deleting old directory %s.' % old_boost_dir )
rmtree( old_boost_dir )
log( 'Unpacking boost tarball ("%s")...' % tarball_path )
tar = tarfile.open( tarball_path, 'r|bz2' )
for tarinfo in tar:
tar.extract( tarinfo, destination )
if sys.platform == 'win32' and not tarinfo.isdir():
# workaround what appears to be a Win32-specific bug in 'tarfile'
# (modification times for extracted files are not set properly)
f = os.path.join( destination, tarinfo.name )
os.chmod( f, stat.S_IWRITE )
os.utime( f, ( tarinfo.mtime, tarinfo.mtime ) )
tar.close()
boost_dir = glob.glob( os.path.join( destination, 'boost-*' ) )[0]
b = os.path.basename( tarball_path )
name = b[ 0: b.find( '.' ) ]
extension =b[ b.find( '.' ) : ]
if extension in ( ".tar.gz", ".tar.bz2" ):
mode = os.path.splitext( extension )[1][1:]
tar = tarfile.open( tarball_path, 'r|%s' % mode )
for tarinfo in tar:
tar.extract( tarinfo, destination )
if sys.platform == 'win32' and not tarinfo.isdir():
# workaround what appears to be a Win32-specific bug in 'tarfile'
# (modification times for extracted files are not set properly)
f = os.path.join( destination, tarinfo.name )
os.chmod( f, stat.S_IWRITE )
os.utime( f, ( tarinfo.mtime, tarinfo.mtime ) )
tar.close()
elif extension in ( ".zip" ):
import zipfile
z = zipfile.ZipFile( tarball_path, 'r', zipfile.ZIP_DEFLATED )
for f in z.infolist():
destination_file_path = os.path.join( destination, f.filename )
print f.filename
if destination_file_path[-1] == "/": # directory
if not os.path.exists( destination_file_path ):
os.makedirs( destination_file_path )
else: # file
result = open( destination_file_path, 'wb' )
result.write( z.read( f.filename ) )
result.close()
z.close()
else:
raise "Do not know how to unpack archives with extension \"%s\"" % extension
boost_dir = find_boost_dirs( destination )[0]
log( ' Unpacked into directory "%s"' % boost_dir )
if os.path.exists( boost_root ):
@@ -320,7 +349,7 @@ def download_if_needed( tool_name, tool_url, proxy ):
log( 'Preinstalled "%s" is not found.' % path )
log( ' Downloading from %s...' % tool_url )
zip_path = '%s.zip' % path
zip_path = '%s.zip' % os.path.splitext( path )[0]
http_get( tool_url, zip_path, proxy )
log( ' Unzipping %s...' % path )
@@ -531,6 +560,7 @@ def update_itself( **unused ):
def regression(
tag
, local
, runner
, platform
, user
@@ -554,11 +584,26 @@ def regression(
log( 'Sending start notification to "%s"' % mail )
utils.send_mail( mail, mail_subject + ' started at %s.' % format_time( start_time ) )
if incremental:
update_source( user, tag, proxy, [] )
if local is not None:
log( 'Using local file "%s"' % local )
b = os.path.basename( local )
tag = b[ 0: b.find( '.' ) ]
log( 'Tag: "%s"' % tag )
if not os.path.isdir( local ):
unpack_tarball( local, regression_root )
else:
if b != 'boost':
log( 'Renaming "%s" into "%s"' % ( local, boost_root ) )
os.rename( local, boost_root )
else:
cleanup( [] )
get_source( user, tag, proxy, [] )
if incremental:
update_source( user, tag, proxy, [] )
else:
cleanup( [] )
get_source( user, tag, proxy, [] )
setup( comment, toolsets, bjam_toolset, pjl_toolset, monitored, proxy, [] )
test( toolsets, bjam_options, monitored, timeout, [] )
@@ -599,6 +644,7 @@ def show_revision( **unused ):
def accept_args( args ):
args_spec = [
'tag='
, 'local='
, 'runner='
, 'platform='
, 'user='
@@ -617,6 +663,7 @@ def accept_args( args ):
options = {
'--tag' : 'CVS-HEAD'
, '--local' : None
, '--platform' : sys.platform
, '--user' : None
, '--comment' : None
@@ -634,12 +681,14 @@ def accept_args( args ):
( option_pairs, other_args ) = getopt.getopt( args, '', args_spec )
map( lambda x: options.__setitem__( x[0], x[1] ), option_pairs )
if ( options.has_key( '--help' ) or len( options.keys() ) == defaults_num ):
if options.has_key( '--help' ):
usage()
sys.exit( 1 )
return {
'tag' : options[ '--tag' ]
, 'local' : options[ '--local' ]
, 'runner' : options[ '--runner' ]
, 'platform' : options[ '--platform']
, 'user' : options[ '--user' ]
@@ -680,6 +729,7 @@ Commands:
Options:
\t--runner runner ID (e.g. 'Metacomm')
\t--tag the tag for the results ('CVS-HEAD' by default)
\t--local the name of the boost tarball
\t--comment an HTML comment file to be inserted in the reports
\t ('comment.html' by default)
\t--incremental do incremental run (do not remove previous binaries)
+19 -8
View File
@@ -108,24 +108,35 @@ def make_expicit_failure_markup( num_of_libs, num_of_toolsets, num_of_tests ):
g.endElement( "mark-unusable" )
for i_test in range( 0, num_of_tests ):
if i_test > num_of_tests - 3: corner_case_test = 1
else: corner_case_test = 0
if i_test % 4 == 0: explicitly_marked_test = 1
else: explicitly_marked_test = 0
if corner_case_test or explicitly_marked_test:
corner_case_test = 0
explicitly_marked_failure = 0
unresearched = 0
if i_test > num_of_tests - 3: corner_case_test = 1
if i_test % 3 == 0:
explicitly_marked_failure = 1
if i_test % 2 == 0:
unresearched = 1
if corner_case_test or explicitly_marked_failure:
test_attrs = { "name": make_test_name( i_library, i_test ) }
if corner_case_test:
test_attrs[ "corner-case" ] = "yes"
g.startElement( "test", test_attrs )
if explicitly_marked_test:
g.startElement( "mark-failure", {} )
if explicitly_marked_failure:
failure_attrs = {}
if unresearched: failure_attrs[ "reason" ] = "not-researched"
g.startElement( "mark-failure", failure_attrs )
g.startElement( "toolset", { "name": make_toolset_name( 1 ) } )
g.endElement( "toolset" )
g.startElement( "toolset", { "name": make_toolset_name( 0 ) } )
g.endElement( "toolset" )
g.startElement( "toolset", { "name": make_toolset_name( 2 ) } )
g.endElement( "toolset" )
g.startElement( "note", { "author": "V. Annotated" } )
g.characters( "Some thoughtful note" )
@@ -11,6 +11,21 @@ num_of_tests = 10
tag = "1_30_0"
# Generated results follow the rules:
#
# * odd runners are testing on Win32, even runners are testin on Unix
# * the third toolset has 2 variants
#
# Generated expected markup:
#
# * First two toolset are required
# * Every fourth library is unusable on event toolsets
# * Last two tests are corner-ase tests
# * Every 4th test is explicitly marked up as expected-failure
def library_build_failed( library_idx ):
return library_idx % 2
@@ -25,6 +40,7 @@ def test_run_type( runner_idx ):
def make_test_results():
if not os.path.exists( tag ):
os.makedirs( tag )
for i_runner in range( 0, num_of_runners ):
runner_id = "runner_%02d" % i_runner
g = xml.sax.saxutils.XMLGenerator( open( os.path.join( tag, runner_id + ".xml" ), "w" ) )
@@ -83,13 +99,15 @@ def make_test_results():
if i_runner % 2: test_result = "success"
else: test_result = "fail"
if i_runner == 1 and i_toolset == 2 and i_test % 6 == 0:
test_result = "fail"
if test_result == "success" and ( 0 == i_test % 5 ):
show_run_output = "true"
if i_toolset == 2:
variants = [ "static-lib", "shared-lib" ]
else:
print i_toolset
variants = [ None ]
for variant in variants:
+1 -1
View File
@@ -27,7 +27,7 @@ report.make_result_pages(
, comment_file = os.path.abspath( "comment.html" )
, results_dir = "results"
, result_prefix = ""
, reports = [ "dd" ]
, reports = [ "x", "ds", "dd" ]
, v2 = 1
)
@@ -93,6 +93,17 @@ http://www.boost.org/LICENSE_1_0.txt)
<xsl:variable name="unexpected_success" select="$status = 'unexpected' and $actual_result = 'success'"/>
<xsl:variable name="expected_reason">
<xsl:choose>
<xsl:when test="$test_failures_markup/@reason">
<xsl:value-of select="$test_failures_markup/@reason"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$test_failures_markup2/@reason"/>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:variable name="notes">
<xsl:if test="$unexpected_success and $has_explicit_markup">
@@ -165,6 +176,7 @@ http://www.boost.org/LICENSE_1_0.txt)
<xsl:attribute name="result"><xsl:value-of select="$actual_result"/></xsl:attribute>
<xsl:attribute name="expected-result"><xsl:value-of select="$expected_result"/></xsl:attribute>
<xsl:attribute name="expected-reason"><xsl:value-of select="$expected_reason"/></xsl:attribute>
<xsl:attribute name="status"><xsl:value-of select="$status"/></xsl:attribute>
<xsl:attribute name="is-new"><xsl:value-of select="$is_new"/></xsl:attribute>
<xsl:element name="notes"><xsl:copy-of select="$notes"/></xsl:element>
@@ -237,10 +237,16 @@ http://www.boost.org/LICENSE_1_0.txt)
<xsl:text>fail-unexpected-new</xsl:text>
</xsl:when>
<xsl:when test="count( $test_logs[@result='fail' and @expected-reason != '' ] )">
<xsl:text>fail-expected-unresearched</xsl:text>
</xsl:when>
<xsl:when test="count( $test_logs[@result='fail'] )">
<xsl:text>fail-expected</xsl:text>
</xsl:when>
<xsl:when test="count( $test_logs[@result='success' and @status='unexpected'] )">
<xsl:text>success-unexpected</xsl:text>
</xsl:when>
@@ -27,7 +27,7 @@ http://www.boost.org/LICENSE_1_0.txt)
<tr class="library-row-single"><td class="library-success-unexpected">pass</td></tr>
</table>
</td>
<td class="legend-item">Unexpected success; follow the link to see the details.</td>
<td class="legend-item">Unexpected success; follow the link for more details.</td>
</tr>
<tr>
<td>
@@ -35,12 +35,28 @@ http://www.boost.org/LICENSE_1_0.txt)
<tr class="library-row-single"><td class="library-fail-expected">fail*</td></tr>
</table>
</td>
<td class="legend-item">Expected failure; follow the link to see the details.</td>
<td class="legend-item">Expected failure; follow the link for more details.</td>
</tr>
<tr>
<td>
<table width="100%" summary="unusable legend" id="Table1">
<tr class="library-row-single"><td class="library-unusable">n/a</td></tr>
</table>
</td>
<td class="legend-item">The library author marked it as unusable on this particular platform/toolset.</td>
</tr>
</table>
</td>
<td>
<table border="0" summary="legend">
<tr>
<td>
<table width="100%" summary="unresearched legend" id="Table2">
<tr class="library-row-single"><td class="library-fail-expected-unresearched">fail?</td></tr>
</table>
</td>
<td class="legend-item">Unsearched failure; follow the link for more details.</td>
</tr>
<tr>
<td>
<table width="100%" summary="unexpected new fail legend">
@@ -59,11 +75,8 @@ http://www.boost.org/LICENSE_1_0.txt)
</tr>
<tr>
<td>
<table width="100%" summary="unusable legend">
<tr class="library-row-single"><td class="library-unusable">n/a</td></tr>
</table>
</td>
<td class="legend-item">The library author marked it as unusable on particular platform/toolset.</td>
<td class="legend-item"></td>
</tr>
</table>
</td>
@@ -253,6 +253,7 @@ tr.summary-row td
,td.summary-user-fail-expected
,td.summary-user-success
,td.summary-unknown-status
,td.summary-fail-expected-unresearched
{
width: 60pt;
text-align: center;
@@ -339,6 +340,18 @@ td.summary-unknown-status
padding-right: 2pt;
}
td.library-fail-expected-unresearched
{
width: 60pt;
text-align: center;
background-color: white;
color: black;
border: 1px solid black;
padding-left: 2pt;
padding-right: 2pt;
}
tr.summary-row-first td.summary-missing
, tr.summary-row-single td.summary-missing
, tr.library-row-first td.library-missing
@@ -418,13 +418,13 @@ http://www.boost.org/LICENSE_1_0.txt)
<xsl:when test="$log_link != ''">
<xsl:text>&#160;&#160;</xsl:text>
<a href="{$log_link}" class="log-link" target="_top">
<xsl:value-of select="$result"/>
<xsl:copy-of select="$result"/>
</a>
<xsl:text>&#160;&#160;</xsl:text>
</xsl:when>
<xsl:otherwise>
<xsl:text>&#160;&#160;</xsl:text>
<xsl:value-of select="$result"/>
<xsl:copy-of select="$result"/>
<xsl:text>&#160;&#160;</xsl:text>
</xsl:otherwise>
</xsl:choose>
@@ -520,7 +520,16 @@ http://www.boost.org/LICENSE_1_0.txt)
<xsl:when test="$test_log/@result != 'success' and $test_log/@status = 'expected'">
<xsl:call-template name="insert_test_result">
<xsl:with-param name="result" select="'fail*'"/>
<xsl:with-param name="result">
<xsl:choose>
<xsl:when test="$test_log/@expected-reason != ''">
<xsl:text>fail?</xsl:text>
</xsl:when>
<xsl:otherwise>
<xsl:text>fail*</xsl:text>
</xsl:otherwise>
</xsl:choose>
</xsl:with-param>
<xsl:with-param name="log_link" select="$cell_link"/>
</xsl:call-template>
</xsl:when>