class SourcePackage: public Package
{
public:
- class Loader: public Msp::DataFile::DerivedObjectLoader<SourcePackage, Package>
+ class Loader: public Msp::DataFile::DerivedObjectLoader<SourcePackage, Package::Loader>
{
private:
const Config::InputOptions *options;
void condition(const std::string &);
void build_info();
void headers(const std::string &);
- void if_arch(const std::string &);
void if_feature(const std::string &);
+ void interface_version(const std::string &);
+ void source_tarball();
void tarball(const std::string &);
void tar_file(const std::string &);
+ void version(const std::string &);
};
typedef std::list<Component> ComponentList;
private:
+ typedef std::list<Feature> FeatureList;
+
std::string version;
+ std::string interface_version;
std::string description;
FileTarget *build_file;
FeatureList features;
BuildInfo build_info;
ComponentList components;
+ Component *source_tarball;
Config config;
mutable Cache cache;
SourcePackage(Builder &, const std::string &, const Msp::FS::Path &);
const std::string &get_version() const { return version; }
+ const std::string &get_interface_version() const { return interface_version; }
const std::string &get_description() const { return description; }
FileTarget &get_build_file() const { return *build_file; }
const Msp::FS::Path &get_source_directory() const { return source_dir; }
Cache &get_cache() const { return cache; }
private:
- virtual void create_build_info();
-
- virtual void create_targets();
+ virtual void do_prepare();
virtual void save_caches();
};