This is an automated email from the git hooks/post-receive script. lamby pushed a commit to branch master in repository lintian.
commit 44b7f754de9c8380c08ca7ffe9c2902ea47ad99b Author: Chris Lamb <[email protected]> Date: Tue Feb 6 17:55:39 2018 +0000 Fix a number of false-positives when checking the "override_dh_auto-test-does-not-check-DEB_BUILD_PROFILES" tag. (Closes: #889592) This reverts commit 293c897ef968e0f50ac4f48986034aeda57e179d. --- checks/rules.desc | 26 ++++++++++++++++++++++ checks/rules.pm | 9 ++++++++ debian/changelog | 4 ++-- .../debian/debian/rules | 9 ++++++++ .../desc | 5 +++++ .../tags | 0 .../debian/debian/rules | 7 ++++++ .../desc | 5 +++++ .../tags | 0 .../debian/debian/rules | 8 +++++++ .../desc | 5 +++++ .../tags | 0 .../debian/debian/rules | 8 +++++++ .../desc | 5 +++++ .../tags | 0 .../debian/debian/rules | 8 +++++++ .../desc | 5 +++++ .../tags | 0 .../debian/debian/rules | 7 ++++++ .../desc | 5 +++++ .../tags | 1 + 21 files changed, 115 insertions(+), 2 deletions(-) diff --git a/checks/rules.desc b/checks/rules.desc index b22aa06..581d4a0 100644 --- a/checks/rules.desc +++ b/checks/rules.desc @@ -338,6 +338,7 @@ Info: The <tt>debian/rules</tt> file for this package has a call to Please remove the call and let dpkg-deb(1) select suitable defaults. Ref: #829100, dpkg-deb(1) + Tag: debian-rules-is-dh_make-template Severity: important Certainty: certain @@ -345,3 +346,28 @@ Info: The debian/rules file appears to be an unmodified or insufficiently modified copy of the dh_make template. . Please double-check the rules file. + +Tag: override_dh_auto_test-does-not-check-DEB_BUILD_PROFILES +Severity: wishlist +Certainty: possible +Info: The <tt>debian/rules</tt> file for this package has an + <tt>override_dh_auto_test</tt> target that does not appear to + check <tt>DEB_BUILD_PROFILES</tt> against <tt>nocheck</tt>. + . + As this check is not automatically performed by debhelper(1), the + specified testsuite is run regardless of using the <tt>nocheck</tt> + build profile. + . + Please add a check such as: + . + override_dh_auto_test: + ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS))) + ./run-upstream-testsuite + endif + . + Lintian will ignore targets such as: + . + # Disabled + : Disabled + echo "Disbled" +Ref: https://wiki.debian.org/BuildProfileSpec#Registered_profile_names diff --git a/checks/rules.pm b/checks/rules.pm index 559e72e..95b6abc 100644 --- a/checks/rules.pm +++ b/checks/rules.pm @@ -442,6 +442,15 @@ sub run { @{$rules_per_target{"override_$cmd"}}; } + if (my $line = $overridden{'dh_auto_test'}) { + my @lines = grep { $_ !~ m/^\t\s*(:|dh_auto_test|echo)\s+/ } + @{$rules_per_target{'override_dh_auto_test'}}; + tag 'override_dh_auto_test-does-not-check-DEB_BUILD_PROFILES', + "(line $line)" + if @lines + and none { m/(DEB_BUILD_OPTIONS|nocheck)/ } @conditionals; + } + # Make sure that all the required build dependencies are there. Don't # issue missing-build-dependency errors for debhelper, since there's # another test that does that and it would just be a duplicate. diff --git a/debian/changelog b/debian/changelog index 5b96d39..764ea94 100644 --- a/debian/changelog +++ b/debian/changelog @@ -26,8 +26,8 @@ lintian (2.5.74) UNRELEASED; urgency=medium reference" warnings when debian/patches is a file, not a directory. (Closes: #889535) * checks/rules.{desc,pm}: - + [CL] Remove override_dh_auto_test-does-not-check-DEB_BUILD_PROFILES - (for now) as there are just too many false-positive cases to check. + + [CL] Fix a number of false-positives when checking the + "override_dh_auto_test-does-not-check-DEB_BUILD_PROFILES" tag (Closes: #889592) + [CL] Check for debian/rules files that are dh_make templates. (Closes: #679124) diff --git a/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-a/debian/debian/rules b/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-a/debian/debian/rules new file mode 100755 index 0000000..6f702fe --- /dev/null +++ b/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-a/debian/debian/rules @@ -0,0 +1,9 @@ +#!/usr/bin/make -f + +%: + dh $@ + +override_dh_auto_test: +ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS))) + /bin/true +endif diff --git a/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-a/desc b/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-a/desc new file mode 100644 index 0000000..b333c85 --- /dev/null +++ b/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-a/desc @@ -0,0 +1,5 @@ +Testname: rules-dh-auto-test-does-not-check-deb-build-options-unrel-a +Version: 1.0 +Description: Test for missing checks for DEB_BUILD_PROFILES (false-positive) +Test-Against: + override_dh_auto_test-does-not-check-DEB_BUILD_PROFILES diff --git a/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-a/tags b/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-a/tags new file mode 100644 index 0000000..e69de29 diff --git a/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-b/debian/debian/rules b/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-b/debian/debian/rules new file mode 100755 index 0000000..11bd6cc --- /dev/null +++ b/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-b/debian/debian/rules @@ -0,0 +1,7 @@ +#!/usr/bin/make -f + +%: + dh $@ + +# Empty target follows +override_dh_auto_test: diff --git a/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-b/desc b/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-b/desc new file mode 100644 index 0000000..acf5ced --- /dev/null +++ b/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-b/desc @@ -0,0 +1,5 @@ +Testname: rules-dh-auto-test-does-not-check-deb-build-options-unrel-b +Version: 1.0 +Description: Test for missing checks for DEB_BUILD_PROFILES (false-positive) +Test-Against: + override_dh_auto_test-does-not-check-DEB_BUILD_PROFILES diff --git a/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-b/tags b/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-b/tags new file mode 100644 index 0000000..e69de29 diff --git a/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-c/debian/debian/rules b/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-c/debian/debian/rules new file mode 100755 index 0000000..3a9fd80 --- /dev/null +++ b/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-c/debian/debian/rules @@ -0,0 +1,8 @@ +#!/usr/bin/make -f + +%: + dh $@ + +# Calls parent with arguments +override_dh_auto_test: + dh_auto_test -- VERBOSE=1 diff --git a/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-c/desc b/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-c/desc new file mode 100644 index 0000000..31dc897 --- /dev/null +++ b/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-c/desc @@ -0,0 +1,5 @@ +Testname: rules-dh-auto-test-does-not-check-deb-build-options-unrel-c +Version: 1.0 +Description: Test for missing checks for DEB_BUILD_PROFILES (false-positive) +Test-Against: + override_dh_auto_test-does-not-check-DEB_BUILD_PROFILES diff --git a/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-c/tags b/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-c/tags new file mode 100644 index 0000000..e69de29 diff --git a/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-d/debian/debian/rules b/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-d/debian/debian/rules new file mode 100755 index 0000000..84f382c --- /dev/null +++ b/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-d/debian/debian/rules @@ -0,0 +1,8 @@ +#!/usr/bin/make -f + +%: + dh $@ + +# Disbled via colon +override_dh_auto_test: + : Disabled diff --git a/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-d/desc b/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-d/desc new file mode 100644 index 0000000..1f1b873 --- /dev/null +++ b/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-d/desc @@ -0,0 +1,5 @@ +Testname: rules-dh-auto-test-does-not-check-deb-build-options-unrel-d +Version: 1.0 +Description: Test for missing checks for DEB_BUILD_PROFILES (false-positive) +Test-Against: + override_dh_auto_test-does-not-check-DEB_BUILD_PROFILES diff --git a/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-d/tags b/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-d/tags new file mode 100644 index 0000000..e69de29 diff --git a/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-e/debian/debian/rules b/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-e/debian/debian/rules new file mode 100755 index 0000000..426f78f --- /dev/null +++ b/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-e/debian/debian/rules @@ -0,0 +1,8 @@ +#!/usr/bin/make -f + +%: + dh $@ + +# Disabled via echo +override_dh_auto_test: + echo "Disabled" diff --git a/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-e/desc b/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-e/desc new file mode 100644 index 0000000..6363be9 --- /dev/null +++ b/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-e/desc @@ -0,0 +1,5 @@ +Testname: rules-dh-auto-test-does-not-check-deb-build-options-unrel-e +Version: 1.0 +Description: Test for missing checks for DEB_BUILD_PROFILES (false-positive) +Test-Against: + override_dh_auto_test-does-not-check-DEB_BUILD_PROFILES diff --git a/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-e/tags b/t/tests/rules-dh-auto-test-does-not-check-deb-build-options-unrel-e/tags new file mode 100644 index 0000000..e69de29 diff --git a/t/tests/rules-dh-auto-test-does-not-check-deb-build-options/debian/debian/rules b/t/tests/rules-dh-auto-test-does-not-check-deb-build-options/debian/debian/rules new file mode 100755 index 0000000..07c493b --- /dev/null +++ b/t/tests/rules-dh-auto-test-does-not-check-deb-build-options/debian/debian/rules @@ -0,0 +1,7 @@ +#!/usr/bin/make -f + +%: + dh $@ + +override_dh_auto_test: + /bin/true diff --git a/t/tests/rules-dh-auto-test-does-not-check-deb-build-options/desc b/t/tests/rules-dh-auto-test-does-not-check-deb-build-options/desc new file mode 100644 index 0000000..814ee32 --- /dev/null +++ b/t/tests/rules-dh-auto-test-does-not-check-deb-build-options/desc @@ -0,0 +1,5 @@ +Testname: rules-dh-auto-test-does-not-check-deb-build-options +Version: 1.0 +Description: Test for missing checks for DEB_BUILD_PROFILES +Test-For: + override_dh_auto_test-does-not-check-DEB_BUILD_PROFILES diff --git a/t/tests/rules-dh-auto-test-does-not-check-deb-build-options/tags b/t/tests/rules-dh-auto-test-does-not-check-deb-build-options/tags new file mode 100644 index 0000000..a94f974 --- /dev/null +++ b/t/tests/rules-dh-auto-test-does-not-check-deb-build-options/tags @@ -0,0 +1 @@ +I: rules-dh-auto-test-does-not-check-deb-build-options source: override_dh_auto_test-does-not-check-DEB_BUILD_PROFILES (line 6) -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/lintian/lintian.git

