| | 1 | |
| | 2 | = Running C++ Boost regressions with Boost.Build V2 = |
| | 3 | |
| | 4 | This document described how to run C++ Boost regression tests (using regression.py script), with Boost.Build V2. |
| | 5 | |
| | 6 | == Configuration == |
| | 7 | |
| | 8 | Unlike V1, configuration of toolset is not done by creating new toolset files. Rather, there's a single config file that |
| | 9 | should be edited. The file is called {{{user-config.jam}}} and must be placed to your home directory. For the exact meaning of "home directory", see http://boost.org/boost-build2/doc/html/bbv2/reference.html#bbv2.reference.init |
| | 10 | |
| | 11 | The file should contain one entry for each toolset/version combination to be tested. Each entry should be in the form: |
| | 12 | {{{ |
| | 13 | using <toolset-name> : <toolset-version> : <absolute name of compiler executable> ; |
| | 14 | }}} |
| | 15 | for example: |
| | 16 | {{{ |
| | 17 | using msvc : 7.0 : "Z:/Programs/Microsoft Visual Studio/vc98/bin/cl.exe" ; |
| | 18 | }}} |
| | 19 | |
| | 20 | It's possible to specify additional options to compiler or linker: |
| | 21 | {{{ |
| | 22 | using hp_cxx |
| | 23 | : 65_042_tru64 # version |
| | 24 | : # command not specified -- use default |
| | 25 | : # options |
| | 26 | <cflags>"-version V6.5-042" |
| | 27 | <ldflags>"-version V6.5-042 -use_non_shared_libcxx" |
| | 28 | ; |
| | 29 | }}} |
| | 30 | |
| | 31 | Another note is that while in V1 customized toolset is common named {{{base-toolset}}}-{{{version}}}, in V2 the version parameter to {{{using}}} should not include base toolset name. That is, using {{{hp_cxx_64_042_tru64}}} above would be a mistake. |
| | 32 | |
| | 33 | After declaring a toolset version, it's possible to use {{{base-toolset}}}-{{{version}}} to request this toolset when building. |
| | 34 | |
| | 35 | = Running = |
| | 36 | |
| | 37 | To use V2 when running {{{regression.py}}}, just add {{{-v2}}} option. For example: |
| | 38 | |
| | 39 | {{{ |
| | 40 | ./regression.py setup --v2 |
| | 41 | ./regression.py test --v2 --toolsets=hp_cxx-65_042_tru42 |
| | 42 | ./regression.py collect-logs --v2 |
| | 43 | }}} |
| | 44 | |
| | 45 | The names of toolsets passed to {{{regression.py}}} are constructed from name base toolset name and version passed to the {{{using}}} rule, separated with dash. |
| | 46 | |
| | 47 | |
| | 48 | |
| | 49 | |
| | 50 | |