X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fbuildercli.h;h=4fcdb0395052913b217f529f31b8b66c2e4d494e;hb=aa053d637e8259755af7d2e4b510a242f4d29c7b;hp=ac8875231ff27ddba88fa6844edc33a31c67c115;hpb=1dad660f7bbda5ef3239fd6374e0f8a77e19eaaa;p=builder.git diff --git a/source/buildercli.h b/source/buildercli.h index ac88752..4fcdb03 100644 --- a/source/buildercli.h +++ b/source/buildercli.h @@ -6,12 +6,13 @@ class Analyzer; +/** +Provides a command-line interface for Builder. +*/ class BuilderCLI: public Msp::RegisteredApplication { private: - typedef std::list NameList; - - NameList cmdline_targets; + std::vector cmdline_targets; Config::InputOptions cmdline_options; Msp::FS::Path cwd; @@ -22,27 +23,26 @@ private: unsigned clean; bool dry_run; bool help; + std::string helpmsg; bool show_progress; std::string build_file; unsigned jobs; - NameList what_if; + std::vector what_if; bool conf_all; bool conf_only; bool build_all; bool create_makefile; - static std::string usagemsg; - static std::string helpmsg; - public: BuilderCLI(int, char **); ~BuilderCLI(); - virtual int main(); + int main() override; +private: bool prepare_build(); + Target *resolve_target(const std::string &); - static void usage(const char *, const char *, bool); void package_help(); };