#include "buildtype.h"
#include "config.h"
#include "logger.h"
-#include "misc.h"
#include "packagemanager.h"
#include "problem.h"
#include "target.h"
typedef std::map<std::string, Target *> TargetMap;
private:
+ typedef std::list<std::string> NameList;
typedef std::map<std::string, BuildType> BuildTypeMap;
+ typedef std::list<Problem> ProblemList;
- StringList cmdline_targets;
+ NameList cmdline_targets;
Config::InputOptions cmdline_options;
Msp::FS::Path cwd;
bool show_progress;
std::string build_file;
unsigned jobs;
- StringList what_if;
+ NameList what_if;
bool conf_all;
bool conf_only;
bool build_all;
~Builder();
int main();
- bool get_dry_run() const { return dry_run; }
PackageManager &get_package_manager() { return package_manager; }
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