]> git.tdb.fi Git - builder.git/blobdiff - source/sourcefile.h
Get rid of separate header targets which serve no useful purpose
[builder.git] / source / sourcefile.h
index 0bca39055fede799a16eca2c970b1963991fc9df..49a43318866de078484e23ce69e74877e9a4f7b9 100644 (file)
@@ -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 StringList &get_includes() const { return includes; }
-       const char       *get_type() const { return "SourceFile"; }
-       void             find_depends();
-       Action           *build() { return 0; }
 private:
        const Component *comp;
-       StringList      includes;
+       StringList includes;
+
+public:
+       SourceFile(Builder &, const Msp::FS::Path &);
+       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