From 80c2596a7c6022e48fa8988aa770979aadfbd25e Mon Sep 17 00:00:00 2001 From: Ben Hutchings Date: Tue, 1 Jan 2019 18:47:28 +0000 Subject: [PATCH] Add pkg.linux.nokernel build profile that excludes kernel image/header packages This should mostly be useful for testing changes that only affect the userland packages. --- debian/README.source | 1 + debian/bin/gencontrol.py | 2 +- debian/changelog | 2 ++ debian/templates/control.headers.arch.in | 4 ++-- debian/templates/control.headers.featureset.in | 2 +- debian/templates/control.headers.in | 2 +- debian/templates/control.image-dbg.in | 2 +- debian/templates/control.image-unsigned.in | 2 +- debian/templates/control.image.in | 2 +- debian/templates/control.signed-template.in | 2 +- debian/templates/control.source.in | 14 ++++++++------ 11 files changed, 20 insertions(+), 15 deletions(-) diff --git a/debian/README.source b/debian/README.source index b3d0b2dc2..338c71397 100644 --- a/debian/README.source +++ b/debian/README.source @@ -237,6 +237,7 @@ Several build profiles are understood and supported: - nodoc: Exclude most documentation - pkg.linux.notools: Exclude userland tool packages (linux-kbuild-, linux-perf-, etc.) +- pkg.linux.nokernel: Exclude kernel image and header packages - cross: Needed when cross-building. Currently this must be used together with nopython as the build-dependencies will be unsatisfiable otherwise. - nopython: Disable Python bindings. This currently disables building the diff --git a/debian/bin/gencontrol.py b/debian/bin/gencontrol.py index ae9b01d50..33e6715ee 100755 --- a/debian/bin/gencontrol.py +++ b/debian/bin/gencontrol.py @@ -140,7 +140,7 @@ class Gencontrol(Base): package['Build-Profiles'] = ( '') else: - package['Build-Profiles'] = '' + package['Build-Profiles'] = '' for arch in package['Architecture']: self.installer_packages.setdefault(arch, []) \ diff --git a/debian/changelog b/debian/changelog index 1b9c1ceeb..c9c11846c 100644 --- a/debian/changelog +++ b/debian/changelog @@ -6,6 +6,8 @@ linux (4.19.13-2) UNRELEASED; urgency=medium [ Ben Hutchings ] * [ia64,m68k] libbpf: Really don't build on architectures without perf events * Use dh_listpackages to determine which packages to build + * Add pkg.linux.nokernel build profile that excludes kernel image and header + packages -- John Paul Adrian Glaubitz Sun, 30 Dec 2018 10:30:57 +0100 diff --git a/debian/templates/control.headers.arch.in b/debian/templates/control.headers.arch.in index 75bfd50e5..34f97e179 100644 --- a/debian/templates/control.headers.arch.in +++ b/debian/templates/control.headers.arch.in @@ -1,5 +1,5 @@ Package: linux-headers-@abiname@-all -Build-Profiles: +Build-Profiles: Depends: linux-headers-@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 @@ -7,7 +7,7 @@ Description: All header files for Linux @version@ (meta-package) kernel modules. Package: linux-headers-@abiname@-all-@arch@ -Build-Profiles: +Build-Profiles: Depends: ${misc:Depends} Description: All header files for Linux @version@ (meta-package) This package depends against all architecture-specific kernel header files diff --git a/debian/templates/control.headers.featureset.in b/debian/templates/control.headers.featureset.in index d9e52cb0d..123fedf5a 100644 --- a/debian/templates/control.headers.featureset.in +++ b/debian/templates/control.headers.featureset.in @@ -1,5 +1,5 @@ Package: linux-headers-@abiname@-common@localversion@ -Build-Profiles: +Build-Profiles: Architecture: all Depends: ${misc:Depends} Multi-Arch: foreign diff --git a/debian/templates/control.headers.in b/debian/templates/control.headers.in index 029011c8e..dc77662cd 100644 --- a/debian/templates/control.headers.in +++ b/debian/templates/control.headers.in @@ -1,5 +1,5 @@ Package: linux-headers-@abiname@@localversion@ -Build-Profiles: +Build-Profiles: Depends: linux-headers-@abiname@-common@localversion_headers@ (= ${source:Version}), linux-kbuild-@version@ (>= ${source:Version}), ${misc:Depends} Description: Header files for Linux @abiname@@localversion@ This package provides the architecture-specific kernel header files diff --git a/debian/templates/control.image-dbg.in b/debian/templates/control.image-dbg.in index 53fcc086d..3c67d56ac 100644 --- a/debian/templates/control.image-dbg.in +++ b/debian/templates/control.image-dbg.in @@ -1,5 +1,5 @@ Package: linux-image-@abiname@@localversion@-dbg -Build-Profiles: +Build-Profiles: Depends: ${misc:Depends} Section: debug Priority: optional diff --git a/debian/templates/control.image-unsigned.in b/debian/templates/control.image-unsigned.in index 8f149c4b6..2b258d005 100644 --- a/debian/templates/control.image-unsigned.in +++ b/debian/templates/control.image-unsigned.in @@ -1,5 +1,5 @@ Package: linux-image-@abiname@@localversion@-unsigned -Build-Profiles: +Build-Profiles: Depends: kmod, linux-base (>= 4.3~), ${misc:Depends} Recommends: firmware-linux-free, ${kernel:Recommends} Suggests: linux-doc-@version@, debian-kernel-handbook diff --git a/debian/templates/control.image.in b/debian/templates/control.image.in index 8fdabe60b..4a4b36aad 100644 --- a/debian/templates/control.image.in +++ b/debian/templates/control.image.in @@ -1,5 +1,5 @@ Package: linux-image-@abiname@@localversion@ -Build-Profiles: +Build-Profiles: Depends: kmod, linux-base (>= 4.3~), linux-bootwrapper-@abiname@ [powerpc powerpcspe ppc64], ${misc:Depends} Recommends: firmware-linux-free, ${kernel:Recommends} Suggests: linux-doc-@version@, debian-kernel-handbook diff --git a/debian/templates/control.signed-template.in b/debian/templates/control.signed-template.in index a2834a9e7..2af3ba424 100644 --- a/debian/templates/control.signed-template.in +++ b/debian/templates/control.signed-template.in @@ -1,5 +1,5 @@ Package: linux-image-@arch@-signed-template -Build-Profiles: +Build-Profiles: Depends: dpkg-dev, ${misc:Depends} Description: Template for signed linux-image packages for @arch@ This package is used to control code signing by the Debian signing diff --git a/debian/templates/control.source.in b/debian/templates/control.source.in index 0d0f5e139..85c4d8b1b 100644 --- a/debian/templates/control.source.in +++ b/debian/templates/control.source.in @@ -19,17 +19,19 @@ Build-Depends: bison , flex (>= 2.6.1-1.1~) , Build-Depends-Arch: # used by debian/rules.real to build udebs - kernel-wedge (>= 2.99~) , + kernel-wedge (>= 2.99~) , # used by kernel-wedge (only on Linux, thus not declared as a dependency) - kmod , + kmod , # used by upstream to build include/generated/timeconst.h - bc , + bc , # used by upstream to build signing tools and to process certificates - libssl-dev:native , libssl-dev , - openssl (>= 1.1.0-1~) , + libssl-dev:native , + libssl-dev , + openssl (>= 1.1.0-1~) , # used by upstream to build objtool (native for amd64 images; host arch for # linux-kbuild), perf (host arch), libbpf (host arch) - libelf-dev:native [amd64] , libelf-dev , + libelf-dev:native [amd64] , + libelf-dev , Rules-Requires-Root: no Vcs-Git: https://salsa.debian.org/kernel-team/linux.git Vcs-Browser: https://salsa.debian.org/kernel-team/linux