Boost logo

Boost-Build :

Subject: [Boost-build] Re-running library tests
From: Mateusz Loskot (mateusz_at_[hidden])
Date: 2018-03-09 19:07:30


Hi,

TL;TR: How can I re-run a library test(s) if test source/target are up-to-date?

It has been a long time since I fiddled with Boost.Build last time
and I'm re-discovering things, so may be missing something obvious.

I run array tests:

cd D:\dev\boost\boost\libs\array\test
b2 -q

and all tests build and pass.
I want to run the tests again. but all I get is this:

b2 -q
..\..\..\libs\log\build\Jamfile.v2:45: Unescaped special character in
argument <define>$(flag)=1
D:/dev/boost/boost/libs/predef/check/../tools/check\predef.jam:46:
Unescaped special character in argument $(language)::$(expression)
Performing configuration checks

    - default address-model : 32-bit (cached)
    - default architecture : x86 (cached)
    - symlinks supported : yes (cached)
    - BOOST_COMP_GNUC >= 4.3.0 : no (cached)
...patience...
...found 2296 targets...

Refreshing my memory about options:

b2 --help-options
  -tx; Rebuild the target 'x', even if it is up-to-date.

b2 --dump-tests
..\..\..\libs\log\build\Jamfile.v2:45: Unescaped special character in
argument <define>$(flag)=1
D:/dev/boost/boost/libs/predef/check/../tools/check\predef.jam:46:
Unescaped special character in argument $(language)::$(expression)
Performing configuration checks

    - default address-model : 32-bit (cached)
    - default architecture : x86 (cached)
    - symlinks supported : yes (cached)
    - BOOST_COMP_GNUC >= 4.3.0 : no (cached)
boost-test(RUN) "array/array0" : "libs/array/test/array0.cpp"
boost-test(RUN) "array/array1" : "libs/array/test/array1.cpp"
boost-test(RUN) "array/array2" : "libs/array/test/array2.cpp"
boost-test(RUN) "array/array3" : "libs/array/test/array3.cpp"
boost-test(RUN) "array/array4" : "libs/array/test/array4.cpp"
boost-test(RUN) "array/array5" : "libs/array/test/array5.cpp"
boost-test(RUN) "array/array6" : "libs/array/test/array6.cpp"
boost-test(RUN) "array/array7" : "libs/array/test/array7.cpp"
boost-test(COMPILE_FAIL) "array/array_getfail1" :
"libs/array/test/array_getfail1.cpp"
boost-test(COMPILE_FAIL) "array/array_getfail2" :
"libs/array/test/array_getfail2.cpp"
boost-test(RUN) "array/array_hash" : "libs/array/test/array_hash.cpp"
...patience...
...found 2296 targets...

Trying out:

b2 -tarray0
b2 -tarray0.test
b2 -tarray

No tests re-run.

as well as variety of "may be a target" variety, hopelessly

b2 -tarray.test
b2 test-suite
b2 unit-test
b2 test
b2 run

No such targets found, no tests re-run.

Could anyone teach me how to re-run test(s) which target is up-to-date?

Best regards,

-- 
Mateusz Loskot, http://mateusz.loskot.net

Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk