On Mon, Aug 31, 2015 at 11:42:56AM +0000, Mattia Rizzolo wrote:
> Yes, please add /build and /tmp/buildd to this check, where the actual
> builds happen inside the chroots.
>
> Patch attached.
Ok, that one was a bit broken.
I also moved the check a bit up and checked for the directory itself
(removing the final dot from the regexp).
Looks a bit cleaner.
Thanks to abe!
--
regards,
Mattia Rizzolo
GPG Key: 66AE 2B4A FCCF 3F52 DA18 4D18 4B04 3FCD B944 4540 .''`.
more about me: http://mapreri.org : :' :
Launchpad user: https://launchpad.net/~mapreri `. `'`
Debian QA page: https://qa.debian.org/developer.php?login=mattia `-
From f86e21aa1e8003fdb2d577f08a3b2fa8eb3c65bd Mon Sep 17 00:00:00 2001
From: Mattia Rizzolo <mattia@mapreri.org>
Date: Mon, 31 Aug 2015 11:40:14 +0000
Subject: [PATCH] checks/files.pm: also checks for /build and /tmp/buildd in
dir-or-file-in-build-tree
Also, move the check up in the "check tree" to get this tag always emitted.
Also, emit the tag also for the top level directories themselves.
---
checks/files.pm | 20 +++++++++++---------
debian/changelog | 3 +++
t/tests/files-foo-in-bar/debian/debian/install | 2 ++
t/tests/files-foo-in-bar/tags | 12 ++++++++++++
4 files changed, 28 insertions(+), 9 deletions(-)
diff --git a/checks/files.pm b/checks/files.pm
index b816ed8..19e80a0 100644
--- a/checks/files.pm
+++ b/checks/files.pm
@@ -441,8 +441,18 @@ sub run {
}
}
+ # build directory
+ if ($fname =~ m,^var/cache/pbuilder/build/,
+ or $fname =~ m,^var/lib/sbuild/,
+ or $fname =~ m,^var/lib/buildd/,
+ or $fname =~ m,^build/,
+ or $fname =~ m,^tmp/buildd/,) {
+ unless ($source_pkg eq 'sbuild') {
+ tag 'dir-or-file-in-build-tree', $file;
+ }
+ }
# ---------------- /etc
- if ($fname =~ m,^etc/,) {
+ elsif ($fname =~ m,^etc/,) {
# /etc/apt
if ($fname =~ m,^etc/apt/,) {
# -----------------/etc/apt/preferences
@@ -952,14 +962,6 @@ sub run {
elsif ($fname =~ m,^srv/.,) {
tag 'dir-or-file-in-srv', $file;
}
- # build directory
- elsif ($fname =~ m,^var/cache/pbuilder/build/.,
- or $fname =~ m,^var/lib/sbuild/.,
- or $fname =~ m,^var/lib/buildd/.,) {
- unless ($source_pkg eq 'sbuild') {
- tag 'dir-or-file-in-build-tree', $file;
- }
- }
# ---------------- FHS directory?
elsif (
$fname =~ m,^[^/]+/$,o
diff --git a/debian/changelog b/debian/changelog
index 60299e4..c8d841e 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -42,6 +42,9 @@ lintian (2.5.37) UNRELEASED; urgency=medium
Thanks to Jean-Michel Vourgère for reporting the issue.
+ [AB] Also emit package-relation-with-perl-module for build-*
relations. Thanks gregor herrmann! (Closes: #798385)
+ * checks/files.pm:
+ + Apply patch from Mattia Rizzolo to also check for files in /build and
+ /tmp/buildd in dir-or-file-in-build-tree. (Closes: #797532)
* checks/obsolete-sites.{desc,pm}:
+ [AB] New check with tag obsolete-url-in-packaging to check for URLs
of hosting sites with frozen contents or (soon to be) closed hosting
diff --git a/t/tests/files-foo-in-bar/debian/debian/install b/t/tests/files-foo-in-bar/debian/debian/install
index af63a20..50d65b4 100644
--- a/t/tests/files-foo-in-bar/debian/debian/install
+++ b/t/tests/files-foo-in-bar/debian/debian/install
@@ -46,6 +46,8 @@ bar etc/opt
bar var/cache/pbuilder/build
bar var/lib/sbuild
bar var/lib/buildd
+bar build/dir/foo
+bar tmp/buildd/dir/foo
bar etc/dhcp3
Bar.pm usr/lib/perl5/Foo
diff --git a/t/tests/files-foo-in-bar/tags b/t/tests/files-foo-in-bar/tags
index 488c306..62ca87f 100644
--- a/t/tests/files-foo-in-bar/tags
+++ b/t/tests/files-foo-in-bar/tags
@@ -1,6 +1,17 @@
E: files-foo-in-bar: dir-in-usr-local usr/local/foo/
+E: files-foo-in-bar: dir-or-file-in-build-tree build/
+E: files-foo-in-bar: dir-or-file-in-build-tree build/dir/
+E: files-foo-in-bar: dir-or-file-in-build-tree build/dir/foo/
+E: files-foo-in-bar: dir-or-file-in-build-tree build/dir/foo/bar
+E: files-foo-in-bar: dir-or-file-in-build-tree tmp/buildd/
+E: files-foo-in-bar: dir-or-file-in-build-tree tmp/buildd/dir/
+E: files-foo-in-bar: dir-or-file-in-build-tree tmp/buildd/dir/foo/
+E: files-foo-in-bar: dir-or-file-in-build-tree tmp/buildd/dir/foo/bar
+E: files-foo-in-bar: dir-or-file-in-build-tree var/cache/pbuilder/build/
E: files-foo-in-bar: dir-or-file-in-build-tree var/cache/pbuilder/build/bar
+E: files-foo-in-bar: dir-or-file-in-build-tree var/lib/buildd/
E: files-foo-in-bar: dir-or-file-in-build-tree var/lib/buildd/bar
+E: files-foo-in-bar: dir-or-file-in-build-tree var/lib/sbuild/
E: files-foo-in-bar: dir-or-file-in-build-tree var/lib/sbuild/bar
E: files-foo-in-bar: dir-or-file-in-etc-opt etc/opt/bar
E: files-foo-in-bar: dir-or-file-in-home home/johndoe/
@@ -58,6 +69,7 @@ E: files-foo-in-bar: udev-rule-in-etc etc/udev/rules.d/bar
W: files-foo-in-bar: debug-package-should-be-named-dbg usr/lib/debug/bar
W: files-foo-in-bar: executable-not-elf-or-script bin/foo/bar
W: files-foo-in-bar: executable-not-elf-or-script usr/bin/foo/bar
+W: files-foo-in-bar: file-in-unusual-dir build/dir/foo/bar
W: files-foo-in-bar: file-in-unusual-dir emul/bar
W: files-foo-in-bar: file-in-unusual-dir usr/foo/bar
W: files-foo-in-bar: file-in-unusual-dir usr/local/foo/bar
--
2.5.1
Attachment:
signature.asc
Description: Digital signature