diff options
-rw-r--r-- | cmdline/apt-get.cc | 8 | ||||
-rw-r--r-- | debian/changelog | 4 |
2 files changed, 9 insertions, 3 deletions
diff --git a/cmdline/apt-get.cc b/cmdline/apt-get.cc index c81538a23..0ab1dc1d2 100644 --- a/cmdline/apt-get.cc +++ b/cmdline/apt-get.cc @@ -1,6 +1,6 @@ // -*- mode: cpp; mode: fold -*- // Description /*{{{*/ -// $Id: apt-get.cc,v 1.132 2003/07/22 03:00:19 mdz Exp $ +// $Id: apt-get.cc,v 1.133 2003/07/25 22:03:49 mdz Exp $ /* ###################################################################### apt-get - Cover for dpkg @@ -2093,7 +2093,9 @@ bool DoBuildDep(CommandLine &CmdL) * installed */ pkgCache::PrvIterator Prv = Pkg.ProvidesList(); - for (; Prv.end() != true; Prv++) { + bool providedBySomething = !Prv.end(); + for (; Prv.end() != true; Prv++) + { if ((*Cache)[Prv.OwnerPkg()].InstVerIter(*Cache).end() == false) break; } @@ -2101,7 +2103,7 @@ bool DoBuildDep(CommandLine &CmdL) // Get installed version and version we are going to install pkgCache::VerIterator IV = (*Cache)[Pkg].InstVerIter(*Cache); - if (Prv.end() == true || (*D).Version != "") { + if (!providedBySomething || (*D).Version[0] != '\0') { /* We either have a versioned dependency (so a provides won't do) or nothing is providing this package */ diff --git a/debian/changelog b/debian/changelog index 1a6b6fa8b..dc2670cd6 100644 --- a/debian/changelog +++ b/debian/changelog @@ -5,6 +5,10 @@ apt (0.5.8) unstable; urgency=low <philippe.batailler@free.fr> (Closes: #182194) * Give a warning if an illegal type abbreviation is used when looking up a configuration item (Closes: #168453) + * Improve build-depends handling of virtual packages even further, so that + it will now also try to satisfy build-depends on virtual packages if they + are not installed. Note that this only works if there is only one + package providing the virtual package, as in other cases (Closes: #165404) -- |