
At Thu, 04 Nov 2010 12:31:08 -0500, Jim Bell wrote:
Compelled as I am to audit everything, I had to compare running bjam in the lib/<x>/test directory with run.py.
I'm confident that they do produce (essentially) the same compile, link, and execute commands.
Notes, from a regression-runner's POV: * They use different directories: run.py uses {boost-root}/../results/bin.v2/..., and bjam uses {boost-root}/bin.v2/...
You can change where bjam puts it with --build-dir. Of course, that's what run.py does.
* run.py sets up bjam with a lot of flags, like --debug-configuration [shouldn't matter for most people] -d2 [important for many, described below]
Not when testing, really. Any build command that fails will be dumped even without -d2
-lxxx [that's lower-case L, with a time-out in seconds: potentially important]
If you want to run the tests unattended, maybe
preserve-test-targets=off [not sure if this matters or not]
You might want it on for repeated build/test/debug cycles.
* run.py runs from the boost/status directory, I think. Might matter for some tests. Not sure about straight bjam.
Should not matter.
To make your own script to rebuild/rerun a particular test, run bjam with -d+2 (i.e., -d2) and direct the output to a file. Then copy the compile & link commands out of that file.
I think you may want to add -a. Using -o to specify the file is cleaner, or if you want to use -d2 then also add -n. -- Dave Abrahams BoostPro Computing http://www.boostpro.com