X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fexecutable.cpp;h=fe37c9f23f0e27b85c7d75e40f41a8269309e44d;hb=722d53055cc78a7a7d9901d2b1fe23a2a33fb623;hp=039267a0b86d9a3b5b7544e7c14d651ddbe09318;hpb=16bda19cc87b5064daad9955f0ebb5ac5be7dec7;p=builder.git diff --git a/source/executable.cpp b/source/executable.cpp index 039267a..fe37c9f 100644 --- a/source/executable.cpp +++ b/source/executable.cpp @@ -1,10 +1,23 @@ +#include "builder.h" #include "component.h" #include "executable.h" #include "sourcepackage.h" +using namespace std; +using namespace Msp; + +Executable::Executable(Builder &b, const FS::Path &p): + Binary(b, p) +{ } + Executable::Executable(Builder &b, const Component &c, const std::list &objs): - FileTarget(b, &c.get_package(), generate_target_path(c)), - Binary(b, c, objs) + Binary(b, c, generate_filename(c), objs) { install_location = "bin"; } + +string Executable::generate_filename(const Component &comp) +{ + const Architecture &arch = comp.get_package().get_builder().get_current_arch(); + return arch.get_executable_patterns().front().apply(comp.get_name()); +}