[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[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: