X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fbinarypackage.h;h=62a8acf3fc6ba70bc2a2d2c215c7359cf8b8a5d9;hb=aa053d637e8259755af7d2e4b510a242f4d29c7b;hp=cb054053b62d56d98eb65bc401a12ddbf01b988d;hpb=ef97eadef58922f45e1ba86a1d009db5ea41dd50;p=builder.git diff --git a/source/binarypackage.h b/source/binarypackage.h index cb05405..62a8acf 100644 --- a/source/binarypackage.h +++ b/source/binarypackage.h @@ -10,19 +10,31 @@ Builder. class BinaryPackage: public Package { public: - class Loader: public Msp::DataFile::DerivedObjectLoader + class Loader: public Msp::DataFile::DerivedObjectLoader { public: Loader(BinaryPackage &); private: void build_info(); + void header(const std::string &); }; + using Flags = std::vector; + +private: + Msp::FS::Path base_path; + std::vector headers; + BuildInfo static_binfo; + +public: BinaryPackage(Builder &, const std::string &); - static BinaryPackage *from_flags(Builder &, const std::string &, const std::vector &); + const BuildInfo &get_static_build_info() const { return static_binfo; } + + static BinaryPackage *from_flags(Builder &, const std::string &, const Flags &, const Flags & = Flags()); private: - virtual void create_build_info(); + static void process_flags(const Flags &, BuildInfo &); + void do_prepare() override; }; #endif