[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [PATCHv2] Nuke a few easily Lintian warnings



On Tue, 2010-08-17 at 22:40 +0100, Ian Campbell wrote:
> 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.

Since this steps outside of the areas where I feel comfortable
committing of my own accord I'd quite like an ACK on these changes (if
they are appropriate).

Ian.

> 
> 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-headers-@upstreamversion@@abiname@-all
> -Depends: linux-headers-@upstreamversion@@abiname@-all-${kernel:Arch} (= ${binary:Version})
> -Description: All header files for Linux @version@
> +Depends: linux-headers-@upstreamversion@@abiname@-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-headers-@upstreamversion@@abiname@-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-headers-@upstreamversion@@abiname@-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-headers-@upstreamversion@@abiname@@localversion@
> -Depends: linux-headers-@upstreamversion@@abiname@-common@localversion_headers@ (= ${binary:Version}), linux-kbuild-@version@
> +Depends: linux-headers-@upstreamversion@@abiname@-common@localversion_headers@ (= ${binary:Version}), linux-kbuild-@version@, ${misc:Depends}
>  Provides: linux-headers, linux-headers-@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-image-@upstreamversion@@abiname@@localversion@-dbg
> +Depends: linux-image-@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-image-@upstreamversion@@abiname@@localversion@
>  Provides: linux-image, linux-image-@major@, linux-modules-@upstreamversion@@abiname@@localversion@
>  Pre-Depends: debconf | debconf-2.0
> -Depends: module-init-tools
> +Depends: module-init-tools, ${misc:Depends}
>  Suggests: linux-doc-@version@
>  Description: Linux @upstreamversion@ for @class@
>   The Linux kernel @upstreamversion@ and modules for use on @longclass@.
> 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-image-@upstreamversion@@abiname@@localversion@
>  Provides: linux-image, linux-image-@major@
> -Depends: linux-modules-@upstreamversion@@abiname@@localversion@ (= ${binary:Version})
> +Depends: linux-modules-@upstreamversion@@abiname@@localversion@ (= ${binary:Version}), ${misc:Depends}
>  Suggests: linux-doc-@version@
>  Description: Linux @upstreamversion@ for @class@
>   The Linux kernel @upstreamversion@ for use on @longclass@.
>  
>  Package: linux-modules-@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 @longclass@.
> 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-image-@upstreamversion@@abiname@@localversion@
>  Provides: linux-image, linux-image-@major@, linux-modules-@upstreamversion@@abiname@@localversion@
> -Depends: module-init-tools
> +Depends: module-init-tools, ${misc:Depends}
>  Suggests: linux-doc-@version@
>  Description: Linux @upstreamversion@ for @class@
>   The Linux kernel @upstreamversion@ for use on @longclass@.
> 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-image-@upstreamversion@@abiname@@localversion@
>  Provides: linux-image, linux-image-@major@, linux-modules-@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-doc-@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-image-@upstreamversion@@abiname@@localversion@
>  Provides: linux-image, linux-image-@major@
>  Suggests: linux-doc-@version@
> -Depends: ${shlibs:Depends}
> +Depends: ${shlibs:Depends}, ${misc:Depends}
>  Description: Linux @upstreamversion@ for @class@
>   The Linux kernel @upstreamversion@ for use on @longclass@.
> 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-source-@version@
>  Architecture: all
>  Section: kernel
>  Provides: linux-source, linux-source-@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-doc-@version@
>  Architecture: all
> +Depends: ${misc:Depends}
>  Section: doc
>  Provides: linux-doc-@major@
>  Description: Linux kernel specific documentation for version @version@
> @@ -43,6 +44,7 @@ Description: Linux kernel specific documentation for version @version@
>  
>  Package: linux-manual-@version@
>  Architecture: all
> +Depends: ${misc:Depends}
>  Section: doc
>  Provides: linux-manual, kernel-manual-@major@
>  Conflicts: linux-manual, kernel-manual-@major@
> @@ -59,7 +61,7 @@ Description: Linux kernel API manual pages for version @version@
>  
>  Package: linux-patch-debian-@version@
>  Architecture: all
> -Depends: bzip2, linux-support-@upstreamversion@@abiname@, python
> +Depends: bzip2, linux-support-@upstreamversion@@abiname@, python, ${misc:Depends}
>  Suggests: linux-source-@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-support-@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-system-@upstreamversion@@abiname@@localversion@
> -Depends: linux-image-@upstreamversion@@abiname@@localversion@ (= ${binary:Version})
> -Description: Xen system with Linux @upstreamversion@ on @class@
> +Depends: linux-image-@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

The future not being born, my friend, we will abstain from baptizing it.
		-- George Meredith

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


Reply to: