X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Flib%2Finstallcomponent.cpp;fp=source%2Flib%2Finstallcomponent.cpp;h=86919fa3255ca484f760fd9fb6013d5a2e8686a4;hb=c8e829c219c65ff8e93b6c7b66212ff0876441c5;hp=0000000000000000000000000000000000000000;hpb=e2c9c3fffcc61a0c102ccf6a7924e2de709092ad;p=builder.git diff --git a/source/lib/installcomponent.cpp b/source/lib/installcomponent.cpp new file mode 100644 index 0000000..86919fa --- /dev/null +++ b/source/lib/installcomponent.cpp @@ -0,0 +1,23 @@ +#include "installcomponent.h" +#include "builder.h" +#include "file.h" +#include "sourcepackage.h" +#include "tool.h" + +using namespace std; +using namespace Msp; + +void InstallComponent::create_targets() const +{ + Builder &builder = package.get_builder(); + Target *inst = builder.get_build_graph().get_target("install"); + Tool © = builder.get_toolchain().get_tool("CP"); + + for(const FS::Path &s: collect_source_files()) + { + Target *tgt = builder.get_vfs().get_target(s); + if(!tgt) + tgt = new File(builder, package, s); + inst->add_dependency(*copy.create_target(*tgt, name)); + } +}