throw invalid_argument("GnuLinker::Linker::Linker");
}
-Target *GnuLinker::Linker::create_target(const list<Target *> &sources, const string &arg)
-{
- return parent.create_target(sources, arg);
-}
-
-Target *GnuLinker::Linker::create_install(Target &target) const
-{
- return parent.create_install(target);
-}
-
string GnuLinker::Linker::create_build_signature(const BuildInfo &binfo) const
{
string result = FS::basename(executable->get_path());
public:
Linker(GnuLinker &, const std::string &);
- virtual Target *create_target(const std::list<Target *> &, const std::string &);
- virtual Target *create_install(Target &) const;
virtual std::string create_build_signature(const BuildInfo &) const;
private:
virtual void do_prepare();
parent(p)
{ }
+Target *SubTool::create_source(const Component &c, const FS::Path &p) const
+{
+ return parent.create_source(c, p);
+}
+
+Target *SubTool::create_source(const FS::Path &p) const
+{
+ return parent.create_source(p);
+}
+
+Target *SubTool::create_target(const list<Target *> &s, const string &a)
+{
+ return parent.create_target(s, a);
+}
+
+Target *SubTool::create_install(Target &t) const
+{
+ return parent.create_install(t);
+}
+
+string SubTool::create_build_signature(const BuildInfo &bi) const
+{
+ return parent.create_build_signature(bi);
+}
+
void operator>>(const LexicalConverter &conv, Tool::ProcessingUnit &unit)
{
Tool &parent;
SubTool(Tool &);
+
+public:
+ virtual Target *create_source(const Component &, const Msp::FS::Path &) const;
+ virtual Target *create_source(const Msp::FS::Path &) const;
+ virtual Target *create_target(const std::list<Target *> &, const std::string & = std::string());
+ virtual Target *create_install(Target &) const;
+ virtual std::string create_build_signature(const BuildInfo &) const;
};