X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fobjectfile.h;h=1546a56bea3b5b83b1d48a5c5ed532f9315595e4;hb=9fe1e6827bba49c102f0186904922ca0a78852c6;hp=975409580928ce7cf61501cf715cbba91bb83df8;hpb=f0c501af5d99233efd3a45076ffbe69a71294863;p=builder.git diff --git a/source/objectfile.h b/source/objectfile.h index 9754095..1546a56 100644 --- a/source/objectfile.h +++ b/source/objectfile.h @@ -3,7 +3,6 @@ #include "filetarget.h" -class Component; class SourceFile; /** @@ -12,27 +11,23 @@ Object files are compiled from source files. class ObjectFile: public FileTarget { private: - const Component ∁ SourceFile &source; - + public: ObjectFile(Builder &, const Component &, SourceFile &); private: - static Msp::FS::Path generate_target_path(const Component &, const std::string &); + static Msp::FS::Path generate_target_path(const Component &, const Msp::FS::Path &); public: virtual const char *get_type() const { return "ObjectFile"; } - const Component &get_component() const { return comp; } SourceFile &get_source() const { return source; } - /** Processes as many new dependences as possible. Some may be created on - the fly and can't be processed until their own dependencies are ready. In - such cases this function needs to be called again. */ - virtual void find_depends(); + virtual void collect_build_info(BuildInfo &) const; private: - /** Recursively looks for header targets and adds them as dependencies. */ - void find_depends(FileTarget *); + virtual void find_dependencies(); + + void find_dependencies(FileTarget *); }; #endif