1 #ifndef STATICLIBRARY_H_
2 #define STATICLIBRARY_H_
4 #include "filetarget.h"
10 A static library target.
12 class StaticLibrary: public FileTarget
15 /* TODO this really belongs in a Component, but some refactoring is required
16 to allow non-builder packages to have components. Rename BinaryPackage to
17 ExternalPackage, add BuildableComponent and ExternalComponent classes. */
21 StaticLibrary(Builder &b, const Msp::FS::Path &p): FileTarget(b, p) { }
22 StaticLibrary(Builder &, const Component &, const std::vector<ObjectFile *> &);
24 static std::string generate_filename(const Component &);
27 const char *get_type() const override { return "StaticLibrary"; }
29 void add_required_library(const std::string &);
30 void add_library_path(const Msp::FS::Path &);
31 void collect_build_info(BuildInfo &) const override;