+++ /dev/null
-#include "builder.h"
-#include "target.h"
-
-using namespace std;
-
-Target *TargetRef::get_target()
-{
- if(!target)
- target=builder.get_target(name);
- return target;
-}
-
-Target *Target::get_buildable_target()
-{
- if(rebuild && ready_for_build && !building)
- return this;
-
- for(list<Target *>::iterator i=depends.begin(); i!=depends.end(); ++i)
- {
- Target *tgt=(*i)->get_buildable_target();
- if(tgt)
- return tgt;
- }
-
- return 0;
-}
-
-void Target::add_depend(Target *dep)
-{
- depends.push_back(dep);
- dep->rdepends.push_back(this);
-}
-
-Target::Target(Builder &b, const Package *p, const string &n):
- builder(b),
- package(p),
- name(n),
- building(false),
- rebuild(false),
- ready_for_build(false)
-{ }
-
-void Target::mark_rebuild(const std::string &reason)
-{
- rebuild=true;
- rebuild_reason=reason;
-}