-/* $Id$
-
-This file is part of builder
-Copyright © 2009 Mikko Rasa, Mikkosoft Productions
-Distributed under the LGPL
-*/
-
+#include "builder.h"
#include "component.h"
#include "executable.h"
#include "sourcepackage.h"
-Executable::Executable(Builder &b, const Component &c, const std::list<ObjectFile *> &objs):
- FileTarget(b, &c.get_package(), generate_target_path(c)),
- Binary(b, c, objs)
+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 list<ObjectFile *> &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());
+}