= Testing Boost.Build V2 on C++ Boost = This page describes how you can run C++ Boost regression tests with Boost.Build V2. == Configure == Go to {{{tools/build/v2}}} directory of C++ Boost and open the file {{{user-config.jam}}} in an editor. Following comments there, configure one toolset you want to test with. For example: {{{ using msvc ; }}} or {{{ using gcc ; }}} This assumes that the compiler is in {{{PATH}}}. You also need to configure the location of Python, for testing of Boost.Python library. Add the following to {{{user-config.jam}}}: {{{ using python : 2.3 : /usr ; }}} Adjust the version number, and the installation root accordingly. == Verify regression tests setup == 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. == Run the tests == Depending on time/space available you can either: * Run just with Boost.Build V2 * Run with Boost.Build V1 and V2, comparing the differences. For Linux, a script to run with V1 and V2 and compare the differences in available: attachment:"run_all.sh". It should be run from the {{{status}}} directory. === Prerequisites === * 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}}}. === Running tests with V2 === Go to the {{{status}}} directory. * On Linux, run: {{{ bjam --v2 -d2 --dump-tests 2>&1 | tee bjam2.log cat bjam2.log | process_jam_log --v2 compiler_status --v2 ''boost-root'' boost_v2.html boost_v2_links.html }}} * On Windows, run: {{{ bjam --v2 -d2 --dump-tests > bjam2.log 2>&1 process_jam_log --v2 < bjam2.log compiler_status --v2 ''boost-root'' boost_v2.html boost_v2_links.html }}} === Running tests with V1 === * On Linux, run: {{{ bjam -d2 --dump-tests 2>&1 | tee bjam1.log cat bjam2.log | process_jam_log compiler_status ''boost-root'' boost_v1.html boost_v1_links.html }}} * On Windows, run: {{{ bjam -d2 --dump-tests > bjam1.log 2>&1 process_jam_log < bjam1.log compiler_status ''boost-root'' boost_v1.html boost_v1_links.html }}} === Compare the results === * On Linux, run the following commands: {{{ cp boost_v1.html boost_v1_aux.html perl -pi -e 's/boost_v1_links/boost_v2_links/' boost_v1_aux.html diff -u boost_v1_aux.html boost_v2.html > boost.diff }}} * On windows, either perform the same actions by Windows tools, or send the {{{boost_v1.html}}} and {{{boost_v2.html}}} files to Vladimir Prus.