From 225c45a1a4f1300058974029dab71bdcfb889138 Mon Sep 17 00:00:00 2001 From: Mike Buland Date: Wed, 20 Sep 2006 19:18:40 +0000 Subject: Full chaining now works, fixed a bug I didn't notice a few minutes ago... --- src/rule.cpp | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src') diff --git a/src/rule.cpp b/src/rule.cpp index f1b0317..61ea632 100644 --- a/src/rule.cpp +++ b/src/rule.cpp @@ -20,6 +20,7 @@ StringList Rule::execute( Build &bld, StringList &lInput, PerformList &lPerf ) for( RuleList::iterator i = rl.begin(); i != rl.end(); i++ ) { + (*i)->setTarget( sTarget ); StringList tmp = (*i)->execute( bld, lInput, lPerf ); lOutput.insert( lOutput.end(), tmp.begin(), tmp.end() ); } @@ -89,6 +90,7 @@ StringList Rule::execute( Build &bld, StringList &lInput, PerformList &lPerf ) { VarMap mTmp; StringList cont; + cont.push_front( sTarget ); cont.push_front( (*i) ); std::string target = bld.replVars( (*j), &cont, NULL ); mTmp["target"] = target; @@ -104,6 +106,7 @@ StringList Rule::execute( Build &bld, StringList &lInput, PerformList &lPerf ) k != lPerform.end(); k++ ) { StringList cont2; + cont2.push_front( sTarget ); cont2.push_front( (*i) ); cont2.push_front( target ); Perform *p = (*k)->duplicate( bld, &cont2, &mTmp ); -- cgit v1.2.3