From b3f7902a0687dced523f49a0430757ac68f6467d Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Thu, 28 Jan 2016 22:42:34 +0000 Subject: [PATCH] include/kernel: add custom USER/DOMAIN config options These allow the generated kernel's build metadata to be defined explicitly. This metadata is reported, eg, at boot time and in `uname -a` on running systems. If the variables aren't configured, the current build system username and hostname are used as normal. The motivation for this option is to achive reproducible (bit-for-bit identical) kernel builds of official openwrt releases. Signed-off-by: bryan newbold Signed-off-by: Felix Fietkau SVN-Revision: 48541 --- config/Config-kernel.in | 16 ++++++++++++++++ include/kernel-defaults.mk | 2 ++ 2 files changed, 18 insertions(+) diff --git a/config/Config-kernel.in b/config/Config-kernel.in index 6e79bae34b..c93bbde511 100644 --- a/config/Config-kernel.in +++ b/config/Config-kernel.in @@ -4,6 +4,22 @@ # See /LICENSE for more information. # +config KERNEL_BUILD_USER + string "Custom Kernel Build User Name" + default "" + help + Sets the Kernel build user string, which for example will be returned + by 'uname -a' on running systems. + If not set, uses system user at build time. + +config KERNEL_BUILD_DOMAIN + string "Custom Kernel Build Domain Name" + default "" + help + Sets the Kernel build domain string, which for example will be + returned by 'uname -a' on running systems. + If not set, uses system hostname at build time. + config KERNEL_PRINTK bool "Enable support for printk" default y diff --git a/include/kernel-defaults.mk b/include/kernel-defaults.mk index 052b2b3a7b..ae02556058 100644 --- a/include/kernel-defaults.mk +++ b/include/kernel-defaults.mk @@ -10,6 +10,8 @@ KERNEL_MAKEOPTS := -C $(LINUX_DIR) \ CROSS_COMPILE="$(KERNEL_CROSS)" \ ARCH="$(LINUX_KARCH)" \ KBUILD_HAVE_NLS=no \ + KBUILD_BUILD_USER="$(call qstrip,$(CONFIG_KERNEL_BUILD_USER))" \ + KBUILD_BUILD_HOST="$(call qstrip,$(CONFIG_KERNEL_BUILD_DOMAIN))" \ CONFIG_SHELL="$(BASH)" \ $(if $(findstring c,$(OPENWRT_VERBOSE)),V=1,V='') \ $(if $(PKG_BUILD_ID),LDFLAGS_MODULE=--build-id=0x$(PKG_BUILD_ID))