aboutsummaryrefslogtreecommitdiff
path: root/tools/mhmake/src/rule.h
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2010-10-31 19:30:18 +0000
committermarha <marha@users.sourceforge.net>2010-10-31 19:30:18 +0000
commitb320c441ab5ad04ea4a6766d0a178fc7c0ea4105 (patch)
tree22df141d642b128edbcf9dfb6715e69eaf42e391 /tools/mhmake/src/rule.h
parent75ef19188d021a5e965198bde774c1c33bedc1f3 (diff)
downloadvcxsrv-b320c441ab5ad04ea4a6766d0a178fc7c0ea4105.tar.gz
vcxsrv-b320c441ab5ad04ea4a6766d0a178fc7c0ea4105.tar.bz2
vcxsrv-b320c441ab5ad04ea4a6766d0a178fc7c0ea4105.zip
Make sure implicit rule searching is taking the extra dependencies into account
Diffstat (limited to 'tools/mhmake/src/rule.h')
-rw-r--r--tools/mhmake/src/rule.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/tools/mhmake/src/rule.h b/tools/mhmake/src/rule.h
index 3b288e3d2..7cc287600 100644
--- a/tools/mhmake/src/rule.h
+++ b/tools/mhmake/src/rule.h
@@ -74,13 +74,16 @@ public:
void SetTargetsIsBuilding(const fileinfo *pSrc);
};
+typedef vector<pair<vector<fileinfo*>,refptr<rule> > > implicitruledep_t;
+typedef pair<fileinfo *, implicitruledep_t > implicitrule_t;
+
class IMPLICITRULE
{
static set<rule*> m_ImplicitRuleRecurseDetStack;
- static vector<pair<fileinfo *, vector<pair< fileinfo *,refptr<rule> > > > > m_ImplicitRules; // Use a vector and not a map because the order of the implicit rules is important
+ static vector<implicitrule_t> m_ImplicitRules; // Use a vector and not a map because the order of the implicit rules is important
public:
- static void AddImplicitRule(fileinfo *pTarget,const vector<fileinfo*> &Deps,refptr<rule> pRule);
- static void SearchImplicitRule(const fileinfo *pTarget,vector< pair<fileinfo*,refptr<rule> > >&Result);
+ static void AddImplicitRule(fileinfo *pTarget,const vector<fileinfo*> &Deps, refptr<rule> pRule);
+ static void SearchImplicitRule(const fileinfo *pTarget, implicitruledep_t &Result);
static void PrintImplicitRules();
static bool PushRule(rule *pRule)
{