X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fbinary.h;h=d763dd572f97b084a9f9c7aa0b5bd831eaa632ac;hb=6382743d26f8d5bb10a53cb907659bee6614b549;hp=7c1a701bcc973e43f675346819e0df4a10f80c01;hpb=43bd25ffcb0b4f7882773f4676b209a99cb73c04;p=builder.git diff --git a/source/binary.h b/source/binary.h index 7c1a701..d763dd5 100644 --- a/source/binary.h +++ b/source/binary.h @@ -1,6 +1,7 @@ #ifndef BINARY_H_ #define BINARY_H_ +#include "buildinfo.h" #include "filetarget.h" class Component; @@ -10,21 +11,22 @@ class ObjectFile; Produces a binary file, which may be either a standalone executable or a shared library. */ -class Binary: public virtual FileTarget +class Binary: public FileTarget { +private: + BuildInfo static_binfo; + protected: - const Component ∁ + std::list objects; + + Binary(Builder &, const Msp::FS::Path &); + Binary(Builder &, const Component &, const std::string &, const std::list &); - Binary(Builder &, const Component &, const std::list &); public: - const Component &get_component() const { return comp; } - virtual void find_depends(); -protected: - virtual Action *create_action(); + virtual void collect_build_info(BuildInfo &) const; - /** Returns the path for the binary. We can't do this in the constructor - since we need to pass the value to the Target c'tor. */ - static Msp::FS::Path generate_target_path(const Component &); +protected: + virtual void find_dependencies(); }; #endif