| | 1 | = Testing Boost.Build V2 on C++ Boost = |
| | 2 | |
| | 3 | This page describes how you can run C++ Boost regression tests with Boost.Build V2. |
| | 4 | |
| | 5 | == Configure == |
| | 6 | |
| | 7 | Go to {{{tools/build/v2}}} directory of C++ Boost and open the file {{{user-config.jam}}} in an editor. Following comments there, configure configure one toolset you want to test with. For example: |
| | 8 | {{{ |
| | 9 | using msvc ; |
| | 10 | }}} |
| | 11 | or |
| | 12 | {{{ |
| | 13 | using gcc ; |
| | 14 | }}} |
| | 15 | This assumes that the compiler is in {{{PATH}}}. |
| | 16 | |
| | 17 | == Verify regression tests setup == |
| | 18 | |
| | 19 | Go to the {{{status}}} directory and run {{{bjam --v2 -n}}}}. You should see a list of command that would be executed. If you see any error message, report it. |
| | 20 | |
| | 21 | == Run the tests == |
| | 22 | |
| | 23 | Depending on time/space available you can either: |
| | 24 | |
| | 25 | * Run just with Boost.Build V2 |
| | 26 | * Run with Boost.Build V1 and V2, comparing the differences. |
| | 27 | |
| | 28 | For Linux, a script to run with V1 and V2 and compare the differences in available. |
| | 29 | |
| | 30 | === Prerequisites === |
| | 31 | |
| | 32 | * Build the regression tools, by going to {{{tools/regression/build}}} and running {{{bjam}}}. The directory {{{run}}} should not contains two binaries: {{{process_jam_log}}} and {{{compiler_status}}}. |
| | 33 | |
| | 34 | === Running tests with V2 === |
| | 35 | |
| | 36 | Go to the {{{status}}} directory. |
| | 37 | |
| | 38 | * On Linux, run: |
| | 39 | {{{ |
| | 40 | bjam --v2 -d2 --dump-tests 2>&1 | tee bjam2.log |
| | 41 | cat bjam2.log | process_jam_log --v2 |
| | 42 | compiler_status --v2 ''boost-root'' boost_v2.html boost_v2_links.html |
| | 43 | }}} |
| | 44 | * On Windows, run: |
| | 45 | {{{ |
| | 46 | bjam --v2 -d2 --dump-tests > bjam2.log 2>&1 |
| | 47 | process_jam_log --v2 < bjam2.log |
| | 48 | compiler_status --v2 ''boost-root'' boost_v2.html boost_v2_links.html |
| | 49 | }}} |
| | 50 | |
| | 51 | === Running tests with V2 === |
| | 52 | |
| | 53 | * On Linux, run: |
| | 54 | {{{ |
| | 55 | bjam -d2 --dump-tests 2>&1 | tee bjam1.log |
| | 56 | cat bjam2.log | process_jam_log |
| | 57 | compiler_status ''boost-root'' boost_v1.html boost_v1_links.html |
| | 58 | }}} |
| | 59 | * On Windows, run: |
| | 60 | {{{ |
| | 61 | bjam -d2 --dump-tests > bjam1.log 2>&1 |
| | 62 | process_jam_log < bjam1.log |
| | 63 | compiler_status ''boost-root'' boost_v1.html boost_v1_links.html |
| | 64 | }}} |
| | 65 | |
| | 66 | === Compare the results === |
| | 67 | |
| | 68 | * On Linux, run the following commands: |
| | 69 | {{{ |
| | 70 | cp boost_v1.html boost_v1_aux.html |
| | 71 | perl -pi -e 's/boost_v1_links/boost_v2_links/' boost_v1_aux.html |
| | 72 | diff -u boost_v1_aux.html boost_v2.html > boost.diff |
| | 73 | }}} |
| | 74 | * On windows, either perform the same actions by Windows tools, or send the {{{boost_v1.html}}} and {{{boost_v2.html}}} files to Vladimir Prus. |
| | 75 | |
| | 76 | |