X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Ffiletarget.h;h=6d2480f7e75d9d64c795a4e075c2492664b32aab;hb=968db78efd29b1f4890068693728299b2c7c92c7;hp=3b8bfcc4a0f0212f43bc23a058ecbf6f422215c2;hpb=66d1078c04849ec17a7343d0494d6ed087e04318;p=builder.git diff --git a/source/filetarget.h b/source/filetarget.h index 3b8bfcc..6d2480f 100644 --- a/source/filetarget.h +++ b/source/filetarget.h @@ -1,10 +1,3 @@ -/* $Id$ - -This file is part of builder -Copyright © 2009 Mikko Rasa, Mikkosoft Productions -Distributed under the LGPL -*/ - #ifndef FILETARGET_H_ #define FILETARGET_H_ @@ -19,10 +12,27 @@ class FileTarget: public Target { protected: Msp::FS::Path path; + Msp::Time::TimeStamp mtime; + unsigned size; + + FileTarget(Builder &, const Msp::FS::Path &); + FileTarget(Builder &, const SourcePackage &, const Msp::FS::Path &); +private: + void init(const SourcePackage *); + static std::string generate_name(Builder &, const SourcePackage *, const Msp::FS::Path &); - FileTarget(Builder &, const Package *, const Msp::FS::Path &); public: const Msp::FS::Path &get_path() const { return path; } + const Msp::Time::TimeStamp &get_mtime() const { return mtime; } + unsigned get_size() const { return size; } + + /** + Changes the mtime of the target to the current time. + */ + void touch(); + +protected: + virtual void check_rebuild(); }; #endif