Package: lintian Version: 2.5.22.1 Severity: wishlist Tags: patch Dear lintian maintainers,
It would be nice if lintian could start bugging people about "Pre-Depends: multiarch-support" in their debian/control file. At some point multiarch-support should be removed from eglibc, but this cannot be done as long as there still are dependencies on it. So we need to get rid of these dependencies. Unfortunately we might still need them in jessie, so just removing might be a bit too early. What would help though is converting "Pre-Depends: multiarch-support" into "Pre-Depends: ${misc:Pre-Depends}" if the package in question uses dh_makeshlibs. Then debhelper can be told to stop inserting that Pre-Dependency and all affected packages will automatically drop it during their next build (or binNMU). This way, removing multiarch-support becomes feasible for jessie+1 and packages that use ${misc:Pre-Depends} keep being backportable to wheezy and jessie. Patch attached. Helmut
diff -Nru lintian-2.5.22.1/checks/control-file.desc lintian-2.5.22.1+nmu1/checks/control-file.desc --- lintian-2.5.22.1/checks/control-file.desc 2014-03-30 11:56:39.000000000 +0200 +++ lintian-2.5.22.1+nmu1/checks/control-file.desc 2014-05-08 19:09:19.000000000 +0200 @@ -221,3 +221,13 @@ packages which would provide different functionality, would be empty or not be built at all under the stage1 or stage2 profiles must be marked as not being generated with the Build-Profiles field. + +Tag: pre-depends-directly-on-multiarch-support +Severity: pedantic +Certainty: possible +Info: The control file mentions multiarch-support in a Pre-Depends line. + Usually multiarch-support is inserted into Pre-Depends via ${misc:Pre-Depends} + by dh_makeshlibs. In order to be able to remove the multiarch-support package + from glibc without updating every package, Pre-Depends: ${misc:Pre-Depends} + should be used instead. Then multiarch-support can be removed by a change + in debhelper followed by a binNMU of all affected packages. diff -Nru lintian-2.5.22.1/checks/control-file.pm lintian-2.5.22.1+nmu1/checks/control-file.pm --- lintian-2.5.22.1/checks/control-file.pm 2014-03-30 11:56:39.000000000 +0200 +++ lintian-2.5.22.1+nmu1/checks/control-file.pm 2014-05-08 19:01:43.000000000 +0200 @@ -342,6 +342,18 @@ if (($k eq 'stage1' || $k eq 'stage2') && $v == 0); } + # find binary packages that Pre-Depend on multiarch-support without going + # via ${misc:Pre-Depends} + if ($info->source_field('build-depends') =~ /debhelper/) { + for my $bin (@package_names) { + my $raw = $info->binary_field($bin, 'pre-depends'); + next unless $raw; + if($raw =~ /multiarch-support/) { + tag 'pre-depends-directly-on-multiarch-support', 'Package', $bin; + } + } + } + return; } diff -Nru lintian-2.5.22.1/debian/changelog lintian-2.5.22.1+nmu1/debian/changelog --- lintian-2.5.22.1/debian/changelog 2014-03-30 21:11:37.000000000 +0200 +++ lintian-2.5.22.1+nmu1/debian/changelog 2014-05-08 18:48:01.000000000 +0200 @@ -1,3 +1,10 @@ +lintian (2.5.22.1+nmu1) UNRELEASED; urgency=medium + + * Non-maintainer upload. + * Add check for Pre-Depends: multiarch-support. + + -- Helmut Grohne <hel...@subdivi.de> Thu, 08 May 2014 18:47:50 +0200 + lintian (2.5.22.1) unstable; urgency=medium * checks/ocaml.{desc,pm}: