--- /dev/null
+#include <msp/builder/builder.h>
+#include <msp/builder/tool.h>
+#include "builtinplugin.h"
+#include "builtintools.h"
+#include "compilecommandsjson.h"
+#include "pkgconfigfile.h"
+#include "vcxprojectfile.h"
+#include "vssolutionfile.h"
+
+void BuiltinPlugin::add_tools(Toolchain &toolchain, const Architecture &) const
+{
+ toolchain.add_toolchain(new BuiltinTools(builder));
+}
+
+void BuiltinPlugin::create_targets(SourcePackage &spkg) const
+{
+ const Architecture &native_arch = builder.get_native_arch();
+
+ if(!spkg.get_exported_build_info().libs.empty() && native_arch.get_system()=="linux")
+ {
+ PkgConfigFile *pc = new PkgConfigFile(builder, spkg);
+ builder.get_build_graph().get_target("install")->add_dependency(*builder.get_toolchain().get_tool("CP").create_target(*pc));
+ }
+
+ if(native_arch.get_system()=="windows")
+ {
+ new VcxProjectFile(builder, spkg);
+ new VsSolutionFile(builder, spkg);
+ }
+
+ new CompileCommandsJson(builder, spkg);
+}
+
+
+extern "C"
+Plugin *create_plugin(Builder &builder)
+{
+ return new BuiltinPlugin(builder);
+}