X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Ftool.h;h=294805359e43dc7f2096cfc9650ca7afb5bf1379;hb=0dd3d23846e7fdb729359a57d3f4b190f65aed55;hp=6aee38b2ee6a59b62206c0f8617dd7e5df6cf590;hpb=03227882aef8b448065e6ca9cda9b7722b7a9753;p=builder.git diff --git a/source/tool.h b/source/tool.h index 6aee38b..2948053 100644 --- a/source/tool.h +++ b/source/tool.h @@ -61,7 +61,7 @@ public: /// Creates a source file appropriate for this tool. virtual Target *create_source(const Component &, const Msp::FS::Path &) const { return 0; } - /** Creates a package-less source file appropriate for this too. This is + /** Creates a package-less source file appropriate for this tool. This is called during dependency discovery when no package has created a target for the file. */ virtual Target *create_source(const Msp::FS::Path &) const { return 0; } @@ -74,6 +74,10 @@ public: alternative target type for tools that can create multiple kinds of targets. */ virtual Target *create_target(const std::list &, const std::string & = std::string()) const = 0; + /** Creates an install target for a target created by this tool. Can return + null if the tool does not want to handle installing in a special way. */ + virtual Target *create_install(Target &) const { return 0; } + virtual std::string create_build_signature(const BuildInfo &) const { return std::string(); } /** Invokes the tool to build a target. This should not be called directly;