[SCM] Debian package checker branch, master, updated. 2.2.18-66-g22786ed
The following commit has been merged in the master branch:
commit 6fce3fc47860b3b9ea55093e31f522146e0c0ac5
Author: Luca Falavigna <dktrkranz@debian.org>
Date: Fri Dec 25 10:33:01 2009 -0800
Check for arch: all packages build-depending on python-dev
python-dev, pythonX.Y-dev and python-all-dev are normally only needed to
build C language extensions or to embed Python in an application. In
virtually all cases they are not required to build a package with only
pure Python modules.
diff --git a/checks/control-file b/checks/control-file
index fc448d7..aeacccb 100644
--- a/checks/control-file
+++ b/checks/control-file
@@ -276,6 +276,21 @@ for my $i (0 .. $#descriptions) {
}
}
+# Check for python*-dev build-dependency with Architecture: any packages
+my $isNotAll = 0;
+my $pydev_bd;
+my $pydev_bdi;
+$pydev_bd = $header->{"build-depends"} =~ /python(-all|[\d.])*-dev/ if $header->{"build-depends"};
+$pydev_bdi = $header->{"build-depends-indep"} =~ /python(-all|[\d.])*-dev/ if $header->{"build-depends-indep"};
+if ($pydev_bd or $pydev_bdi) {
+ for my $control (@binary_controls) {
+ foreach ($control->{architecture}) {
+ $isNotAll = 1 if ($_ ne 'all');
+ }
+ }
+ tag 'python-dev-with-no-arch-any-packages' if ($isNotAll eq 0);
+}
+
}
1;
diff --git a/checks/control-file.desc b/checks/control-file.desc
index 366ba71..d6c9989 100644
--- a/checks/control-file.desc
+++ b/checks/control-file.desc
@@ -169,3 +169,17 @@ Info: The given package appears to be a shared library -dev package, but
dependency since it would break binary NMUs. Instead, a dependency of
<tt>(>= ${source:Upstream-Version}), (<< ${source:Version}.1~)</tt> or
similar is usually the correct approach.
+
+Tag: python-dev-with-no-arch-any-packages
+Severity: normal
+Certainty: possible
+Info: The given package appears to have a Python development package
+ (python-dev, python-all-dev or pythonX.Y-dev) listed in its Build-Depends
+ or Build-Depends-Indep fields, but only "Architecture: all" packages are
+ created. Python applications and modules do not usually require such
+ packages, so you should consider removing them in favour of python,
+ python-all or pythonX.Y packages.
+ .
+ If you are building a Python extension instead, you should have
+ development packages listed in Build-Depends, but you need at least one
+ "Architecture: any" package.
--
Debian package checker
Reply to: