summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Kalnischkies <kalnischkies@gmail.com>2011-07-24 19:03:15 +0200
committerDavid Kalnischkies <kalnischkies@gmail.com>2011-07-24 19:03:15 +0200
commite3a86238d2fac37c5573079d70dbf3d31a638cfd (patch)
tree1643ee589dac8a363afb3bcd666ed03af56eb6a5
parent331eea386e2bb57af6dbb9f1c86f176b2d55c6a1 (diff)
buildconflicts effect all architectures
-rw-r--r--cmdline/apt-get.cc24
-rw-r--r--debian/changelog3
2 files changed, 15 insertions, 12 deletions
diff --git a/cmdline/apt-get.cc b/cmdline/apt-get.cc
index 748ebe6ab..1df3b520e 100644
--- a/cmdline/apt-get.cc
+++ b/cmdline/apt-get.cc
@@ -2733,20 +2733,22 @@ bool DoBuildDep(CommandLine &CmdL)
if ((*D).Type == pkgSrcRecords::Parser::BuildConflict ||
(*D).Type == pkgSrcRecords::Parser::BuildConflictIndep)
{
- pkgCache::PkgIterator Pkg = Cache->FindPkg((*D).Package);
+ pkgCache::GrpIterator Grp = Cache->FindGrp((*D).Package);
// Build-conflicts on unknown packages are silently ignored
- if (Pkg.end() == true)
+ if (Grp.end() == true)
continue;
- pkgCache::VerIterator IV = (*Cache)[Pkg].InstVerIter(*Cache);
-
- /*
- * Remove if we have an installed version that satisfies the
- * version criteria
- */
- if (IV.end() == false &&
- Cache->VS().CheckDep(IV.VerStr(),(*D).Op,(*D).Version.c_str()) == true)
- TryToInstallBuildDep(Pkg,Cache,Fix,true,false);
+ for (pkgCache::PkgIterator Pkg = Grp.PackageList(); Pkg.end() == false; Pkg = Grp.NextPkg(Pkg))
+ {
+ pkgCache::VerIterator IV = (*Cache)[Pkg].InstVerIter(*Cache);
+ /*
+ * Remove if we have an installed version that satisfies the
+ * version criteria
+ */
+ if (IV.end() == false &&
+ Cache->VS().CheckDep(IV.VerStr(),(*D).Op,(*D).Version.c_str()) == true)
+ TryToInstallBuildDep(Pkg,Cache,Fix,true,false);
+ }
}
else // BuildDep || BuildDepIndep
{
diff --git a/debian/changelog b/debian/changelog
index 607f7c64a..c9659395f 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -18,6 +18,7 @@ apt (0.8.15.3) UNRELEASED; urgency=low
* cmdline/apt-get.cc:
- restore all important dependencies for garbage packages (LP: #806274)
- do not require unused partial dirs in 'source' (Closes: #633510)
+ - buildconflicts effect all architectures
* apt-pkg/init.cc:
- use CndSet in pkgInitConfig (Closes: #629617)
* apt-pkg/depcache.cc:
@@ -31,7 +32,7 @@ apt (0.8.15.3) UNRELEASED; urgency=low
* apt-pkg/policy.cc:
- emit an error on unknown APT::Default-Release value (Closes: #407511)
- -- David Kalnischkies <kalnischkies@gmail.com> Sat, 16 Jul 2011 16:43:37 +0200
+ -- David Kalnischkies <kalnischkies@gmail.com> Sun, 24 Jul 2011 18:41:43 +0200
apt (0.8.15.2) unstable; urgency=high