]> git.tdb.fi Git - builder.git/blob - source/binary.h
Replace per-file copyright notices with a single file
[builder.git] / source / binary.h
1 #ifndef BINARY_H_
2 #define BINARY_H_
3
4 #include "filetarget.h"
5
6 class Component;
7 class ObjectFile;
8
9 /**
10 Produces a binary file, which may be either a standalone executable or a shared
11 library.
12 */
13 class Binary: public virtual FileTarget
14 {
15 protected:
16         const Component ∁
17
18         Binary(Builder &, const Component &, const std::list<ObjectFile *> &);
19 public:
20         const Component &get_component() const { return comp; }
21         virtual void find_depends();
22 protected:
23         virtual Action *create_action();
24
25         /** Returns the path for the binary.  We can't do this in the constructor
26         since we need to pass the value to the Target c'tor. */
27         static Msp::FS::Path generate_target_path(const Component &);
28 };
29
30 #endif