]> git.tdb.fi Git - builder.git/blobdiff - source/install.h
Move file-to-target mapping to a separate class
[builder.git] / source / install.h
index 764d9a19bc20f8547ed484e281974eb840c32931..2eb88d4c8684100f6b3c29ed2571b4b84aadf7c1 100644 (file)
@@ -1,10 +1,3 @@
-/* $Id$
-
-This file is part of builder
-Copyright © 2006-2009  Mikko Rasa, Mikkosoft Productions
-Distributed under the LGPL
-*/
-
 #ifndef INSTALL_H_
 #define INSTALL_H_
 
@@ -18,16 +11,18 @@ class Install: public FileTarget
 {
 private:
        FileTarget &source;
+       Msp::FS::Path link;
 
 public:
-       Install(Builder &, const SourcePackage &, FileTarget &);
+       Install(Builder &, const SourcePackage &, FileTarget &, const std::string & =std::string());
        virtual const char *get_type() const { return "Install"; }
        FileTarget &get_source() const { return source; }
+       const Msp::FS::Path &get_symlink() const { return link; }
+       virtual Target *get_real_target();
 private:
        virtual void check_rebuild();
-       virtual Action *create_action();
 
-       static Msp::FS::Path generate_target_path(const FileTarget &);
+       static Msp::FS::Path generate_target_path(const FileTarget &i, const std::string &);
 };
 
 #endif