Android-P: support userdebug and user cfg
authorSangkyu Kim <skwith.kim@samsung.com>
Tue, 31 Jul 2018 12:07:50 +0000 (21:07 +0900)
committerhskang <hs1218.kang@samsung.com>
Mon, 13 Aug 2018 06:13:23 +0000 (02:13 -0400)
Change-Id: I06fd313806f1c30b253b9b721d0c53f863608856
Signed-off-by: Sangkyu Kim <skwith.kim@samsung.com>
AndroidKernel.mk

index e9d5134d6fce26a79902956e9fd81c9e08afe14b..18394873dca3433f478e5ab7ac7cc0a36e122ac2 100644 (file)
@@ -44,10 +44,26 @@ KERNEL_DTB := $(KERNEL_DTB_DIR)/exynos9610.dtb
 KERNEL_DTBO_CFG := $(KERNEL_DTB_DIR)/exynos9610_dtboimg.cfg
 MKDTIMG := $(HOST_OUT_EXECUTABLES)/mkdtimg
 
+KERNEL_MERGE_CONFIG := $(TARGET_KERNEL_SOURCE)/scripts/kconfig/merge_config.sh
+KERNEL_CONFIG_BASE := $(TARGET_KERNEL_SOURCE)/arch/$(KERNEL_ARCH)/configs
+KERNEL_DEFCONFIG_PATH := $(KERNEL_CONFIG_BASE)/$(KERNEL_DEFCONFIG)
+
 ifeq ($(KERNEL_DEFCONFIG),)
 $(error Kernel configuration not defined, cannot build kernel)
 else
 
+ifeq ($(TARGET_BUILD_VARIANT),eng)
+MAKE_CONFIG_CMD := $(MAKE) -C $(TARGET_KERNEL_SOURCE) ARCH=$(KERNEL_ARCH) CROSS_COMPILE=$(KERNEL_CROSS_COMPILE) $(KERNEL_DEFCONFIG)
+else
+ifeq ($(TARGET_BUILD_VARIANT),userdebug)
+KERNEL_USER_CFG := $(KERNEL_CONFIG_BASE)/$(TARGET_SOC)_userdebug.cfg
+else
+KERNEL_USER_CFG := $(KERNEL_CONFIG_BASE)/$(TARGET_SOC)_user.cfg
+endif
+MAKE_CONFIG_CMD := ARCH=$(KERNEL_ARCH) $(KERNEL_MERGE_CONFIG) -m -O $(TARGET_KERNEL_SOURCE) $(KERNEL_DEFCONFIG_PATH) $(KERNEL_USER_CFG);
+MAKE_CONFIG_CMD += $(MAKE) -C $(TARGET_KERNEL_SOURCE) ARCH=$(KERNEL_ARCH) KCONFIG_ALLCONFIG=.config alldefconfig
+endif
+
 ifeq ($(N_KERNEL_BUILD_THREAD),)
 N_KERNEL_BUILD_THREAD := 1
 endif
@@ -73,7 +89,7 @@ kernel-distclean:
 
 $(KERNEL_CONFIG): remove-bins
        $(hide) echo "make $(KERNEL_DEFCONFIG)"
-       $(MAKE) -C $(TARGET_KERNEL_SOURCE) ARCH=$(KERNEL_ARCH) CROSS_COMPILE=$(KERNEL_CROSS_COMPILE) $(KERNEL_DEFCONFIG)
+       $(MAKE_CONFIG_CMD)
 
 $(KERNEL_BIN): $(KERNEL_CONFIG)
        $(hide) echo "Building kernel..."