On Tue, 2010-08-17 at 07:41 +0100, Ian Campbell wrote:
> I happened to notice on packages.qa.debian.org that the kernel packages
> have 250 lintian warnings, of which the vast majority come from just a
> few easy to fix issues.

Patch rebased on trunk with comments addressed.

Changes since last time:
      * Override rather than appease dbg-package-missing-depends for
        linux-image-*-dbg
      * Add an override for linux-base no-debconf-config
      * Use "meta-package" in short description rather than virtual
        package in long description (consistent with linux-latest-2.6).

Remaining issues are (some new in trunk vs sid):
W: linux-2.6 source: maintainer-upload-has-incorrect-version-number 
2.6.35-1~experimental.2
      * consequence of experimental version number?
W: linux-2.6 source: newer-debconf-templates
      * easy fix by running debconf-updatepo?
        (http://lintian.debian.org/tags/newer-debconf-templates.html
        suggests adding it to the clean target)

W: linux-2.6 source: out-of-date-standards-version 3.8.4 (current is 3.9.1)

W: linux-doc-2.6.35: extra-license-file 
usr/share/doc/linux-doc-2.6.35/Documentation/networking/LICENSE.qla3xxx.gz
W: linux-doc-2.6.35: extra-license-file 
usr/share/doc/linux-doc-2.6.35/Documentation/networking/LICENSE.qlge.gz
W: linux-doc-2.6.35: extra-license-file 
usr/share/doc/linux-doc-2.6.35/Documentation/scsi/LICENSE.FlashPoint.gz
W: linux-doc-2.6.35: extra-license-file 
usr/share/doc/linux-doc-2.6.35/Documentation/scsi/LICENSE.qla2xxx.gz

