X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fsourcefile.h;h=18d86045cdee8092c83e834371603ca93490c5e3;hb=51d5a0f618faabfce9a0a5d5dd64b0b0d52b97cb;hp=b1ec8294f578d796ab85f61cb83ea804ebe50b55;hpb=0d80cabf649b931b26e7055385156c75a7385d35;p=builder.git diff --git a/source/sourcefile.h b/source/sourcefile.h index b1ec829..18d8604 100644 --- a/source/sourcefile.h +++ b/source/sourcefile.h @@ -1,21 +1,27 @@ #ifndef SOURCEFILE_H_ #define SOURCEFILE_H_ -#include "target.h" +#include "filetarget.h" class Component; -class SourceFile: public Target +/** +Represents a C or C++ source file. +*/ +class SourceFile: public FileTarget { -public: - SourceFile(Builder &, const Component *, const std::string &); - const std::list &get_includes() const { return includes; } - const char *get_type() const { return "SourceFile"; } - void find_depends(); - Action *build() { rebuild=false; return 0; } private: const Component *comp; - std::list includes; + StringList includes; + +protected: + SourceFile(Builder &, const Msp::FS::Path &); +public: + SourceFile(Builder &, const Component &, const Msp::FS::Path &); + virtual const char *get_type() const { return "SourceFile"; } + const StringList &get_includes() const { return includes; } + const Component *get_component() const { return comp; } + virtual void find_depends(); }; #endif