Add support for building only versioned tools packages
We already had support for disabling the tools build, used by src:linux-grsec. However in this case, where we're using a different based version to src:linux, we do still need to build the versioned tools packages (linux-kbuild-4.9 and linux-perf-4.9). Split the control template, config setting and rules accordingly. (cherry picked from commit cb62c945f27ddee476631fa85c6aa67e50ed3bee)
This commit is contained in:
parent
634a2fc7db
commit
7b34ddf467
|
@ -46,7 +46,8 @@ class Gencontrol(Base):
|
||||||
'headers-all': config.SchemaItemBoolean(),
|
'headers-all': config.SchemaItemBoolean(),
|
||||||
'installer': config.SchemaItemBoolean(),
|
'installer': config.SchemaItemBoolean(),
|
||||||
'libc-dev': config.SchemaItemBoolean(),
|
'libc-dev': config.SchemaItemBoolean(),
|
||||||
'tools': config.SchemaItemBoolean(),
|
'tools-unversioned': config.SchemaItemBoolean(),
|
||||||
|
'tools-versioned': config.SchemaItemBoolean(),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -106,8 +107,10 @@ class Gencontrol(Base):
|
||||||
makeflags['ALL_TRIPLETS'] = ' '.join(triplet_enabled)
|
makeflags['ALL_TRIPLETS'] = ' '.join(triplet_enabled)
|
||||||
if not self.config.merge('packages').get('docs', True):
|
if not self.config.merge('packages').get('docs', True):
|
||||||
makeflags['DO_DOCS'] = False
|
makeflags['DO_DOCS'] = False
|
||||||
if not self.config.merge('packages').get('tools', True):
|
if not self.config.merge('packages').get('tools-unversioned', True):
|
||||||
makeflags['DO_TOOLS'] = False
|
makeflags['DO_TOOLS_UNVERSIONED'] = False
|
||||||
|
if not self.config.merge('packages').get('tools-versioned', True):
|
||||||
|
makeflags['DO_TOOLS_VERSIONED'] = False
|
||||||
super(Gencontrol, self).do_main_makefile(makefile, makeflags, extra)
|
super(Gencontrol, self).do_main_makefile(makefile, makeflags, extra)
|
||||||
|
|
||||||
# linux-source-$UPSTREAMVERSION will contain all kconfig files
|
# linux-source-$UPSTREAMVERSION will contain all kconfig files
|
||||||
|
@ -117,8 +120,10 @@ class Gencontrol(Base):
|
||||||
packages.extend(self.process_packages(self.templates["control.main"], self.vars))
|
packages.extend(self.process_packages(self.templates["control.main"], self.vars))
|
||||||
if self.config.merge('packages').get('docs', True):
|
if self.config.merge('packages').get('docs', True):
|
||||||
packages.extend(self.process_packages(self.templates["control.docs"], self.vars))
|
packages.extend(self.process_packages(self.templates["control.docs"], self.vars))
|
||||||
if self.config.merge('packages').get('tools', True):
|
if self.config.merge('packages').get('tools-unversioned', True):
|
||||||
packages.extend(self.process_packages(self.templates["control.tools"], self.vars))
|
packages.extend(self.process_packages(self.templates["control.tools-unversioned"], self.vars))
|
||||||
|
if self.config.merge('packages').get('tools-versioned', True):
|
||||||
|
packages.extend(self.process_packages(self.templates["control.tools-versioned"], self.vars))
|
||||||
|
|
||||||
self._substitute_file('perf.lintian-overrides', self.vars,
|
self._substitute_file('perf.lintian-overrides', self.vars,
|
||||||
'debian/linux-perf-%s.lintian-overrides' %
|
'debian/linux-perf-%s.lintian-overrides' %
|
||||||
|
|
|
@ -12,6 +12,7 @@ linux (4.17~rc2-1~exp1) UNRELEASED; urgency=medium
|
||||||
* Documentation: Update references to drivers/base/firmware_class.c
|
* Documentation: Update references to drivers/base/firmware_class.c
|
||||||
* [armhf] Enable MTD_NAND_MARVELL as module, replacing MTD_NAND_PXA3xx
|
* [armhf] Enable MTD_NAND_MARVELL as module, replacing MTD_NAND_PXA3xx
|
||||||
* linux-kbuild: Update genksyms makefile to run flex and bison
|
* linux-kbuild: Update genksyms makefile to run flex and bison
|
||||||
|
* Add support for building only versioned tools packages
|
||||||
|
|
||||||
[ Luca Boccassi ]
|
[ Luca Boccassi ]
|
||||||
* Build-Dep on libelf-dev even for nopython/notools builds to fix FTBFS,
|
* Build-Dep on libelf-dev even for nopython/notools builds to fix FTBFS,
|
||||||
|
|
|
@ -74,18 +74,21 @@ endif
|
||||||
binary-indep: install-source
|
binary-indep: install-source
|
||||||
binary-indep: install-support
|
binary-indep: install-support
|
||||||
|
|
||||||
ifneq ($(DO_TOOLS),False)
|
ifneq ($(DO_TOOLS_VERSIONED),False)
|
||||||
build-arch-arch: $(STAMPS_DIR)/build-tools
|
build-arch-arch: $(STAMPS_DIR)/build-tools
|
||||||
binary-arch-arch: install-kbuild install-usbip install-liblockdep install-cpupower
|
binary-arch-arch: install-kbuild install-liblockdep
|
||||||
ifneq ($(filter alpha amd64 arm64 armel armhf hppa i386 mips mips64 mips64el mipsel powerpc powerpcspe ppc64 ppc64el s390 s390x sh4 sparc sparc64,$(DEB_HOST_ARCH)),)
|
ifneq ($(filter alpha amd64 arm64 armel armhf hppa i386 mips mips64 mips64el mipsel powerpc powerpcspe ppc64 ppc64el s390 s390x sh4 sparc sparc64,$(DEB_HOST_ARCH)),)
|
||||||
ifeq ($(filter nopython,$(DEB_BUILD_PROFILES)),)
|
ifeq ($(filter nopython,$(DEB_BUILD_PROFILES)),)
|
||||||
binary-arch-arch: install-perf
|
binary-arch-arch: install-perf
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
binary-indep: install-lockdep
|
||||||
|
endif
|
||||||
|
ifneq ($(DO_TOOLS_UNVERSIONED),False)
|
||||||
|
binary-arch-arch: install-usbip install-cpupower
|
||||||
ifneq ($(filter i386 amd64 x32,$(DEB_HOST_ARCH)),)
|
ifneq ($(filter i386 amd64 x32,$(DEB_HOST_ARCH)),)
|
||||||
binary-arch-arch: install-hyperv-daemons
|
binary-arch-arch: install-hyperv-daemons
|
||||||
endif
|
endif
|
||||||
binary-indep: install-lockdep
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
binary-indep-featureset: install-common-headers_$(FEATURESET)
|
binary-indep-featureset: install-common-headers_$(FEATURESET)
|
||||||
|
|
|
@ -1,11 +1,3 @@
|
||||||
Package: linux-kbuild-@version@
|
|
||||||
Build-Profiles: <!stage1 !pkg.linux.notools>
|
|
||||||
Architecture: linux-any
|
|
||||||
Depends: ${shlibs:Depends}, ${misc:Depends}
|
|
||||||
Multi-Arch: foreign
|
|
||||||
Description: Kbuild infrastructure for Linux @version@
|
|
||||||
This package provides the kbuild infrastructure for the headers packages for Linux kernel version @version@.
|
|
||||||
|
|
||||||
Package: linux-cpupower
|
Package: linux-cpupower
|
||||||
Build-Profiles: <!stage1 !pkg.linux.notools>
|
Build-Profiles: <!stage1 !pkg.linux.notools>
|
||||||
Section: admin
|
Section: admin
|
||||||
|
@ -37,23 +29,6 @@ Replaces: libcpufreq-dev
|
||||||
Description: CPU frequency and voltage scaling tools for Linux (development files)
|
Description: CPU frequency and voltage scaling tools for Linux (development files)
|
||||||
This package contains the 'power/cpupower' headers and library shared objects.
|
This package contains the 'power/cpupower' headers and library shared objects.
|
||||||
|
|
||||||
Package: linux-perf-@version@
|
|
||||||
Build-Profiles: <!stage1 !pkg.linux.notools !nopython>
|
|
||||||
Section: devel
|
|
||||||
Architecture: alpha amd64 arm64 armel armhf hppa i386 mips mips64 mips64el mipsel mipsn32 mipsn32el mipsr6 mipsr6el mipsn32r6 mipsn32r6el mips64r6 mips64r6el powerpc powerpcspe ppc64 ppc64el s390 s390x sh4 sparc sparc64
|
|
||||||
Depends: ${shlibs:Depends}, ${misc:Depends}, ${perl:Depends}, ${python:Depends}
|
|
||||||
Recommends: linux-base
|
|
||||||
Provides: linux-tools-@version@
|
|
||||||
Conflicts: linux-tools-@version@
|
|
||||||
Replaces: linux-tools-@version@
|
|
||||||
Suggests: linux-doc-@version@
|
|
||||||
Description: Performance analysis tools for Linux @version@
|
|
||||||
This package contains the 'perf' performance analysis tools for Linux
|
|
||||||
kernel version @version@.
|
|
||||||
.
|
|
||||||
The linux-base package contains a 'perf' command which will invoke the
|
|
||||||
appropriate version for the running kernel.
|
|
||||||
|
|
||||||
Package: usbip
|
Package: usbip
|
||||||
Build-Profiles: <!stage1 !pkg.linux.notools>
|
Build-Profiles: <!stage1 !pkg.linux.notools>
|
||||||
Architecture: linux-any
|
Architecture: linux-any
|
||||||
|
@ -95,34 +70,3 @@ Description: Support daemons for Linux running on Hyper-V
|
||||||
.
|
.
|
||||||
hv_vss_daemon provides the volume shadow copy service (VSS), allowing
|
hv_vss_daemon provides the volume shadow copy service (VSS), allowing
|
||||||
the host to freeze the guest filesystems while taking a snapshot.
|
the host to freeze the guest filesystems while taking a snapshot.
|
||||||
|
|
||||||
Package: lockdep
|
|
||||||
Build-Profiles: <!stage1 !pkg.linux.notools>
|
|
||||||
Architecture: all
|
|
||||||
Depends: ${shlibs:Depends}, ${misc:Depends}, liblockdep@version@
|
|
||||||
Recommends: liblockdep-dev
|
|
||||||
Section: devel
|
|
||||||
Multi-Arch: allowed
|
|
||||||
Description: Runtime locking correctness validator
|
|
||||||
lockdep is a wrapper for programs that use the pthreads API, which detects
|
|
||||||
actual and potential deadlocks and other locking bugs.
|
|
||||||
|
|
||||||
Package: liblockdep@version@
|
|
||||||
Build-Profiles: <!stage1 !pkg.linux.notools>
|
|
||||||
Architecture: linux-any
|
|
||||||
Depends: ${shlibs:Depends}, ${misc:Depends}
|
|
||||||
Section: libs
|
|
||||||
Multi-Arch: same
|
|
||||||
Description: Runtime locking correctness validator (shared library)
|
|
||||||
liblockdep is a library for programs that use the pthreads API, which can
|
|
||||||
be used to detect actual and potential deadlocks and other locking bugs.
|
|
||||||
|
|
||||||
Package: liblockdep-dev
|
|
||||||
Build-Profiles: <!stage1 !pkg.linux.notools>
|
|
||||||
Architecture: linux-any
|
|
||||||
Depends: ${shlibs:Depends}, ${misc:Depends}, liblockdep@version@ (= ${binary:Version})
|
|
||||||
Section: libdevel
|
|
||||||
Multi-Arch: same
|
|
||||||
Description: Runtime locking correctness validator (development files)
|
|
||||||
liblockdep is a library for programs that use the pthreads API, which can
|
|
||||||
be used to detect actual and potential deadlocks and other locking bugs.
|
|
|
@ -0,0 +1,55 @@
|
||||||
|
Package: linux-kbuild-@version@
|
||||||
|
Build-Profiles: <!stage1 !pkg.linux.notools>
|
||||||
|
Architecture: linux-any
|
||||||
|
Depends: ${shlibs:Depends}, ${misc:Depends}
|
||||||
|
Multi-Arch: foreign
|
||||||
|
Description: Kbuild infrastructure for Linux @version@
|
||||||
|
This package provides the kbuild infrastructure for the headers packages for Linux kernel version @version@.
|
||||||
|
|
||||||
|
Package: linux-perf-@version@
|
||||||
|
Build-Profiles: <!stage1 !pkg.linux.notools !nopython>
|
||||||
|
Section: devel
|
||||||
|
Architecture: alpha amd64 arm64 armel armhf hppa i386 mips mips64 mips64el mipsel mipsn32 mipsn32el mipsr6 mipsr6el mipsn32r6 mipsn32r6el mips64r6 mips64r6el powerpc powerpcspe ppc64 ppc64el s390 s390x sh4 sparc sparc64
|
||||||
|
Depends: ${shlibs:Depends}, ${misc:Depends}, ${perl:Depends}, ${python:Depends}
|
||||||
|
Recommends: linux-base
|
||||||
|
Provides: linux-tools-@version@
|
||||||
|
Conflicts: linux-tools-@version@
|
||||||
|
Replaces: linux-tools-@version@
|
||||||
|
Suggests: linux-doc-@version@
|
||||||
|
Description: Performance analysis tools for Linux @version@
|
||||||
|
This package contains the 'perf' performance analysis tools for Linux
|
||||||
|
kernel version @version@.
|
||||||
|
.
|
||||||
|
The linux-base package contains a 'perf' command which will invoke the
|
||||||
|
appropriate version for the running kernel.
|
||||||
|
|
||||||
|
Package: lockdep
|
||||||
|
Build-Profiles: <!stage1 !pkg.linux.notools>
|
||||||
|
Architecture: all
|
||||||
|
Depends: ${shlibs:Depends}, ${misc:Depends}, liblockdep@version@
|
||||||
|
Recommends: liblockdep-dev
|
||||||
|
Section: devel
|
||||||
|
Multi-Arch: allowed
|
||||||
|
Description: Runtime locking correctness validator
|
||||||
|
lockdep is a wrapper for programs that use the pthreads API, which detects
|
||||||
|
actual and potential deadlocks and other locking bugs.
|
||||||
|
|
||||||
|
Package: liblockdep@version@
|
||||||
|
Build-Profiles: <!stage1 !pkg.linux.notools>
|
||||||
|
Architecture: linux-any
|
||||||
|
Depends: ${shlibs:Depends}, ${misc:Depends}
|
||||||
|
Section: libs
|
||||||
|
Multi-Arch: same
|
||||||
|
Description: Runtime locking correctness validator (shared library)
|
||||||
|
liblockdep is a library for programs that use the pthreads API, which can
|
||||||
|
be used to detect actual and potential deadlocks and other locking bugs.
|
||||||
|
|
||||||
|
Package: liblockdep-dev
|
||||||
|
Build-Profiles: <!stage1 !pkg.linux.notools>
|
||||||
|
Architecture: linux-any
|
||||||
|
Depends: ${shlibs:Depends}, ${misc:Depends}, liblockdep@version@ (= ${binary:Version})
|
||||||
|
Section: libdevel
|
||||||
|
Multi-Arch: same
|
||||||
|
Description: Runtime locking correctness validator (development files)
|
||||||
|
liblockdep is a library for programs that use the pthreads API, which can
|
||||||
|
be used to detect actual and potential deadlocks and other locking bugs.
|
Loading…
Reference in New Issue