]> git.tdb.fi Git - builder.git/blob - source/binary.h
Move the Component reference to Target and make it a pointer
[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         Binary(Builder &, const Component &, const std::list<ObjectFile *> &);
17 public:
18         virtual void find_depends();
19 protected:
20         /** Returns the path for the binary.  We can't do this in the constructor
21         since we need to pass the value to the Target c'tor. */
22         static Msp::FS::Path generate_target_path(const Component &);
23 };
24
25 #endif