]> git.tdb.fi Git - builder.git/blob - source/install.h
Improve file target naming
[builder.git] / source / install.h
1 #ifndef INSTALL_H_
2 #define INSTALL_H_
3
4 #include "sourcepackage.h"
5 #include "filetarget.h"
6
7 /**
8 Represents the installation of a file.
9 */
10 class Install: public FileTarget
11 {
12 private:
13         FileTarget &source;
14
15 public:
16         Install(Builder &, const SourcePackage &, FileTarget &, const std::string & =std::string());
17         virtual const char *get_type() const { return "Install"; }
18         FileTarget &get_source() const { return source; }
19         virtual Target *get_real_target();
20 private:
21         virtual void check_rebuild();
22         virtual Action *create_action();
23
24         static Msp::FS::Path generate_target_path(const FileTarget &i, const std::string &);
25 };
26
27 #endif