]> git.tdb.fi Git - builder.git/blobdiff - source/virtualtarget.cpp
Add support for statically linking the C++ standard library
[builder.git] / source / virtualtarget.cpp
index 926331704520ef6bab8f893595d88aa589a796d1..a7b4cd73b35362d2d0586ecda7e570d2abaf8b07 100644 (file)
@@ -1,29 +1,25 @@
-/* $Id$
-
-This file is part of builder
-Copyright © 2006-2007 Mikko Rasa, Mikkosoft Productions
-Distributed under the LGPL
-*/
-
-#include <msp/path/utils.h>
+#include <msp/fs/path.h>
+#include <msp/fs/utils.h>
+#include "builder.h"
 #include "virtualtarget.h"
 
 using namespace std;
+using namespace Msp;
+
+VirtualTarget::VirtualTarget(Builder &b, const string &n):
+       Target(b, n)
+{ }
 
-/**
-Virtual targets are only rebuilt if their dependencies need rebuilding.
-*/
 void VirtualTarget::check_rebuild()
 {
-       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");
+       // 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");
 }
 
-/**
-Don't count virtual targets since "building" them causes no action.
-*/
-unsigned VirtualTarget::count_rebuild()
+Task *VirtualTarget::build()
 {
-       return Target::count_rebuild()-rebuild;
+       state = UPTODATE;
+       return 0;
 }