X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Ftool.cpp;h=cefbb8c3b0188c58d525b87def1a5b694f3a40df;hb=fa2beaa15ccc64956b12d6d81d95a11538748327;hp=e1858493add33c2624f78cd0585235d7603c03a1;hpb=338eefb513953ae55e8e3614c009c242ba8ad74e;p=builder.git diff --git a/source/tool.cpp b/source/tool.cpp index e185849..cefbb8c 100644 --- a/source/tool.cpp +++ b/source/tool.cpp @@ -5,12 +5,26 @@ using namespace std; Tool::Tool(Builder &b, const string &t): builder(b), - tag(t) + architecture(0), + tag(t), + executable(0) { } -bool Tool::accepts_suffix(const string &suffix) const +Tool::Tool(Builder &b, const Architecture &a, const string &t): + builder(b), + architecture(&a), + tag(t), + executable(0) +{ } + +bool Tool::accepts_suffix(const string &suffix, bool aux) const { - return find(input_suffixes.begin(), input_suffixes.end(), suffix)!=input_suffixes.end(); + if(find(input_suffixes.begin(), input_suffixes.end(), suffix)!=input_suffixes.end()) + return true; + else if(aux) + return find(aux_suffixes.begin(), aux_suffixes.end(), suffix)!=aux_suffixes.end(); + else + return false; } Target *Tool::create_target(Target &source, const string &arg) const @@ -19,3 +33,9 @@ Target *Tool::create_target(Target &source, const string &arg) const sources.push_back(&source); return create_target(sources, arg); } + + +SubTool::SubTool(Tool &p): + Tool(p), + parent(p) +{ }