
I'm not sure that's possible. And there is a much easier solution. The tests can be changed to have the needed #include references to all those headers. All it takes is adding this, to each point there is the above PP include:
/* #include "text_archive.hpp" #include "text_warchive.hpp" #include "binary_archive.hpp" #include "xml_archive.hpp" #include "xml_warchive.hpp" */
Since it's commented out the tests themselves don't change behavior. And since bjam doesn't care about comments it will find them. If the extra typing is a bummer those, along with the PP include, could be placed in a separate archive_test.hpp which has:
#include BOOST_PP_STRINGIZE(BOOST_ARCHIVE_TEST) /* #include "text_archive.hpp" #include "text_warchive.hpp" #include "binary_archive.hpp" #include "xml_archive.hpp" #include "xml_warchive.hpp" */
And then change the PP includes to '#include "archive_test.hpp"'. Drawback is that a library change will cause every type of archive to be tested, but it would do that anyway even if bjam parsed the PP include :-)
That sounds like a plan, Robert? We just need to reliably solve the "test X run depends on test Y run output" in a way that Robert can maintain, or failing that just hack it so that we can clear the regressions for 1.33.1. John.