X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fvirtualtarget.cpp;h=a7b4cd73b35362d2d0586ecda7e570d2abaf8b07;hb=407b96515a5246384847d1835a2d69704e941ea1;hp=5c1e4c71a88d569b5392577edd7573e95e9e730e;hpb=59ac0a44d6edf179c01604c6ced744873213f855;p=builder.git diff --git a/source/virtualtarget.cpp b/source/virtualtarget.cpp index 5c1e4c7..a7b4cd7 100644 --- a/source/virtualtarget.cpp +++ b/source/virtualtarget.cpp @@ -1,10 +1,25 @@ +#include +#include +#include "builder.h" #include "virtualtarget.h" using namespace std; +using namespace Msp; + +VirtualTarget::VirtualTarget(Builder &b, const string &n): + Target(b, n) +{ } void VirtualTarget::check_rebuild() { - for(list::iterator i=depends.begin(); (i!=depends.end() && !rebuild); ++i) - if((*i)->get_rebuild()) + // Virtual targets are only rebuilt if their dependencies need rebuilding. + for(Dependencies::iterator i=depends.begin(); (i!=depends.end() && !needs_rebuild()); ++i) + if((*i)->needs_rebuild()) mark_rebuild((*i)->get_name()+" needs rebuilding"); } + +Task *VirtualTarget::build() +{ + state = UPTODATE; + return 0; +}