W: linux-manual-2.6.35: manpage-has-errors-from-man (many
      * docbook bug, reported as #569828

W: linux-image-2.6.35-trunk-amd64: postrm-does-not-purge-debconf
      * lintian cannot detect purge in Perl postrm

W: linux-tools-2.6.35: executable-not-elf-or-script 
./usr/libexec/perf-core/scripts/{many}
W: linux-tools-2.6.35: non-standard-dir-in-usr usr/libexec/
W: linux-tools-2.6.35: file-in-unusual-dir usr/libexec/perf-core/{many}
      * /usr/libxec isn't normally used under Debian so these seem like
        valid warnings. A bunch of these scripts seem to also hardcode
        references to each other via ~/libexec. It's not clear that a
        bunch of this stuff shouldn't be in /u/s/doc/SOMETHING/examples
        or somewhere like that.

Ian.

diff --git a/linux-2.6/debian/bin/gencontrol.py 
b/linux-2.6/debian/bin/gencontrol.py
index d5b4b4d..389660a 100755
--- a/linux-2.6/debian/bin/gencontrol.py
+++ b/linux-2.6/debian/bin/gencontrol.py
@@ -47,7 +47,8 @@ class Gencontrol(Base):
         libc_dev = self.templates["control.libc-dev"]
         packages_headers_arch[0:0] = self.process_packages(libc_dev, {})
         
-        extra['headers_arch_depends'] = packages_headers_arch[-1]['Depends'] = 
PackageRelation()
+        packages_headers_arch[-1]['Depends'].extend(PackageRelation())
+        extra['headers_arch_depends'] = packages_headers_arch[-1]['Depends']
 
         self.merge_packages(packages, packages_headers_arch, arch)
 
diff --git a/linux-2.6/debian/linux-base.lintian-overrides 
b/linux-2.6/debian/linux-base.lintian-overrides
new file mode 100644
index 0000000..b5593f5
--- /dev/null
+++ b/linux-2.6/debian/linux-base.lintian-overrides
@@ -0,0 +1,4 @@
+# We cannot use a config script because it requires external tools
+# just to work out whether it should ask any questions, and a config
+# script may be run before the package dependencies are satisfied.
+linux-base: no-debconf-config
diff --git a/linux-2.6/debian/rules.real b/linux-2.6/debian/rules.real
index 0d938f3..9fba7f9 100644
--- a/linux-2.6/debian/rules.real
+++ b/linux-2.6/debian/rules.real
@@ -473,7 +473,10 @@ install-image-dbg_$(ARCH)_$(FEATURESET)_$(FLAVOUR): 
$(STAMPS_DIR)/build_$(ARCH)_
        dh_testdir
        dh_testroot
        dh_prep
-       dh_installdirs usr/lib/debug usr/lib/debug/boot
+       dh_installdirs usr/lib/debug usr/lib/debug/boot 
usr/share/lintian/overrides/
+       sed -e 's/=V/$(REAL_VERSION)/g' \
+         debian/templates/image-dbg.lintian-override.in \
+         > $(PACKAGE_DIR)/usr/share/lintian/overrides/$(PACKAGE_NAME)
        install -m644 $(DIR)/vmlinux $(DEBUG_DIR)/boot/vmlinux-$(REAL_VERSION)
 ifeq ($(MODULES),True)
        +$(MAKE_CLEAN) -C $(DIR) modules_install 
INSTALL_MOD_PATH='$(CURDIR)'/$(DEBUG_DIR)
@@ -548,6 +551,7 @@ install-linux-base:
        dh_install debian/bin/perf /usr/bin
        dh_installman debian/perf.1
        dh_installdebconf
+       dh_lintian
        +$(MAKE_SELF) install-base
 
 # vim: filetype=make
diff --git a/linux-2.6/debian/templates/control.headers.arch.in 
b/linux-2.6/debian/templates/control.headers.arch.in
index b4959bd..1290219 100644
--- a/linux-2.6/debian/templates/control.headers.arch.in
+++ b/linux-2.6/debian/templates/control.headers.arch.in
@@ -1,12 +1,13 @@
 Package: linux-heade...@upstreamversion@@abin...@-all
-Depends: linux-heade...@upstreamversion@@abin...@-all-${kernel:Arch} (= 
${binary:Version})
-Description: All header files for Linux @version@
+Depends: linux-heade...@upstreamversion@@abin...@-all-${kernel:Arch} (= 
${binary:Version}), ${misc:Depends}
+Description: All header files for Linux @version@ (meta-package)
  This package depends against all architecture-specific kernel header files
  for Linux kernel version @upstreamversion@, generally used for building 
out-of-tree
  kernel modules.
 
 Package: linux-heade...@upstreamversion@@abin...@-all-@arch@
-Description: All header files for Linux @version@
+Depends: ${misc:Depends}
+Description: All header files for Linux @version@ (meta-package)
  This package depends against all architecture-specific kernel header files
  for Linux kernel version @upstreamversion@, generally used for building 
out-of-tree
  kernel modules.
diff --git a/linux-2.6/debian/templates/control.headers.featureset.in 
b/linux-2.6/debian/templates/control.headers.featureset.in
index 1d247ec..0722c3b 100644
--- a/linux-2.6/debian/templates/control.headers.featureset.in
+++ b/linux-2.6/debian/templates/control.headers.featureset.in
@@ -1,4 +1,5 @@
 Package: linux-heade...@upstreamversion@@abin...@-common@localversion_headers@
+Depends: ${misc:Depends}
 Description: Common header files for Linux 
@upstreamversion@@abiname@@localversion_headers@
  This package provides the architecture-specific common kernel header files
  for Linux kernel version @upstreamversion@@abiname@@localversion_headers@, 
generally used for building out-of-tree
diff --git a/linux-2.6/debian/templates/control.headers.in 
b/linux-2.6/debian/templates/control.headers.in
index c0e8513..f726e80 100644
--- a/linux-2.6/debian/templates/control.headers.in
+++ b/linux-2.6/debian/templates/control.headers.in
@@ -1,5 +1,5 @@
 Package: linux-heade...@upstreamversion@@abiname@@localversion@
-Depends: linux-heade...@upstreamversion@@abin...@-common@localversion_headers@ 
(= ${binary:Version}), linux-kbui...@version@
+Depends: linux-heade...@upstreamversion@@abin...@-common@localversion_headers@ 
(= ${binary:Version}), linux-kbui...@version@, ${misc:Depends}
 Provides: linux-headers, linux-heade...@major@
 Description: Header files for Linux @upstreamversion@@abiname@@localversion@
  This package provides the architecture-specific kernel header files
diff --git a/linux-2.6/debian/templates/control.image-dbg.in 
b/linux-2.6/debian/templates/control.image-dbg.in
index a60436e..158f14e 100644
--- a/linux-2.6/debian/templates/control.image-dbg.in
+++ b/linux-2.6/debian/templates/control.image-dbg.in
@@ -1,4 +1,5 @@
 Package: linux-ima...@upstreamversion@@abiname@@localvers...@-dbg
+Depends: linux-ima...@upstreamversion@@abiname@@localversion@, ${misc:Depends}
 Section: debug
 Priority: extra
 Description: Debugging infos for Linux @upstreamversion@@abiname@@localversion@
diff --git a/linux-2.6/debian/templates/control.image.type-kernel-package.in 
b/linux-2.6/debian/templates/control.image.type-kernel-package.in
index d35c4a5..391a44d 100644
--- a/linux-2.6/debian/templates/control.image.type-kernel-package.in
+++ b/linux-2.6/debian/templates/control.image.type-kernel-package.in
@@ -1,7 +1,7 @@
 Package: linux-ima...@upstreamversion@@abiname@@localversion@
 Provides: linux-image, linux-ima...@major@, 
linux-modul...@upstreamversion@@abiname@@localversion@
 Pre-Depends: debconf | debconf-2.0
-Depends: module-init-tools
+Depends: module-init-tools, ${misc:Depends}
 Suggests: linux-d...@version@
 Description: Linux @upstreamversion@ for @class@
  The Linux kernel @upstreamversion@ and modules for use on @longcl...@.
diff --git a/linux-2.6/debian/templates/control.image.type-modulesextra.in 
b/linux-2.6/debian/templates/control.image.type-modulesextra.in
index 4981930..a3e84f8 100644
--- a/linux-2.6/debian/templates/control.image.type-modulesextra.in
+++ b/linux-2.6/debian/templates/control.image.type-modulesextra.in
@@ -1,11 +1,11 @@
 Package: linux-ima...@upstreamversion@@abiname@@localversion@
 Provides: linux-image, linux-ima...@major@
-Depends: linux-modul...@upstreamversion@@abiname@@localversion@ (= 
${binary:Version})
+Depends: linux-modul...@upstreamversion@@abiname@@localversion@ (= 
${binary:Version}), ${misc:Depends}
 Suggests: linux-d...@version@
 Description: Linux @upstreamversion@ for @class@
  The Linux kernel @upstreamversion@ for use on @longcl...@.
 
 Package: linux-modul...@upstreamversion@@abiname@@localversion@
-Depends: module-init-tools
+Depends: module-init-tools, ${misc:Depends}
 Description: Linux @upstreamversion@ modules for @class@
  Modules for Linux kernel @upstreamversion@ for use on @longcl...@.
diff --git a/linux-2.6/debian/templates/control.image.type-modulesinline.in 
b/linux-2.6/debian/templates/control.image.type-modulesinline.in
index dae73fa..dcc82a9 100644
--- a/linux-2.6/debian/templates/control.image.type-modulesinline.in
+++ b/linux-2.6/debian/templates/control.image.type-modulesinline.in
@@ -1,6 +1,6 @@
 Package: linux-ima...@upstreamversion@@abiname@@localversion@
 Provides: linux-image, linux-ima...@major@, 
linux-modul...@upstreamversion@@abiname@@localversion@
-Depends: module-init-tools
+Depends: module-init-tools, ${misc:Depends}
 Suggests: linux-d...@version@
 Description: Linux @upstreamversion@ for @class@
  The Linux kernel @upstreamversion@ for use on @longcl...@.
diff --git a/linux-2.6/debian/templates/control.image.type-plain.in 
b/linux-2.6/debian/templates/control.image.type-plain.in
index 27a5ada..4a00c40 100644
--- a/linux-2.6/debian/templates/control.image.type-plain.in
+++ b/linux-2.6/debian/templates/control.image.type-plain.in
@@ -1,7 +1,7 @@
 Package: linux-ima...@upstreamversion@@abiname@@localversion@
 Provides: linux-image, linux-ima...@major@, 
linux-modul...@upstreamversion@@abiname@@localversion@
 Pre-Depends: debconf | debconf-2.0
-Depends: module-init-tools, linux-base (>= ${source:Version}), 
${shlibs:Depends}
+Depends: module-init-tools, linux-base (>= ${source:Version}), 
${shlibs:Depends}, ${misc:Depends}
 Recommends: firmware-linux-free (>= @source_upstream@)
 Suggests: linux-d...@version@
 Description: Linux @upstreamversion@ for @class@
diff --git a/linux-2.6/debian/templates/control.image.type-standalone.in 
b/linux-2.6/debian/templates/control.image.type-standalone.in
index 4036d32..c15b1d8 100644
--- a/linux-2.6/debian/templates/control.image.type-standalone.in
+++ b/linux-2.6/debian/templates/control.image.type-standalone.in
@@ -1,6 +1,6 @@
 Package: linux-ima...@upstreamversion@@abiname@@localversion@
 Provides: linux-image, linux-ima...@major@
 Suggests: linux-d...@version@
-Depends: ${shlibs:Depends}
+Depends: ${shlibs:Depends}, ${misc:Depends}
 Description: Linux @upstreamversion@ for @class@
  The Linux kernel @upstreamversion@ for use on @longcl...@.
diff --git a/linux-2.6/debian/templates/control.libc-dev.in 
b/linux-2.6/debian/templates/control.libc-dev.in
index 6e34473..6c92394 100644
--- a/linux-2.6/debian/templates/control.libc-dev.in
+++ b/linux-2.6/debian/templates/control.libc-dev.in
@@ -1,5 +1,6 @@
 Package: linux-libc-dev
 Section: devel
+Depends: ${misc:Depends}
 Provides: linux-kernel-headers
 Replaces: linux-kernel-headers
 Conflicts: linux-kernel-headers
diff --git a/linux-2.6/debian/templates/control.main.in 
b/linux-2.6/debian/templates/control.main.in
index 62b6ab2..85a8dd4 100644
--- a/linux-2.6/debian/templates/control.main.in
+++ b/linux-2.6/debian/templates/control.main.in
@@ -14,7 +14,7 @@ Package: linux-sour...@version@
 Architecture: all
 Section: kernel
 Provides: linux-source, linux-sour...@major@
-Depends: binutils, bzip2
+Depends: binutils, bzip2, ${misc:Depends}
 Recommends: libc6-dev | libc-dev, gcc, make
 Suggests: libncurses-dev | ncurses-dev, kernel-package, libqt3-mt-dev
 Description: Linux kernel source for version @version@ with Debian patches
@@ -31,6 +31,7 @@ Description: Linux kernel source for version @version@ with 
Debian patches
 
 Package: linux-d...@version@
 Architecture: all
+Depends: ${misc:Depends}
 Section: doc
 Provides: linux-d...@major@
 Description: Linux kernel specific documentation for version @version@
@@ -43,6 +44,7 @@ Description: Linux kernel specific documentation for version 
@version@
 
 Package: linux-manu...@version@
 Architecture: all
+Depends: ${misc:Depends}
 Section: doc
 Provides: linux-manual, kernel-manu...@major@
 Conflicts: linux-manual, kernel-manu...@major@
@@ -59,7 +61,7 @@ Description: Linux kernel API manual pages for version 
@version@
 
 Package: linux-patch-debi...@version@
 Architecture: all
-Depends: bzip2, linux-suppo...@upstreamversion@@abiname@, python
+Depends: bzip2, linux-suppo...@upstreamversion@@abiname@, python, 
${misc:Depends}
 Suggests: linux-sour...@version@
 Description: Debian patches to version @version@ of the Linux kernel
  This package includes the patches used to produce the prepackaged
@@ -72,6 +74,7 @@ Description: Debian patches to version @version@ of the Linux 
kernel
 
 Package: firmware-linux-free
 Architecture: all
+Depends: ${misc:Depends}
 Description: Binary firmware for various drivers in the Linux kernel
  This package contains firmware which was previously included in the
  Linux kernel and which is compliant with the Debian Free Software
@@ -83,7 +86,7 @@ Description: Binary firmware for various drivers in the Linux 
kernel
 Package: linux-suppo...@upstreamversion@@abiname@
 Architecture: all
 Section: devel
-Depends: ${python:Depends}
+Depends: ${python:Depends}, ${misc:Depends}
 Description: Support files for Linux @upstreamversion@
  This package provides support files for the Linux kernel build,
  e.g. scripts to handle ABI information and for generation of
diff --git a/linux-2.6/debian/templates/control.xen-linux-system.in 
b/linux-2.6/debian/templates/control.xen-linux-system.in
index afebaf7..b3712f0 100644
--- a/linux-2.6/debian/templates/control.xen-linux-system.in
+++ b/linux-2.6/debian/templates/control.xen-linux-system.in
@@ -1,5 +1,5 @@
 Package: xen-linux-syst...@upstreamversion@@abiname@@localversion@
-Depends: linux-ima...@upstreamversion@@abiname@@localversion@ (= 
${binary:Version})
-Description: Xen system with Linux @upstreamversion@ on @class@
+Depends: linux-ima...@upstreamversion@@abiname@@localversion@ (= 
${binary:Version}), ${misc:Depends}
+Description: Xen system with Linux @upstreamversion@ on @class@ (meta-package)
  This package depends on the binary Linux image and hypervisors.
 
diff --git a/linux-2.6/debian/templates/image-dbg.lintian-override.in 
b/linux-2.6/debian/templates/image-dbg.lintian-override.in
new file mode 100644
index 0000000..b0773e2
--- /dev/null
+++ b/linux-2.6/debian/templates/image-dbg.lintian-override.in
@@ -0,0 +1,2 @@
+# Kernel dbg packages contain a full image with debug data
+linux-image-=V-dbg: dbg-package-missing-depends


-- 
Ian Campbell

As of next week, passwords will be entered in Morse code.

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to