using namespace std;
+/**
+Virtual targets are only rebuilt if their dependencies need rebuilding.
+*/
void VirtualTarget::check_rebuild()
{
- for(list<Target *>::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;