AndroidKernel.mk: Fix multiple recompile with Android mm macro
Skip header file generation section if KERNEL_DEFCONFIG parameter is not defined. This occurs during Android mm build of a module (without dependency); and the lack of KERNEL_DEFCONFIG causes the command line to trigger a kernel recompile. Change-Id: I709d8c23691442e537ec6e2b7aebeb010d90a139 Signed-off-by: David Ng <dave@codeaurora.org>
This commit is contained in:
parent
0dea33bcbd
commit
9ee75859b2
|
@ -45,6 +45,10 @@ ifeq ($(TARGET_PREBUILT_KERNEL),)
|
|||
KERNEL_OUT := $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ
|
||||
KERNEL_CONFIG := $(KERNEL_OUT)/.config
|
||||
|
||||
ifeq ($(KERNEL_DEFCONFIG)$(wildcard $(KERNEL_CONFIG)),)
|
||||
$(error Kernel configuration not defined, cannot build kernel)
|
||||
else
|
||||
|
||||
ifeq ($(TARGET_USES_UNCOMPRESSED_KERNEL),true)
|
||||
$(info Using uncompressed kernel)
|
||||
TARGET_PREBUILT_INT_KERNEL := $(KERNEL_OUT)/arch/$(KERNEL_ARCH)/boot/Image
|
||||
|
@ -90,6 +94,7 @@ $(KERNEL_CONFIG): $(KERNEL_OUT)
|
|||
$(MAKE) -C kernel O=../$(KERNEL_OUT) ARCH=$(KERNEL_ARCH) CROSS_COMPILE=$(KERNEL_CROSS_COMPILE) oldconfig; fi
|
||||
|
||||
$(TARGET_PREBUILT_INT_KERNEL): $(KERNEL_OUT) $(KERNEL_HEADERS_INSTALL)
|
||||
$(hide) echo "Building kernel..."
|
||||
$(hide) rm -rf $(KERNEL_OUT)/arch/$(KERNEL_ARCH)/boot/dts
|
||||
$(MAKE) -C kernel O=../$(KERNEL_OUT) ARCH=$(KERNEL_ARCH) CROSS_COMPILE=$(KERNEL_CROSS_COMPILE)
|
||||
$(MAKE) -C kernel O=../$(KERNEL_OUT) ARCH=$(KERNEL_ARCH) CROSS_COMPILE=$(KERNEL_CROSS_COMPILE) modules
|
||||
|
@ -98,11 +103,14 @@ $(TARGET_PREBUILT_INT_KERNEL): $(KERNEL_OUT) $(KERNEL_HEADERS_INSTALL)
|
|||
$(clean-module-folder)
|
||||
|
||||
$(KERNEL_HEADERS_INSTALL): $(KERNEL_OUT)
|
||||
$(hide) rm -f ../$(KERNEL_CONFIG)
|
||||
$(MAKE) -C kernel O=../$(KERNEL_OUT) ARCH=$(KERNEL_HEADER_ARCH) CROSS_COMPILE=$(KERNEL_CROSS_COMPILE) $(KERNEL_HEADER_DEFCONFIG)
|
||||
$(MAKE) -C kernel O=../$(KERNEL_OUT) ARCH=$(KERNEL_HEADER_ARCH) CROSS_COMPILE=$(KERNEL_CROSS_COMPILE) headers_install
|
||||
$(hide) rm -f ../$(KERNEL_CONFIG)
|
||||
$(MAKE) -C kernel O=../$(KERNEL_OUT) ARCH=$(KERNEL_ARCH) CROSS_COMPILE=$(KERNEL_CROSS_COMPILE) $(KERNEL_DEFCONFIG)
|
||||
$(hide) if [ ! -z "$(KERNEL_HEADER_DEFCONFIG)" ]; then \
|
||||
$(hide) rm -f ../$(KERNEL_CONFIG); \
|
||||
$(MAKE) -C kernel O=../$(KERNEL_OUT) ARCH=$(KERNEL_HEADER_ARCH) CROSS_COMPILE=$(KERNEL_CROSS_COMPILE) $(KERNEL_HEADER_DEFCONFIG); \
|
||||
$(MAKE) -C kernel O=../$(KERNEL_OUT) ARCH=$(KERNEL_HEADER_ARCH) CROSS_COMPILE=$(KERNEL_CROSS_COMPILE) headers_install; fi
|
||||
$(hide) if [ "$(KERNEL_HEADER_DEFCONFIG)" != "$(KERNEL_DEFCONFIG)" ]; then \
|
||||
echo "Used a different defconfig for header generation"; \
|
||||
$(hide) rm -f ../$(KERNEL_CONFIG); \
|
||||
$(MAKE) -C kernel O=../$(KERNEL_OUT) ARCH=$(KERNEL_ARCH) CROSS_COMPILE=$(KERNEL_CROSS_COMPILE) $(KERNEL_DEFCONFIG); fi
|
||||
$(hide) if [ ! -z "$(KERNEL_CONFIG_OVERRIDE)" ]; then \
|
||||
echo "Overriding kernel config with '$(KERNEL_CONFIG_OVERRIDE)'"; \
|
||||
echo $(KERNEL_CONFIG_OVERRIDE) >> $(KERNEL_OUT)/.config; \
|
||||
|
@ -119,3 +127,4 @@ kernelconfig: $(KERNEL_OUT) $(KERNEL_CONFIG)
|
|||
cp $(KERNEL_OUT)/defconfig kernel/arch/$(KERNEL_ARCH)/configs/$(KERNEL_DEFCONFIG)
|
||||
|
||||
endif
|
||||
endif
|
||||
|
|
Loading…
Reference in New Issue