X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fbuilder.h;h=67b337553b2ebbfba0df6427b798cb876c7d465e;hb=98ad5711a0c56d9783a0d22b932e9b55ddd30ba2;hp=b6c9ebcfc3caee4d6bfe57c59d7b69ba8be895b8;hpb=edb6076ccae6347acb84868563144a63e6ceba02;p=builder.git diff --git a/source/builder.h b/source/builder.h index b6c9ebc..67b3375 100644 --- a/source/builder.h +++ b/source/builder.h @@ -11,7 +11,6 @@ #include "buildtype.h" #include "config.h" #include "logger.h" -#include "misc.h" #include "packagemanager.h" #include "problem.h" #include "target.h" @@ -46,9 +45,11 @@ public: typedef std::map TargetMap; private: + typedef std::list NameList; typedef std::map BuildTypeMap; + typedef std::list ProblemList; - StringList cmdline_targets; + NameList cmdline_targets; Config::InputOptions cmdline_options; Msp::FS::Path cwd; @@ -74,7 +75,7 @@ private: bool show_progress; std::string build_file; unsigned jobs; - StringList what_if; + NameList what_if; bool conf_all; bool conf_only; bool build_all; @@ -90,7 +91,6 @@ public: ~Builder(); int main(); - bool get_dry_run() const { return dry_run; } PackageManager &get_package_manager() { return package_manager; } @@ -109,8 +109,8 @@ public: VirtualFileSystem &get_vfs() { return vfs; } const Logger &get_logger() const { return logger; } - /** Adds a target to both the target map and the new target queue. Called - from Target constructor. */ + /** Adds a target. It can later be retrieved by name. Called from Target + constructor. */ void add_target(Target *); /** Adds a target that is a primary build goal. Such targets will be added @@ -119,13 +119,17 @@ public: virtual target. */ void add_primary_target(Target &); + /** Adds a target that will be installed. A new InstalledFile target is + created and added as a dependency to the "install" virtual target. */ + void add_installed_target(Target &); + void problem(const std::string &, const std::string &); static void usage(const char *, const char *, bool); /** Loads a build file. Returns 0 on success or -1 if the file could not be opened. */ - int load_build_file(const Msp::FS::Path &); + void load_build_file(const Msp::FS::Path &); private: /** Prepares packages and targets for building. Returns true if everything