From: Aleksey Gurtovoy (alexy_at_[hidden])
Date: 2004-10-04 10:05:29
To elaborate -- currently bjam doesn't output failed/skipped targets that
don't have associated actions. In cases when this happens, it makes the
task of using bjam log to reengineer the dependency chain (the task of
"process_jam_log" executable) impossible. A particular instance of this
situation can be observed in the current Boost.Python tests.
Misha's patch below modifies the output condition so that all failed
targets are printed, whether they have any associated actions or not.
Misha Bergal writes:
> It seems that bjam did not provide enough info about failed
> dependencies for process_jam_log. I've made the following patch
> locally and it seems to resolve the problem.
> --- C:\Users\Administrator\boost\main\boost\tools\build\jam_src\make1.c
> 2004-10-02 22:59:08.285285600 -0500
> 2004-10-02 22:58:59.675855500 -0500
> @@ -394,7 +394,7 @@
> /* If actions on deps have failed, bail. */
> /* Otherwise, execute all actions to make target */
> - if( pState->t->status == EXEC_CMD_FAIL && pState->t->actions )
> + if( pState->t->status == EXEC_CMD_FAIL ) // && pState->t->actions )
> if ( ( pState->t->flags & ( T_FLAG_RMOLD | T_FLAG_NOTFILE ) )
> == T_FLAG_RMOLD )
> I am not proposing this to be cmmited to CVS, but rather looking for
> an expert feedback on whether this is a right way to deal with an
> issue. I will be happy to supply more info if the above is not enough.
-- Aleksey Gurtovoy MetaCommunications Engineering
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