X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fvirtualtarget.cpp;h=9b41a80a667f7b872b7031a723d52f0a7aedba41;hb=a2adbd9c0a8d7a7567848c4c6bdbf0de6ba32bb1;hp=e44eecc5828b99b4e230d4c3c29692fdafedc112;hpb=9976a7bdf0e53966dce4bc828a37eb42de0223e3;p=builder.git diff --git a/source/virtualtarget.cpp b/source/virtualtarget.cpp index e44eecc..9b41a80 100644 --- a/source/virtualtarget.cpp +++ b/source/virtualtarget.cpp @@ -1,15 +1,30 @@ -#include +/* $Id$ + +This file is part of builder +Copyright © 2006-2007 Mikko Rasa, Mikkosoft Productions +Distributed under the LGPL +*/ + +#include +#include #include "virtualtarget.h" using namespace std; +using namespace Msp; +/** +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"); + mark_rebuild(FS::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;