X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fsourcepackage.h;h=5a1eddde5bd1b2793cf9b8e03b90ec9544434725;hb=HEAD;hp=fce58a659fdd925f5b18411ff06035890d6797ca;hpb=3043044d8ef02ef77def454fdede87927f5aa1f8;p=builder.git diff --git a/source/sourcepackage.h b/source/sourcepackage.h deleted file mode 100644 index fce58a6..0000000 --- a/source/sourcepackage.h +++ /dev/null @@ -1,97 +0,0 @@ -#ifndef SOURCEPACKAGE_H_ -#define SOURCEPACKAGE_H_ - -#include -#include -#include "buildinfo.h" -#include "cache.h" -#include "component.h" -#include "conditionalloader.h" -#include "config.h" -#include "feature.h" -#include "package.h" -#include "toolchain.h" - -class Builder; -class BuildType; -class FileTarget; -class SourceArchiveComponent; - -/** -A package that can be built by Builder. -*/ -class SourcePackage: public Package -{ -public: - class Loader: public Msp::DataFile::DerivedObjectLoader, public FeatureConditional - { - private: - const Config::InputOptions *options; - - public: - Loader(SourcePackage &, const Config::InputOptions *); - private: - void finish() override; - - void feature(const std::string &, const std::string &); - template - void component(const std::string &); - template - void component_arg(A, const std::string &); - void build_info(); - void generate(const std::string &); - void interface_version(const std::string &); - void source_archive(); - void tarball(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; - Toolchain local_tools; - FeatureList features; - BuildInfo build_info; - ComponentList components; - SourceArchiveComponent *source_archive; - Config config; - mutable Cache cache; - -public: - SourcePackage(Builder &, const std::string &, const Msp::FS::Path &); - ~SourcePackage(); - - 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_directory() const; - Msp::FS::Path get_output_directory() const; - - const Toolchain &get_toolchain() const { return local_tools; } - const Component &get_component(const std::string &) const; - const Config &get_config() const { return config; } - bool match_feature(const std::string &, const std::string *) const; - void set_build_type(const BuildType &); - const BuildInfo &get_build_info() const { return build_info; } -private: - void do_prepare() override; - -public: - Cache &get_cache() const { return cache; } -private: - void save_caches() override; -}; - -#endif