[PATCH] Permit architecture qualifiers, and strip them for edos-debcheck
Architecture qualifiers (such as :any and :native) work fine with
current sbuild. However, edos-debcheck doesn't understand them, so
strip them off in the synthetic Packages files passed to edos-debcheck.
The worst case here should be that packages with "Build-Depends:
foo:any" may be scheduled for building and then fail if "foo" is not
"Multi-Arch: allowed"; this is not too bad, and it usually corresponds
to a maintainer error anyway.
---
bin/wanna-build | 15 +++++++++++++--
1 file changed, 13 insertions(+), 2 deletions(-)
diff --git a/bin/wanna-build b/bin/wanna-build
index 5df0dc6..bf33107 100755
--- a/bin/wanna-build
+++ b/bin/wanna-build
@@ -1635,10 +1635,21 @@ sub build_deplist {
}
+sub remove_archqual {
+ if ($_[0]->isa('Dpkg::Deps::Simple')) {
+ undef $_[0]->{'archqual'};
+ } else {
+ for my $dep ($_[0]->get_deps()) {
+ remove_archqual($dep);
+ }
+ }
+}
+
sub filterarch {
return "" unless $_[0];
- return "not-existing-build-dependency-for-any" if $_[0] =~ /:any/;
- return Dpkg::Deps::deps_parse($_[0], ("reduce_arch" => 1, "host_arch" => $_[1]))->output();
+ my $deps = Dpkg::Deps::deps_parse($_[0], ("reduce_arch" => 1, "host_arch" => $_[1], "build_dep" => 1));
+ remove_archqual($deps);
+ return $deps->output();
}
sub wb_edos_builddebcheck {
--
1.8.3.2
--
Colin Watson [cjwatson@debian.org]
Reply to: