1 #include <msp/builder/builder.h>
2 #include <msp/builder/sourcepackage.h>
3 #include <msp/builder/tool.h>
4 #include <msp/fs/utils.h>
5 #include "datapackcomponent.h"
6 #include "datasourcefile.h"
11 DataPackComponent::DataPackComponent(SourcePackage &p, const string &n):
15 void DataPackComponent::create_targets() const
17 Builder &builder = package.get_builder();
18 Tool &dcomp = builder.get_toolchain().get_tool("DATA");
20 vector<Target *> files;
21 for(const FS::Path &s: collect_source_files())
23 string ext = FS::extpart(FS::basename(s));
26 Target *src = dcomp.create_source(*this, s);
27 files.push_back(dcomp.create_target(*src, "collection"));
29 else if(Target *tgt = builder.get_vfs().get_target(s))
32 files.push_back(new DataSourceFile(builder, *this, s));
35 Target *result = dcomp.create_target(files, "pack");
37 BuildGraph &build_graph = builder.get_build_graph();
38 build_graph.add_primary_target(*result);
40 build_graph.add_installed_target(*result);