Here's a patch that would partially fix this bug. I say partially because this 
only works if $apt_policy is left with it's default value of 1.

I've run into an issue in trying to work out something that could work without 
apt-get.

-- 
Regards,
Andres
From fc4d77506c4f7003712d89eda9bb599a2809aad7 Mon Sep 17 00:00:00 2001
From: Andres Mejia <mcita...@gmail.com>
Date: Sat, 27 Feb 2010 17:28:39 -0500
Subject: [PATCH] Fix internal build-dep satisfier for A | B build-dep and A uninstallable when APT_POLICY is used.

---
 lib/Sbuild/InternalBuildDepSatisfier.pm |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/lib/Sbuild/InternalBuildDepSatisfier.pm b/lib/Sbuild/InternalBuildDepSatisfier.pm
index 335a03c..2a845ba 100644
--- a/lib/Sbuild/InternalBuildDepSatisfier.pm
+++ b/lib/Sbuild/InternalBuildDepSatisfier.pm
@@ -244,6 +244,9 @@ sub filter_dependencies {
 		    } else {
 			$builder->log("Using default version " . $policy->{$name}->{defversion} . "\n");
 		    }
+		} elsif ($self->get_conf('APT_POLICY') && !defined($policy->{$name})) {
+			$builder->log("Package $name not found. Skipping for now, maybe there are alternatives.\n");
+			next if ($self->get_conf('CHECK_DEPENDS_ALGORITHM') eq "alternatives");
 		}
 		$installable = $name if !$installable;
 		next;
-- 
1.7.0

Reply via email to