]> git.tdb.fi Git - builder.git/blobdiff - plugins/builtin/compilecommandsjson.cpp
Rearrange sources into subdirectories
[builder.git] / plugins / builtin / compilecommandsjson.cpp
diff --git a/plugins/builtin/compilecommandsjson.cpp b/plugins/builtin/compilecommandsjson.cpp
new file mode 100644 (file)
index 0000000..d4adc14
--- /dev/null
@@ -0,0 +1,17 @@
+#include <msp/builder/builder.h>
+#include <msp/builder/package.h>
+#include <msp/builder/objectfile.h>
+#include "compilecommandsjson.h"
+
+CompileCommandsJson::CompileCommandsJson(Builder &b, const SourcePackage &p):
+       FileTarget(b, p, p.get_source_directory()/("compile_commands.json"))
+{
+       tool = &builder.get_toolchain().get_tool("CCJG");
+}
+
+void CompileCommandsJson::find_dependencies()
+{
+       for(const auto &kvp: builder.get_build_graph().get_targets())
+               if(kvp.second->is_buildable() && kvp.second->get_package()==package && dynamic_cast<ObjectFile *>(kvp.second))
+                       kvp.second->prepare();
+}