--- /dev/null
+#ifndef MSVCCOMPILER_H_
+#define MSVCCOMPILER_H_
+
+#include "tool.h"
+
+class MicrosoftTools;
+
+class MsvcCompiler: public Tool
+{
+private:
+ const MicrosoftTools &ms_tools;
+
+public:
+ MsvcCompiler(Builder &, const Architecture &, const std::string &, const MicrosoftTools &);
+
+ 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 &);
+ virtual std::string create_build_signature(const BuildInfo &) const;
+
+protected:
+ virtual void do_prepare();
+
+public:
+ virtual Task *run(const Target &) const;
+};
+
+#endif