X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fbuildercli.cpp;h=a7dd1e23ff2402f94ab07a1b67ce85f0fb446801;hb=7bcd4fef81679dedcabc5a58b12511a6b52c4fe4;hp=c470f047f6a930653f2d3ddb63dd0b86d3f8eef5;hpb=cb286fd20b9b194947b6b583bf18f8d7e57ae995;p=builder.git diff --git a/source/buildercli.cpp b/source/buildercli.cpp index c470f04..a7dd1e2 100644 --- a/source/buildercli.cpp +++ b/source/buildercli.cpp @@ -255,12 +255,12 @@ int BuilderCLI::main() if(analyzer) analyzer->analyze(); - const Builder::ProblemList &problems = builder.get_problems(); - if(!problems.empty()) + if(build_graph.get_goals().is_broken()) { + list problems = builder.collect_problems(); IO::print(IO::cerr, "The following problems were detected:\n"); - for(Builder::ProblemList::const_iterator i=problems.begin(); i!=problems.end(); ++i) - IO::print(IO::cerr, " %s: %s\n", i->package, i->descr); + for(list::const_iterator i=problems.begin(); i!=problems.end(); ++i) + IO::print(IO::cerr, " %s\n", *i); if(!analyzer) IO::print(IO::cerr, "Please fix them and try again.\n"); return 1; @@ -315,11 +315,7 @@ bool BuilderCLI::prepare_build() build_graph.force_full_rebuild(); if(!dry_run) - { - const PackageManager::PackageMap &packages = package_manager.get_packages(); - for(PackageManager::PackageMap::const_iterator i=packages.begin(); i!=packages.end(); ++i) - i->second->save_caches(); - } + package_manager.save_all_caches(); return true; }