X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/249aec3b7397662a678ea0014f94392085477b09..41d39345bdc31cb9b8be057cd678aa2890830437:/cmdline/apt-internal-solver.cc?ds=sidebyside diff --git a/cmdline/apt-internal-solver.cc b/cmdline/apt-internal-solver.cc index 939061b93..ae8c08bba 100644 --- a/cmdline/apt-internal-solver.cc +++ b/cmdline/apt-internal-solver.cc @@ -27,6 +27,7 @@ #include #include +#include #include #include @@ -40,12 +41,8 @@ #include /*}}}*/ -// ShowHelp - Show a help screen /*{{{*/ -// --------------------------------------------------------------------- -/* */ -static bool ShowHelp(CommandLine &) { - ioprintf(std::cout, "%s %s (%s)\n", PACKAGE, PACKAGE_VERSION, COMMON_ARCH); - +bool ShowHelp(CommandLine &, aptDispatchWithHelp const *) /*{{{*/ +{ std::cout << _("Usage: apt-internal-solver\n" "\n" @@ -66,22 +63,20 @@ APT_NORETURN static void DIE(std::string const &message) { /*{{{*/ exit(EXIT_FAILURE); } /*}}}*/ +std::vector GetCommands() /*{{{*/ +{ + return {}; +} + /*}}}*/ int main(int argc,const char *argv[]) /*{{{*/ { - CommandLine::Args Args[] = { - {'h',"help","help",0}, - {'v',"version","version",0}, - {'q',"quiet","quiet",CommandLine::IntLevel}, - {'q',"silent","quiet",CommandLine::IntLevel}, - {'c',"config-file",0,CommandLine::ConfigFile}, - {'o',"option",0,CommandLine::ArbItem}, - {0,0,0,0}}; - - // we really don't need anything - DropPrivileges(); + InitLocale(); + + // we really don't need anything + DropPrivileges(); CommandLine CmdL; - ParseCommandLine(CmdL, NULL, Args, &_config, NULL, argc, argv, ShowHelp); + ParseCommandLine(CmdL, APT_CMD::APT_INTERNAL_SOLVER, &_config, NULL, argc, argv); if (CmdL.FileList[0] != 0 && strcmp(CmdL.FileList[0], "scenario") == 0) { @@ -109,8 +104,9 @@ int main(int argc,const char *argv[]) /*{{{*/ if (_config->FindI("quiet", 0) < 1) _config->Set("Debug::EDSP::WriteSolution", true); + _config->Set("APT::System", "Debian APT solver interface"); _config->Set("APT::Solver", "internal"); - _config->Set("edsp::scenario", "stdin"); + _config->Set("edsp::scenario", "/nonexistent/stdin"); int input = STDIN_FILENO; FILE* output = stdout; SetNonBlock(input, false); @@ -187,11 +183,6 @@ int main(int argc,const char *argv[]) /*{{{*/ EDSP::WriteProgress(100, "Done", output); - bool const Errors = _error->PendingError(); - if (_config->FindI("quiet",0) > 0) - _error->DumpErrors(std::cerr); - else - _error->DumpErrors(std::cerr, GlobalError::DEBUG); - return Errors == true ? 100 : 0; + return DispatchCommandLine(CmdL, {}); } /*}}}*/