From 0c5f1e575d52f1036415a00d545f9b80d9d0bc40 Mon Sep 17 00:00:00 2001 From: Howard Chen Date: Fri, 23 Jun 2017 12:40:23 +0800 Subject: [PATCH] Support kernel modules in the odm image This patch reuses the build-image-kernel-modules macro to build the odm/lib/modules directory according to the BOARD_ODM_KERNEL_MODULES which contains list of kernel module files. Bug: 36012197 Test: android master build on pixel Change-Id: I2c004132a89e7f230690b4d26c98c3d5b2769f11 --- core/tasks/tools/build_custom_image.mk | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/core/tasks/tools/build_custom_image.mk b/core/tasks/tools/build_custom_image.mk index 702d8b316d..ea316210c6 100644 --- a/core/tasks/tools/build_custom_image.mk +++ b/core/tasks/tools/build_custom_image.mk @@ -93,7 +93,12 @@ ifeq (true,$(filter true, $(CUSTOM_IMAGE_AVB_HASH_ENABLE) $(CUSTOM_IMAGE_AVB_HAS else ifneq (,$(filter true, $(CUSTOM_IMAGE_AVB_HASH_ENABLE) $(CUSTOM_IMAGE_AVB_HASHTREE_ENABLE))) $(error Cannot set both CUSTOM_IMAGE_AVB_HASH_ENABLE and CUSTOM_IMAGE_AVB_HASHTREE_ENABLE to true) endif -$(my_built_custom_image): $(INTERNAL_USERIMAGES_DEPS) $(my_built_modules) $(my_image_copy_files) \ +my_custom_image_modules_var:=BOARD_$(strip $(call to-upper,$(my_custom_image_name)))_KERNEL_MODULES +my_custom_image_modules:=$($(my_custom_image_modules_var)) +my_custom_image_modules_dep:=$(if $(my_custom_image_modules),$(my_custom_image_modules) $(DEPMOD),) +$(my_built_custom_image): PRIVATE_KERNEL_MODULES := $(my_custom_image_modules) +$(my_built_custom_image): PRIVATE_IMAGE_NAME := $(my_custom_image_name) +$(my_built_custom_image): $(INTERNAL_USERIMAGES_DEPS) $(my_built_modules) $(my_image_copy_files) $(my_custom_image_modules_dep) \ $(CUSTOM_IMAGE_DICT_FILE) @echo "Build image $@" $(hide) rm -rf $(PRIVATE_INTERMEDIATES) && mkdir -p $(PRIVATE_INTERMEDIATES) @@ -103,6 +108,8 @@ $(my_built_custom_image): $(INTERNAL_USERIMAGES_DEPS) $(my_built_modules) $(my_i $(eval pair := $(subst :,$(space),$(p)))\ mkdir -p $(dir $(word 2,$(pair)));\ cp -Rf $(word 1,$(pair)) $(word 2,$(pair));) + $(if $(PRIVATE_KERNEL_MODULES), \ + $(call build-image-kernel-modules,$(PRIVATE_KERNEL_MODULES),$(PRIVATE_STAGING_DIR),$(PRIVATE_IMAGE_NAME)/,$(call intermediates-dir-for,PACKAGING,depmod_$(PRIVATE_IMAGE_NAME)))) $(if $($(PRIVATE_PICKUP_FILES)),$(hide) cp -Rf $(PRIVATE_PICKUP_FILES) $(PRIVATE_STAGING_DIR)) # Generate the dict. $(hide) echo "# For all accepted properties, see BuildImage() in tools/releasetools/build_image.py" > $(PRIVATE_INTERMEDIATES)/image_info.txt