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.
signature.asc
Description: This is a digitally signed message part