aboutsummaryrefslogtreecommitdiff
path: root/src/rule.cpp
diff options
context:
space:
mode:
authorMike Buland <eichlan@xagasoft.com>2006-08-01 06:27:43 +0000
committerMike Buland <eichlan@xagasoft.com>2006-08-01 06:27:43 +0000
commit46a3cfdd7b2a77a308a6ac3fbca3b675c4f44fe7 (patch)
tree795ace6809cbba6019f5517b345a5ab20fed5b9a /src/rule.cpp
parent935bc7d5223883d87f58a6798f4a0ade7df95afc (diff)
downloadbuild-46a3cfdd7b2a77a308a6ac3fbca3b675c4f44fe7.tar.gz
build-46a3cfdd7b2a77a308a6ac3fbca3b675c4f44fe7.tar.bz2
build-46a3cfdd7b2a77a308a6ac3fbca3b675c4f44fe7.tar.xz
build-46a3cfdd7b2a77a308a6ac3fbca3b675c4f44fe7.zip
It builds fine, and can build other things as well, like squirrelmud, and clean.
I need to fix the dependancy tracking so that it will only check if it needs to, sort of like pymake. And does each file as it gets to it.
Diffstat (limited to '')
-rw-r--r--src/rule.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/rule.cpp b/src/rule.cpp
index 979075b..ce37e93 100644
--- a/src/rule.cpp
+++ b/src/rule.cpp
@@ -77,6 +77,7 @@ Perform *Rule::buildCommand( Builder &bld, const char *sCmd, Builder::varmap *va
77 77
78std::list<std::string> Rule::execute( Builder &bld, std::list<std::string> lInput, std::list<Perform *> &lPerf, const char *sTarget ) 78std::list<std::string> Rule::execute( Builder &bld, std::list<std::string> lInput, std::list<Perform *> &lPerf, const char *sTarget )
79{ 79{
80 bld.requiresRegexp( false );
80 std::list<Rule *> lRule = bld.findRuleChain( this ); 81 std::list<Rule *> lRule = bld.findRuleChain( this );
81 /* 82 /*
82 if( !lRule.empty() ) 83 if( !lRule.empty() )
@@ -134,11 +135,21 @@ std::list<std::string> Rule::execute( Builder &bld, std::list<std::string> lInpu
134 revars 135 revars
135 ); 136 );
136 lPerf.push_back( p ); 137 lPerf.push_back( p );
138
139 bld.requires(
140 (*revars)["target"].c_str(),
141 (*revars)["match"].c_str()
142 );
137 } 143 }
138 else if( mHow == matchAll ) 144 else if( mHow == matchAll )
139 { 145 {
140 sMatches += " "; 146 sMatches += " ";
141 sMatches += (*i); 147 sMatches += (*i);
148
149 bld.requires(
150 sTarget,
151 (*i).c_str()
152 );
142 } 153 }
143 } 154 }
144 delete revars; 155 delete revars;