X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fsourcepackage.h;h=5a1eddde5bd1b2793cf9b8e03b90ec9544434725;hb=HEAD;hp=086690765d691eb5dd124a7def583ebd20db2521;hpb=ac1f35e436dbe86f903dce2f49b002ff17f1ca50;p=builder.git diff --git a/source/sourcepackage.h b/source/sourcepackage.h deleted file mode 100644 index 0866907..0000000 --- a/source/sourcepackage.h +++ /dev/null @@ -1,99 +0,0 @@ -#ifndef SOURCEPACKAGE_H_ -#define SOURCEPACKAGE_H_ - -#include -#include -#include "buildinfo.h" -#include "cache.h" -#include "component.h" -#include "condition.h" -#include "config.h" -#include "feature.h" -#include "package.h" - -class Builder; -class BuildType; -class FileTarget; - -class bad_expansion: public std::runtime_error -{ -public: - bad_expansion(const std::string &w): std::runtime_error(w) { } - virtual ~bad_expansion() throw() { } -}; - -/** -A package that can be built by Builder. -*/ -class SourcePackage: public Package -{ -public: - class Loader: public Msp::DataFile::DerivedObjectLoader - { - private: - const Config::InputOptions *options; - std::map install_map; - - public: - Loader(SourcePackage &); - Loader(SourcePackage &, const Config::InputOptions &); - private: - void init(const Config::InputOptions *); - virtual void finish(); - void feature(const std::string &, const std::string &); - template - void component(const std::string &); - void condition(const std::string &); - void build_info(); - void headers(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 ComponentList; - -private: - typedef std::list FeatureList; - - std::string version; - std::string interface_version; - std::string description; - - FileTarget *build_file; - Msp::FS::Path source_dir; - const BuildType *build_type; - FeatureList features; - BuildInfo build_info; - ComponentList components; - Component *source_tarball; - Config config; - mutable Cache cache; - -public: - 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; } - Msp::FS::Path get_temp_dir() const; - Msp::FS::Path get_out_dir() const; - const ComponentList &get_components() const { return components; } - const Config &get_config() const { return config; } - bool match_feature(const std::string &) const; - void set_build_type(const BuildType &); - const BuildInfo &get_build_info() const { return build_info; } - - Cache &get_cache() const { return cache; } -private: - virtual void do_prepare(); - - virtual void save_caches(); -}; - -#endif