X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fvirtualtarget.cpp;h=926331704520ef6bab8f893595d88aa589a796d1;hb=7aeaa4ba965f596edad438c02e345a8843f7469a;hp=d3f80df2c762812a5bbfe06245a6215c32c51504;hpb=0d80cabf649b931b26e7055385156c75a7385d35;p=builder.git diff --git a/source/virtualtarget.cpp b/source/virtualtarget.cpp index d3f80df..9263317 100644 --- a/source/virtualtarget.cpp +++ b/source/virtualtarget.cpp @@ -1,11 +1,29 @@ +/* $Id$ + +This file is part of builder +Copyright © 2006-2007 Mikko Rasa, Mikkosoft Productions +Distributed under the LGPL +*/ + #include #include "virtualtarget.h" using namespace std; +/** +Virtual targets are only rebuilt if their dependencies need rebuilding. +*/ void VirtualTarget::check_rebuild() { - for(list::iterator i=depends.begin(); (i!=depends.end() && !rebuild); ++i) + for(TargetList::iterator i=depends.begin(); (i!=depends.end() && !rebuild); ++i) if((*i)->get_rebuild()) mark_rebuild(Msp::Path::basename((*i)->get_name())+" needs rebuilding"); } + +/** +Don't count virtual targets since "building" them causes no action. +*/ +unsigned VirtualTarget::count_rebuild() +{ + return Target::count_rebuild()-rebuild; +}