X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fbuilder.h;h=66194a27c3e4cf3dccf81a6aacc2dee2b31fd9b0;hb=c51e8844f19c31b2809ba459a1659d3b94a86f89;hp=283b5fd3b949d4d454d29b451b23dc0a67f937ac;hpb=7606161ee4a6fd13c2f5ddca413ba3582df66f03;p=builder.git diff --git a/source/builder.h b/source/builder.h index 283b5fd..66194a2 100644 --- a/source/builder.h +++ b/source/builder.h @@ -8,6 +8,7 @@ #include #include #include "architecture.h" +#include "buildgraph.h" #include "buildtype.h" #include "config.h" #include "logger.h" @@ -41,9 +42,6 @@ private: void package(const std::string &); }; -public: - typedef std::map TargetMap; - private: typedef std::list NameList; typedef std::map BuildTypeMap; @@ -55,14 +53,13 @@ private: PackageManager package_manager; - TargetMap targets; - Architecture native_arch; Architecture *current_arch; BuildTypeMap build_types; BuildType *build_type; Toolchain toolchain; VirtualFileSystem vfs; + BuildGraph build_graph; Logger logger; ProblemList problems; @@ -93,14 +90,9 @@ public: PackageManager &get_package_manager() { return package_manager; } - /** Looks up a target by name. Returns 0 if no such target exists. */ - Target *get_target(const std::string &) const; - - const TargetMap &get_targets() const { return targets; } - - const Msp::FS::Path &get_work_directory() const { return cwd; } const Architecture &get_current_arch() const { return *current_arch; } const Architecture &get_native_arch() const { return native_arch; } + BuildGraph &get_build_graph() { return build_graph; } const Msp::FS::Path &get_prefix() const { return prefix; } const Msp::FS::Path &get_temp_directory() const { return tempdir; } @@ -108,20 +100,6 @@ public: VirtualFileSystem &get_vfs() { return vfs; } const Logger &get_logger() const { return logger; } - /** 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 - as dependencies of the "world" virtual target. If the target belongs to a - default component of the main package, it's also added to the "default" - 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);