]> git.tdb.fi Git - builder.git/blobdiff - source/target.h
Make tools capable of reporting a system-wide path used to locate input files
[builder.git] / source / target.h
index 04c3c09a3648876578e8b7e7794e64bb3e9b6bd5..d6ed43860315b1508356d66024d8852258f70af7 100644 (file)
@@ -8,6 +8,7 @@
 #include <msp/time/timestamp.h>
 
 class Builder;
+class Component;
 class Package;
 class Task;
 class Tool;
@@ -35,6 +36,7 @@ protected:
 
        Builder &builder;
        const Package *package;
+       const Component *component;
        std::string name;
 
        const Tool *tool;
@@ -43,15 +45,15 @@ protected:
        std::string install_location;
 
        Dependencies depends;
-       bool deps_ready;
 
-       Target(Builder &, const Package *, const std::string &);
+       Target(Builder &, const std::string &);
 public:
        virtual ~Target() { }
 
        virtual const char *get_type() const = 0;
        const std::string &get_name() const { return name; }
        const Package *get_package() const { return package; }
+       const Component *get_component() const { return component; }
 
        /**
        Tries to locate a target that will help getting this target built.  If all
@@ -78,13 +80,9 @@ public:
        const std::string &get_install_location() const { return install_location; }
        void add_depend(Target *);
        const Dependencies &get_depends() const { return depends; }
-       bool get_depends_ready() const { return deps_ready; }
 
-       /**
-       Finds dependencies for the target.  When all dependencies have been found,
-       the function should set deps_ready to true.
-       */
-       virtual void find_depends() { deps_ready = true; }
+       /** Finds dependencies for the target. */
+       virtual void find_depends() { }
 
        /**
        Prepares the target by recursively preparing dependencies, then checking