Dependencies trans_depends;
Dependencies side_effects;
Target *primary_target = 0;
+ bool rescan_trans_deps = false;
static std::vector<Target *> prepare_stack;
direct dependencies first. */
virtual void find_dependencies() { }
+private:
+ bool find_transitive_dependencies();
+ void find_transitive_dependencies(Target &, std::vector<Target *> &) const;
+
+protected:
+ virtual Target *resolve_transitive_dependency(Target &, Target &dep) const { return &dep; }
+
public:
/// Returns the dependencies of the target, in the order they were added.
const Dependencies &get_dependencies() const { return depends; }