*/
class StaticLibrary: public FileTarget
{
+private:
+ /* TODO this really belongs in a Component, but some refactoring is required
+ to allow non-builder packages to have components. Rename BinaryPackage to
+ ExternalPackage, add BuildableComponent and ExternalComponent classes. */
+ BuildInfo build_info;
+
public:
StaticLibrary(Builder &, const Msp::FS::Path &);
StaticLibrary(Builder &, const Component &, const std::list<ObjectFile *> &);
+private:
+ static std::string generate_filename(const Component &);
+public:
virtual const char *get_type() const { return "StaticLibrary"; }
-private:
- static Msp::FS::Path generate_target_path(const Component &);
+
+ void add_required_library(const std::string &);
+ void add_library_path(const Msp::FS::Path &);
+ virtual void collect_build_info(BuildInfo &) const;
};
#endif