aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAvatar Ciaran McCreesh <ciaran.mccreesh@googlemail.com> 2010-01-06 19:00:35 +0000
committerAvatar Ciaran McCreesh <ciaran.mccreesh@googlemail.com> 2010-01-06 19:00:35 +0000
commit2d45cc140b71ba02a9e2bb01a532488d51ac5910 (patch)
tree7c0a12c3c796b49746529aedeab880d52fed8697
parent8d6a7fe24df29be771088fb470f3afc63a64d574 (diff)
downloadpaludis-2d45cc140b71ba02a9e2bb01a532488d51ac5910.tar.gz
paludis-2d45cc140b71ba02a9e2bb01a532488d51ac5910.tar.xz
Show which additional reqs were unmet
-rw-r--r--src/output/console_install_task.cc11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/output/console_install_task.cc b/src/output/console_install_task.cc
index aea0964..8f48795 100644
--- a/src/output/console_install_task.cc
+++ b/src/output/console_install_task.cc
@@ -1,7 +1,7 @@
/* vim: set sw=4 sts=4 et foldmethod=syntax : */
/*
- * Copyright (c) 2006, 2007, 2008, 2009 Ciaran McCreesh
+ * Copyright (c) 2006, 2007, 2008, 2009, 2010 Ciaran McCreesh
*
* This file is part of the Paludis package manager. Paludis is free software;
* you can redistribute it and/or modify it under the terms of the GNU General
@@ -1758,11 +1758,16 @@ ConsoleInstallTask::on_additional_requirements_not_met_error(const AdditionalReq
output_stream() << endl;
if (e.query().additional_requirements_ptr())
{
- output_stream() << "Additional requirements are as follows:" << endl;
+ output_stream() << "Unmet additional requirements are as follows:" << endl;
for (AdditionalPackageDepSpecRequirements::ConstIterator i(e.query().additional_requirements_ptr()->begin()),
i_end(e.query().additional_requirements_ptr()->end()) ;
i != i_end ; ++i)
- output_stream() << " * " << (*i)->as_human_string() << endl;
+ {
+ const std::pair<bool, std::string> r((*i)->requirement_met(environment(), *e.package_id()));
+ if (r.first)
+ continue;
+ output_stream() << " * " << r.second << endl;
+ }
output_stream() << endl;
}
output_stream() << "This error usually indicates that one of the packages you are trying to" << endl;