X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fobjectfile.h;h=7cc6f604c685ef343d744d39dfb4067cde2240a2;hb=66d1078c04849ec17a7343d0494d6ed087e04318;hp=4845a0f15c0ca3490e619fa618766533e7852f43;hpb=242c55b17e6608b29a77ca17a5b677e202a3ca90;p=builder.git diff --git a/source/objectfile.h b/source/objectfile.h index 4845a0f..7cc6f60 100644 --- a/source/objectfile.h +++ b/source/objectfile.h @@ -8,7 +8,7 @@ Distributed under the LGPL #ifndef OBJECTFILE_H_ #define OBJECTFILE_H_ -#include "target.h" +#include "filetarget.h" class Component; class SourceFile; @@ -16,16 +16,18 @@ class SourceFile; /** Object files are compiled from source files. */ -class ObjectFile: public Target +class ObjectFile: public FileTarget { private: const Component ∁ + SourceFile &source; TargetList new_deps; public: ObjectFile(Builder &, const Component &, SourceFile &); 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 @@ -41,7 +43,7 @@ private: void add_depend(Target *); virtual Action *create_action(); - static std::string generate_target_name(const Component &, const std::string &); + static Msp::FS::Path generate_target_path(const Component &, const std::string &); }; #endif