Release linux (4.17.6-2).
-----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEErCspvTSmr92z9o8157/I7JWGEQkFAltL4ZwACgkQ57/I7JWG EQniUw//V7Vhq6IQ5FKEg+UHcI8b12GhOVWWVJoReQErFllaIkSOJax6GDXo9UYa EQ+xezR902ze99eetQfqJFqNm/fu9qi9Lc/Na3dIztFTkbonQmOOF5y5uM129wBi l8WKrcnGY175yuN2aQDgRZtZgMWvNy7pbreDX3i5WliOKiOYbG7ZaJvdSEQ12CjJ lnVctItwOhDqgXGoW8nW7YxC3Awi25Rk2dZNQNSVfa3Lq9DAA1HXsNVM7/jdMzv8 OVE32Srq2LsWqt+dK0sARKCucVXZRDTWEjie32ZxyAISUYkuzxmLOpmfYXS+CVtj 7gIe6nBPX1mnXSHh1CvFGJrHRDfKAtq7gfHoBSg255quuBYY9btCneVV/ebCuFR3 OSmupwF74Kt6QMhDpe322SFQD/40gH2OEATRzgzNjaJFnWwDTx78EZIu7/SHul9g k6YKRyK03bGgfeTeEzsVwXUj71Fh8oF22kk1ViYpDMSEKu3xOB71poDwGmP+e11U rH3IV+F5ECzfiekNsbehPabG7dyY/t1TIGBmu+7rnK75EDCQzFfOI0MXEJCJG5X2 c6QUBXcz8ygvR7Zec9kw4YeBRuDvUv4sXf8516kMc2dSwf7JY+BYyy+9Knb9Gy67 K/Tw/4keQIgzjg52g9GxqVqI4N/DknWoe1FT3xU4uuLIgYkEilA= =JUfi -----END PGP SIGNATURE----- Merge tag 'debian/4.17.6-2' Release linux (4.17.6-2). - Drop the ABI maintenance patch - Resolve conflict between changes to config file generation in sid (delete CONFIG_BUILD_SALT) and master (putting them in arch-dependent packages)
This commit is contained in:
commit
16bdbaf76f
|
@ -50,6 +50,30 @@ linux (4.18~rc3-1~exp1) experimental; urgency=medium
|
||||||
|
|
||||||
-- Ben Hutchings <ben@decadent.org.uk> Tue, 03 Jul 2018 17:26:05 +0100
|
-- Ben Hutchings <ben@decadent.org.uk> Tue, 03 Jul 2018 17:26:05 +0100
|
||||||
|
|
||||||
|
linux (4.17.6-2) unstable; urgency=medium
|
||||||
|
|
||||||
|
[ Ben Hutchings ]
|
||||||
|
* [armhf] drm/sun4i: Ignore ABI changes (fixes FTBFS)
|
||||||
|
* debian/control: Fix arch/profile qualifications for libelf-dev
|
||||||
|
build-dependency
|
||||||
|
* debian/rules.real: Pass KERNEL_ARCH variable down to debian/rules.d
|
||||||
|
* debian/rules.d/tools/perf/Makefile: Use KERNEL_ARCH variable
|
||||||
|
* linux-kbuild: Fix the assumed host architecture for cross-built objtool
|
||||||
|
* [ppc64] linux-bootwrapper: Work around compiler include path quirk
|
||||||
|
(fixes FTBFS)
|
||||||
|
* Fix file conflicts between debug packages where a vDSO is identical
|
||||||
|
(Closes: #872263):
|
||||||
|
- kbuild: Add build salt to the kernel and modules
|
||||||
|
- [arm64,powerpc,x86] Add build salt to the vDSO
|
||||||
|
- Set BUILD_SALT equal to the release string
|
||||||
|
* init: Avoid ABI change for build salt
|
||||||
|
|
||||||
|
[ Vagrant Cascadian ]
|
||||||
|
* [riscv64] Build linux-libc-dev (Closes: #886440).
|
||||||
|
Thanks to Manuel A. Fernandez Montecelo.
|
||||||
|
|
||||||
|
-- Ben Hutchings <ben@decadent.org.uk> Sun, 15 Jul 2018 23:45:56 +0100
|
||||||
|
|
||||||
linux (4.17.6-1) unstable; urgency=medium
|
linux (4.17.6-1) unstable; urgency=medium
|
||||||
|
|
||||||
* New upstream stable update:
|
* New upstream stable update:
|
||||||
|
|
|
@ -22,6 +22,7 @@ ignore-changes:
|
||||||
module:arch/x86/kvm/*
|
module:arch/x86/kvm/*
|
||||||
module:drivers/crypto/ccp/*
|
module:drivers/crypto/ccp/*
|
||||||
module:drivers/hv/*
|
module:drivers/hv/*
|
||||||
|
module:drivers/gpu/drm/sun4i/*
|
||||||
module:drivers/iio/**
|
module:drivers/iio/**
|
||||||
module:drivers/misc/cxl/*
|
module:drivers/misc/cxl/*
|
||||||
module:drivers/mtd/nand/*
|
module:drivers/mtd/nand/*
|
||||||
|
@ -96,6 +97,7 @@ arches:
|
||||||
powerpcspe
|
powerpcspe
|
||||||
ppc64
|
ppc64
|
||||||
ppc64el
|
ppc64el
|
||||||
|
riscv64
|
||||||
s390
|
s390
|
||||||
s390x
|
s390x
|
||||||
sh3
|
sh3
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
[base]
|
||||||
|
kernel-arch: riscv
|
||||||
|
featuresets:
|
||||||
|
# empty; just building headers yet
|
105
debian/patches/features/all/kbuild-add-build-salt-to-the-kernel-and-modules.patch
vendored
Normal file
105
debian/patches/features/all/kbuild-add-build-salt-to-the-kernel-and-modules.patch
vendored
Normal file
|
@ -0,0 +1,105 @@
|
||||||
|
From: Laura Abbott <labbott@redhat.com>
|
||||||
|
Date: Thu, 5 Jul 2018 17:49:37 -0700
|
||||||
|
Subject: kbuild: Add build salt to the kernel and modules
|
||||||
|
Origin: https://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild.git/commit?id=8bc0ab58aca8a96fed7e9a38e21025d1737f4a4f
|
||||||
|
Bug-Debian: https://bugs.debian.org/872263
|
||||||
|
|
||||||
|
In Fedora, the debug information is packaged separately (foo-debuginfo) and
|
||||||
|
can be installed separately. There's been a long standing issue where only
|
||||||
|
one version of a debuginfo info package can be installed at a time. There's
|
||||||
|
been an effort for Fedora for parallel debuginfo to rectify this problem.
|
||||||
|
|
||||||
|
Part of the requirement to allow parallel debuginfo to work is that build ids
|
||||||
|
are unique between builds. The existing upstream rpm implementation ensures
|
||||||
|
this by re-calculating the build-id using the version and release as a
|
||||||
|
seed. This doesn't work 100% for the kernel because of the vDSO which is
|
||||||
|
its own binary and doesn't get updated when embedded.
|
||||||
|
|
||||||
|
Fix this by adding some data in an ELF note for both the kernel and modules.
|
||||||
|
The data is controlled via a Kconfig option so distributions can set it
|
||||||
|
to an appropriate value to ensure uniqueness between builds.
|
||||||
|
|
||||||
|
Suggested-by: Masahiro Yamada <yamada.masahiro@socionext.com>
|
||||||
|
Signed-off-by: Laura Abbott <labbott@redhat.com>
|
||||||
|
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
|
||||||
|
---
|
||||||
|
include/linux/build-salt.h | 20 ++++++++++++++++++++
|
||||||
|
init/Kconfig | 9 +++++++++
|
||||||
|
init/version.c | 3 +++
|
||||||
|
scripts/mod/modpost.c | 3 +++
|
||||||
|
4 files changed, 35 insertions(+)
|
||||||
|
create mode 100644 include/linux/build-salt.h
|
||||||
|
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/include/linux/build-salt.h
|
||||||
|
@@ -0,0 +1,20 @@
|
||||||
|
+#ifndef __BUILD_SALT_H
|
||||||
|
+#define __BUILD_SALT_H
|
||||||
|
+
|
||||||
|
+#include <linux/elfnote.h>
|
||||||
|
+
|
||||||
|
+#define LINUX_ELFNOTE_BUILD_SALT 0x100
|
||||||
|
+
|
||||||
|
+#ifdef __ASSEMBLER__
|
||||||
|
+
|
||||||
|
+#define BUILD_SALT \
|
||||||
|
+ ELFNOTE(Linux, LINUX_ELFNOTE_BUILD_SALT, .asciz CONFIG_BUILD_SALT)
|
||||||
|
+
|
||||||
|
+#else
|
||||||
|
+
|
||||||
|
+#define BUILD_SALT \
|
||||||
|
+ ELFNOTE32("Linux", LINUX_ELFNOTE_BUILD_SALT, CONFIG_BUILD_SALT)
|
||||||
|
+
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
+#endif /* __BUILD_SALT_H */
|
||||||
|
--- a/init/Kconfig
|
||||||
|
+++ b/init/Kconfig
|
||||||
|
@@ -109,6 +109,15 @@ config LOCALVERSION_AUTO
|
||||||
|
|
||||||
|
which is done within the script "scripts/setlocalversion".)
|
||||||
|
|
||||||
|
+config BUILD_SALT
|
||||||
|
+ string "Build ID Salt"
|
||||||
|
+ default ""
|
||||||
|
+ help
|
||||||
|
+ The build ID is used to link binaries and their debug info. Setting
|
||||||
|
+ this option will use the value in the calculation of the build id.
|
||||||
|
+ This is mostly useful for distributions which want to ensure the
|
||||||
|
+ build is unique between builds. It's safe to leave the default.
|
||||||
|
+
|
||||||
|
config HAVE_KERNEL_GZIP
|
||||||
|
bool
|
||||||
|
|
||||||
|
--- a/init/version.c
|
||||||
|
+++ b/init/version.c
|
||||||
|
@@ -7,6 +7,7 @@
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <generated/compile.h>
|
||||||
|
+#include <linux/build-salt.h>
|
||||||
|
#include <linux/export.h>
|
||||||
|
#include <linux/uts.h>
|
||||||
|
#include <linux/utsname.h>
|
||||||
|
@@ -49,3 +50,5 @@ const char linux_proc_banner[] =
|
||||||
|
"%s version %s"
|
||||||
|
" (" LINUX_COMPILE_BY "@" LINUX_COMPILE_HOST ")"
|
||||||
|
" (" LINUX_COMPILER ") %s\n";
|
||||||
|
+
|
||||||
|
+BUILD_SALT;
|
||||||
|
--- a/scripts/mod/modpost.c
|
||||||
|
+++ b/scripts/mod/modpost.c
|
||||||
|
@@ -2137,10 +2137,13 @@ static int check_modname_len(struct modu
|
||||||
|
**/
|
||||||
|
static void add_header(struct buffer *b, struct module *mod)
|
||||||
|
{
|
||||||
|
+ buf_printf(b, "#include <linux/build-salt.h>\n");
|
||||||
|
buf_printf(b, "#include <linux/module.h>\n");
|
||||||
|
buf_printf(b, "#include <linux/vermagic.h>\n");
|
||||||
|
buf_printf(b, "#include <linux/compiler.h>\n");
|
||||||
|
buf_printf(b, "\n");
|
||||||
|
+ buf_printf(b, "BUILD_SALT;\n");
|
||||||
|
+ buf_printf(b, "\n");
|
||||||
|
buf_printf(b, "MODULE_INFO(vermagic, VERMAGIC_STRING);\n");
|
||||||
|
buf_printf(b, "MODULE_INFO(name, KBUILD_MODNAME);\n");
|
||||||
|
buf_printf(b, "\n");
|
|
@ -0,0 +1,29 @@
|
||||||
|
From: Laura Abbott <labbott@redhat.com>
|
||||||
|
Date: Thu, 5 Jul 2018 17:49:40 -0700
|
||||||
|
Subject: arm64: Add build salt to the vDSO
|
||||||
|
Origin: https://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild.git/commit?id=13351cdf75405e38c1b7bb927624d910d328be2b
|
||||||
|
Bug-Debian: https://bugs.debian.org/872263
|
||||||
|
|
||||||
|
The vDSO needs to have a unique build id in a similar manner
|
||||||
|
to the kernel and modules. Use the build salt macro.
|
||||||
|
|
||||||
|
Acked-by: Will Deacon <will.deacon@arm.com>
|
||||||
|
Signed-off-by: Laura Abbott <labbott@redhat.com>
|
||||||
|
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
|
||||||
|
---
|
||||||
|
arch/arm64/kernel/vdso/note.S | 3 +++
|
||||||
|
1 file changed, 3 insertions(+)
|
||||||
|
|
||||||
|
--- a/arch/arm64/kernel/vdso/note.S
|
||||||
|
+++ b/arch/arm64/kernel/vdso/note.S
|
||||||
|
@@ -22,7 +22,10 @@
|
||||||
|
#include <linux/uts.h>
|
||||||
|
#include <linux/version.h>
|
||||||
|
#include <linux/elfnote.h>
|
||||||
|
+#include <linux/build-salt.h>
|
||||||
|
|
||||||
|
ELFNOTE_START(Linux, 0, "a")
|
||||||
|
.long LINUX_VERSION_CODE
|
||||||
|
ELFNOTE_END
|
||||||
|
+
|
||||||
|
+BUILD_SALT
|
|
@ -0,0 +1,31 @@
|
||||||
|
From: Laura Abbott <labbott@redhat.com>
|
||||||
|
Date: Thu, 5 Jul 2018 17:49:39 -0700
|
||||||
|
Subject: powerpc: Add build salt to the vDSO
|
||||||
|
Origin: https://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild.git/commit?id=29f07b97416a95d28ee62e70fd91b44956d3c8ce
|
||||||
|
Bug-Debian: https://bugs.debian.org/872263
|
||||||
|
|
||||||
|
The vDSO needs to have a unique build id in a similar manner
|
||||||
|
to the kernel and modules. Use the build salt macro.
|
||||||
|
|
||||||
|
Signed-off-by: Laura Abbott <labbott@redhat.com>
|
||||||
|
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
|
||||||
|
---
|
||||||
|
arch/powerpc/kernel/vdso32/note.S | 3 +++
|
||||||
|
1 file changed, 3 insertions(+)
|
||||||
|
|
||||||
|
--- a/arch/powerpc/kernel/vdso32/note.S
|
||||||
|
+++ b/arch/powerpc/kernel/vdso32/note.S
|
||||||
|
@@ -5,6 +5,7 @@
|
||||||
|
|
||||||
|
#include <linux/uts.h>
|
||||||
|
#include <linux/version.h>
|
||||||
|
+#include <linux/build-salt.h>
|
||||||
|
|
||||||
|
#define ASM_ELF_NOTE_BEGIN(name, flags, vendor, type) \
|
||||||
|
.section name, flags; \
|
||||||
|
@@ -23,3 +24,5 @@
|
||||||
|
ASM_ELF_NOTE_BEGIN(".note.kernel-version", "a", UTS_SYSNAME, 0)
|
||||||
|
.long LINUX_VERSION_CODE
|
||||||
|
ASM_ELF_NOTE_END
|
||||||
|
+
|
||||||
|
+BUILD_SALT
|
|
@ -0,0 +1,52 @@
|
||||||
|
From: Laura Abbott <labbott@redhat.com>
|
||||||
|
Date: Thu, 5 Jul 2018 17:49:38 -0700
|
||||||
|
Subject: x86: Add build salt to the vDSO
|
||||||
|
Origin: https://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild.git/commit?id=fdc3ae38182c7f983f4f8b97c86b753a3c16e269
|
||||||
|
Bug-Debian: https://bugs.debian.org/872263
|
||||||
|
|
||||||
|
The vDSO needs to have a unique build id in a similar manner
|
||||||
|
to the kernel and modules. Use the build salt macro.
|
||||||
|
|
||||||
|
Acked-by: Andy Lutomirski <luto@kernel.org>
|
||||||
|
Signed-off-by: Laura Abbott <labbott@redhat.com>
|
||||||
|
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
|
||||||
|
---
|
||||||
|
arch/x86/entry/vdso/vdso-note.S | 3 +++
|
||||||
|
arch/x86/entry/vdso/vdso32/note.S | 3 +++
|
||||||
|
2 files changed, 6 insertions(+)
|
||||||
|
|
||||||
|
--- a/arch/x86/entry/vdso/vdso-note.S
|
||||||
|
+++ b/arch/x86/entry/vdso/vdso-note.S
|
||||||
|
@@ -3,6 +3,7 @@
|
||||||
|
* Here we can supply some information useful to userland.
|
||||||
|
*/
|
||||||
|
|
||||||
|
+#include <linux/build-salt.h>
|
||||||
|
#include <linux/uts.h>
|
||||||
|
#include <linux/version.h>
|
||||||
|
#include <linux/elfnote.h>
|
||||||
|
@@ -10,3 +11,5 @@
|
||||||
|
ELFNOTE_START(Linux, 0, "a")
|
||||||
|
.long LINUX_VERSION_CODE
|
||||||
|
ELFNOTE_END
|
||||||
|
+
|
||||||
|
+BUILD_SALT
|
||||||
|
--- a/arch/x86/entry/vdso/vdso32/note.S
|
||||||
|
+++ b/arch/x86/entry/vdso/vdso32/note.S
|
||||||
|
@@ -4,6 +4,7 @@
|
||||||
|
* Here we can supply some information useful to userland.
|
||||||
|
*/
|
||||||
|
|
||||||
|
+#include <linux/build-salt.h>
|
||||||
|
#include <linux/version.h>
|
||||||
|
#include <linux/elfnote.h>
|
||||||
|
|
||||||
|
@@ -14,6 +15,8 @@ ELFNOTE_START(Linux, 0, "a")
|
||||||
|
.long LINUX_VERSION_CODE
|
||||||
|
ELFNOTE_END
|
||||||
|
|
||||||
|
+BUILD_SALT
|
||||||
|
+
|
||||||
|
#ifdef CONFIG_XEN
|
||||||
|
/*
|
||||||
|
* Add a special note telling glibc's dynamic linker a fake hardware
|
|
@ -93,6 +93,10 @@ bugfix/all/i40e-build-for-64-bit-targets-only.patch
|
||||||
bugfix/all/netfilter-ipvs-Fix-invalid-bytes-in-IP_VS_MH_TAB_IND.patch
|
bugfix/all/netfilter-ipvs-Fix-invalid-bytes-in-IP_VS_MH_TAB_IND.patch
|
||||||
|
|
||||||
# Miscellaneous features
|
# Miscellaneous features
|
||||||
|
features/all/kbuild-add-build-salt-to-the-kernel-and-modules.patch
|
||||||
|
features/x86/x86-add-build-salt-to-the-vdso.patch
|
||||||
|
features/powerpc/powerpc-add-build-salt-to-the-vdso.patch
|
||||||
|
features/arm64/arm64-add-build-salt-to-the-vdso.patch
|
||||||
|
|
||||||
# Lockdown (formerly 'securelevel') patchset
|
# Lockdown (formerly 'securelevel') patchset
|
||||||
features/all/lockdown/0001-Add-the-ability-to-lock-down-access-to-the-running-k.patch
|
features/all/lockdown/0001-Add-the-ability-to-lock-down-access-to-the-running-k.patch
|
||||||
|
|
|
@ -9,3 +9,10 @@ SCRIPTS = \
|
||||||
include $(top_rulesdir)/Makefile.inc
|
include $(top_rulesdir)/Makefile.inc
|
||||||
|
|
||||||
CPPFLAGS += -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
|
CPPFLAGS += -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
|
||||||
|
|
||||||
|
# gcc for ppc64 currently seems to be treating -I like -isystem, and
|
||||||
|
# since arch/powerpc/boot has substitute versions of some standard
|
||||||
|
# headers for use at boot time, they are also included in these tools.
|
||||||
|
# In this case there is actually no need to use the -I option, so
|
||||||
|
# filter it out.
|
||||||
|
CPPFLAGS := $(filter-out -I%,$(CPPFLAGS))
|
||||||
|
|
|
@ -5,7 +5,7 @@ all:
|
||||||
# for multiple targets and add a wrapper, same as for modpost.
|
# for multiple targets and add a wrapper, same as for modpost.
|
||||||
# objtool explicitly sets CC and LD to be native tools; we need to override
|
# objtool explicitly sets CC and LD to be native tools; we need to override
|
||||||
# this on the command line to make cross-builds work.
|
# this on the command line to make cross-builds work.
|
||||||
$(MAKE) -C $(top_srcdir)/tools/objtool O=$(CURDIR) ARCH=x86 CC=$(CC) LD=$(CROSS_COMPILE)ld
|
$(MAKE) -C $(top_srcdir)/tools/objtool O=$(CURDIR) HOSTARCH=$(KERNEL_ARCH) ARCH=x86 CC=$(CC) LD=$(CROSS_COMPILE)ld
|
||||||
|
|
||||||
install:
|
install:
|
||||||
install -D -m755 objtool $(DESTDIR)/$(installdir)/objtool
|
install -D -m755 objtool $(DESTDIR)/$(installdir)/objtool
|
||||||
|
|
|
@ -2,37 +2,21 @@ include $(top_rulesdir)/Makefile.inc
|
||||||
|
|
||||||
ifeq ($(filter nopython,$(DEB_BUILD_PROFILES)),)
|
ifeq ($(filter nopython,$(DEB_BUILD_PROFILES)),)
|
||||||
|
|
||||||
DEB_HOST_ARCH_CPU := $(shell dpkg-architecture -qDEB_HOST_ARCH_CPU)
|
ifneq ($(filter alpha arm arm64 mips parisc s390 sh sparc,$(KERNEL_ARCH)),)
|
||||||
|
HAVE_PERF := 1
|
||||||
ifeq ($(DEB_HOST_ARCH_CPU),alpha)
|
else ifeq ($(KERNEL_ARCH),powerpc)
|
||||||
KERNEL_ARCH_PERF = alpha
|
# Pure 32-bit toolchains currently don't work
|
||||||
else ifeq ($(DEB_HOST_ARCH_CPU),arm)
|
|
||||||
KERNEL_ARCH_PERF = arm
|
|
||||||
else ifeq ($(DEB_HOST_ARCH_CPU),arm64)
|
|
||||||
KERNEL_ARCH_PERF = arm64
|
|
||||||
else ifneq ($(filter mips%,$(DEB_HOST_ARCH_CPU)),)
|
|
||||||
KERNEL_ARCH_PERF = mips
|
|
||||||
else ifeq ($(DEB_HOST_ARCH_CPU),hppa)
|
|
||||||
KERNEL_ARCH_PERF = parisc
|
|
||||||
else ifneq ($(filter powerpc% ppc%,$(DEB_HOST_ARCH_CPU)),)
|
|
||||||
# But pure 32-bit toolchains currently don't work
|
|
||||||
ifneq ($(shell dpkg-architecture -qDEB_HOST_ARCH),powerpcspe)
|
ifneq ($(shell dpkg-architecture -qDEB_HOST_ARCH),powerpcspe)
|
||||||
KERNEL_ARCH_PERF = powerpc
|
HAVE_PERF := 1
|
||||||
endif
|
endif
|
||||||
else ifneq ($(filter s390%,$(DEB_HOST_ARCH_CPU)),)
|
else ifeq ($(KERNEL_ARCH),x86)
|
||||||
KERNEL_ARCH_PERF = s390
|
# x32 isn't supported yet
|
||||||
else ifeq ($(DEB_HOST_ARCH_CPU),sh4)
|
|
||||||
KERNEL_ARCH_PERF = sh
|
|
||||||
else ifneq ($(filter sparc%,$(DEB_HOST_ARCH_CPU)),)
|
|
||||||
KERNEL_ARCH_PERF = sparc
|
|
||||||
else ifneq ($(filter amd64 i386,$(DEB_HOST_ARCH_CPU)),)
|
|
||||||
# But x32 isn't supported yet
|
|
||||||
ifneq ($(shell dpkg-architecture -qDEB_HOST_ARCH),x32)
|
ifneq ($(shell dpkg-architecture -qDEB_HOST_ARCH),x32)
|
||||||
KERNEL_ARCH_PERF = x86
|
HAVE_PERF := 1
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
MAKE_PERF := $(MAKE) O=$(CURDIR) prefix=/usr V=1 ARCH=$(KERNEL_ARCH_PERF) EXTRA_WARNINGS=-Wno-error EXTRA_CFLAGS='$(CFLAGS) $(CPPFLAGS)' LDFLAGS='$(LDFLAGS)'
|
MAKE_PERF := $(MAKE) O=$(CURDIR) prefix=/usr V=1 ARCH=$(KERNEL_ARCH) EXTRA_WARNINGS=-Wno-error EXTRA_CFLAGS='$(CFLAGS) $(CPPFLAGS)' LDFLAGS='$(LDFLAGS)'
|
||||||
|
|
||||||
# Disable Gtk UI until it's more usable
|
# Disable Gtk UI until it's more usable
|
||||||
MAKE_PERF += NO_GTK2=1
|
MAKE_PERF += NO_GTK2=1
|
||||||
|
@ -61,7 +45,7 @@ MAKE_PERF += USE_ASCIIDOCTOR=1
|
||||||
MAKE_PERF += PYTHON=/usr/bin/python3
|
MAKE_PERF += PYTHON=/usr/bin/python3
|
||||||
|
|
||||||
all:
|
all:
|
||||||
ifdef KERNEL_ARCH_PERF
|
ifdef HAVE_PERF
|
||||||
# perf changes some default directories depending on whether DESTDIR is
|
# perf changes some default directories depending on whether DESTDIR is
|
||||||
# set. We must define it even when building to avoid a rebuild when we
|
# set. We must define it even when building to avoid a rebuild when we
|
||||||
# run 'make install'.
|
# run 'make install'.
|
||||||
|
@ -77,7 +61,7 @@ endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
install:
|
install:
|
||||||
ifdef KERNEL_ARCH_PERF
|
ifdef HAVE_PERF
|
||||||
+$(MAKE_PERF) -C $(top_srcdir)/tools/perf -f Makefile.perf install VERSION=$(VERSION)
|
+$(MAKE_PERF) -C $(top_srcdir)/tools/perf -f Makefile.perf install VERSION=$(VERSION)
|
||||||
# Don't install a 'trace' alias yet:
|
# Don't install a 'trace' alias yet:
|
||||||
# - We need a wrapper for it anyway, so there's little point adding a
|
# - We need a wrapper for it anyway, so there's little point adding a
|
||||||
|
|
|
@ -175,6 +175,8 @@ $(STAMPS_DIR)/setup_$(ARCH)_$(FEATURESET)_$(FLAVOUR): $(STAMPS_DIR)/source_$(FEA
|
||||||
rm -rf '$(DIR)'
|
rm -rf '$(DIR)'
|
||||||
mkdir '$(DIR)'
|
mkdir '$(DIR)'
|
||||||
cp '$(CONFIG)' '$(DIR)/.config'
|
cp '$(CONFIG)' '$(DIR)/.config'
|
||||||
|
# Add "salt" to fix #872263
|
||||||
|
echo 'CONFIG_BUILD_SALT="$(ABINAME)$(LOCALVERSION_IMAGE)"' >> '$(DIR)/.config'
|
||||||
echo 'override ARCH = $(KERNEL_ARCH)' >> '$(DIR)/.kernelvariables'
|
echo 'override ARCH = $(KERNEL_ARCH)' >> '$(DIR)/.kernelvariables'
|
||||||
echo 'override KERNELRELEASE = $(ABINAME)$(LOCALVERSION_IMAGE)' >> '$(DIR)/.kernelvariables'
|
echo 'override KERNELRELEASE = $(ABINAME)$(LOCALVERSION_IMAGE)' >> '$(DIR)/.kernelvariables'
|
||||||
echo 'CCACHE = ccache' >> '$(DIR)/.kernelvariables'
|
echo 'CCACHE = ccache' >> '$(DIR)/.kernelvariables'
|
||||||
|
@ -587,14 +589,15 @@ install-config_$(ARCH):
|
||||||
dh_testdir
|
dh_testdir
|
||||||
dh_testroot
|
dh_testroot
|
||||||
dh_installdirs /usr/src/linux-config-$(UPSTREAMVERSION)
|
dh_installdirs /usr/src/linux-config-$(UPSTREAMVERSION)
|
||||||
# Fix the module signing configuration to work for custom kernels
|
# Fix the module signing configuration to work for custom kernels. Also delete
|
||||||
|
# CONFIG_BUILD_SALT which makes no sense for custom kernels.
|
||||||
for triplet in $(TRIPLETS); do \
|
for triplet in $(TRIPLETS); do \
|
||||||
sed '/CONFIG_\(MODULE_SIG_\(ALL\|KEY\)\|SYSTEM_TRUSTED_KEYS\)[ =]/d' $(BUILD_DIR)/build_$$triplet/.config | xz -c >debian/$(PACKAGE_NAME)/usr/src/linux-config-$(UPSTREAMVERSION)/config.$$triplet.xz; \
|
sed '/CONFIG_\(MODULE_SIG_\(ALL\|KEY\)\|SYSTEM_TRUSTED_KEYS\|BUILD_SALT\)[ =]/d' $(BUILD_DIR)/build_$$triplet/.config | xz -c >debian/$(PACKAGE_NAME)/usr/src/linux-config-$(UPSTREAMVERSION)/config.$$triplet.xz; \
|
||||||
done
|
done
|
||||||
+$(MAKE_SELF) install-base
|
+$(MAKE_SELF) install-base
|
||||||
|
|
||||||
define make-tools
|
define make-tools
|
||||||
+mkdir -p $(BUILD_DIR)/build-tools/$(1) && $(MAKE_CLEAN) -C $(BUILD_DIR)/build-tools/$(1) -f $(CURDIR)/debian/rules.d/$(1)/Makefile top_srcdir=$(CURDIR) top_rulesdir=$(CURDIR)/debian/rules.d OUTDIR=$(1) VERSION=$(VERSION)
|
+mkdir -p $(BUILD_DIR)/build-tools/$(1) && $(MAKE_CLEAN) -C $(BUILD_DIR)/build-tools/$(1) -f $(CURDIR)/debian/rules.d/$(1)/Makefile top_srcdir=$(CURDIR) top_rulesdir=$(CURDIR)/debian/rules.d OUTDIR=$(1) VERSION=$(VERSION) KERNEL_ARCH=$(KERNEL_ARCH)
|
||||||
endef
|
endef
|
||||||
|
|
||||||
$(STAMPS_DIR)/build-tools:
|
$(STAMPS_DIR)/build-tools:
|
||||||
|
|
|
@ -27,6 +27,9 @@ Build-Depends-Arch:
|
||||||
# used by upstream to build signing tools and to process certificates
|
# used by upstream to build signing tools and to process certificates
|
||||||
libssl-dev:native <!stage1>, libssl-dev <!stage1 !pkg.linux.notools cross>,
|
libssl-dev:native <!stage1>, libssl-dev <!stage1 !pkg.linux.notools cross>,
|
||||||
openssl (>= 1.1.0-1~) <!stage1>,
|
openssl (>= 1.1.0-1~) <!stage1>,
|
||||||
|
# used by upstream to build objtool (native for amd64 images; host arch for
|
||||||
|
# linux-kbuild) and perf (host arch)
|
||||||
|
libelf-dev:native [amd64] <!stage1>, libelf-dev <!stage1 !pkg.linux.notools>,
|
||||||
# used by upstream to build perf documentation
|
# used by upstream to build perf documentation
|
||||||
asciidoctor <!stage1 !nodoc !pkg.linux.notools>,
|
asciidoctor <!stage1 !nodoc !pkg.linux.notools>,
|
||||||
# used by upstream to build perf
|
# used by upstream to build perf
|
||||||
|
@ -36,8 +39,6 @@ Build-Depends-Arch:
|
||||||
# - libbabeltrace-ctf-dev may or may not be needed as well
|
# - libbabeltrace-ctf-dev may or may not be needed as well
|
||||||
libbabeltrace-dev (>= 1.5.3-2~) <!stage1 !pkg.linux.notools !nopython> | libbabeltrace-ctf-dev (>= 1.5.0) <!stage1 !pkg.linux.notools !nopython>,
|
libbabeltrace-dev (>= 1.5.3-2~) <!stage1 !pkg.linux.notools !nopython> | libbabeltrace-ctf-dev (>= 1.5.0) <!stage1 !pkg.linux.notools !nopython>,
|
||||||
libdw-dev <!stage1 !pkg.linux.notools !nopython>,
|
libdw-dev <!stage1 !pkg.linux.notools !nopython>,
|
||||||
# needed for objtool with CONFIG_STACK_VALIDATION=y and CONFIG_UNWINDER_ORC=y
|
|
||||||
libelf-dev <!stage1>,
|
|
||||||
libiberty-dev <!stage1 !pkg.linux.notools !nopython>,
|
libiberty-dev <!stage1 !pkg.linux.notools !nopython>,
|
||||||
libnewt-dev <!stage1 !pkg.linux.notools !nopython>,
|
libnewt-dev <!stage1 !pkg.linux.notools !nopython>,
|
||||||
libnuma-dev [amd64 arm64 hppa i386 mips mips64 mips64el mipsel mipsn32 mipsn32el mipsr6 mipsr6el mipsn32r6 mipsn32r6el mips64r6 mips64r6el powerpc powerpcspe ppc64 ppc64el sparc x32] <!stage1 !pkg.linux.notools !nopython>,
|
libnuma-dev [amd64 arm64 hppa i386 mips mips64 mips64el mipsel mipsn32 mipsn32el mipsr6 mipsr6el mipsn32r6 mipsn32r6el mips64r6 mips64r6el powerpc powerpcspe ppc64 ppc64el sparc x32] <!stage1 !pkg.linux.notools !nopython>,
|
||||||
|
|
Loading…
Reference in New Issue