diff options
author | Hridya Valsaraju <hridya@google.com> | 2019-05-20 11:10:24 -0700 |
---|---|---|
committer | Hridya Valsaraju <hridya@google.com> | 2019-05-22 15:55:47 -0700 |
commit | 5b8f78fbe88bc5a97a64cfc513f67501ebde3e80 (patch) | |
tree | df17db99a87ffbedafe54ccb20f65a2bfde9f5e1 | |
parent | f52dbb81fe50cc0821045bb3160fa4b80e885b69 (diff) | |
download | build-5b8f78fbe88bc5a97a64cfc513f67501ebde3e80.tar.gz |
Allow for the DTB image to be built by the Android build system.
The current solution expects BOARD_PREBUILT_DTBIMAGE_DIR to
contain prebuilt DTB files that are concatenated by the build system
to create $OUT/dtb.img. In order to accommodate devices that build
the dtb image locally, when BOARD_PREBUILT_DTBIMAGE_DIR is undefined,
make boot.img creation depend only on $OUT/dtb.img.
Bug: 133161451
Test: Build with BOARD_PREBUILT_DTBIMAGE_DIR undefined and verify
using unpack_bootimg.py that $OUT/dtb.img was included in boot.img.
Change-Id: Iae2c634ccdc1d83589b26d382882f75fb8565a31
Merged-In: Iae2c634ccdc1d83589b26d382882f75fb8565a31
-rw-r--r-- | core/Makefile | 8 | ||||
-rw-r--r-- | core/board_config.mk | 6 |
2 files changed, 11 insertions, 3 deletions
diff --git a/core/Makefile b/core/Makefile index 8423a50786..3d5feba14d 100644 --- a/core/Makefile +++ b/core/Makefile @@ -862,12 +862,13 @@ $(call dist-for-goals, sdk win_sdk sdk_addon, $(INSTALLED_FILES_FILE_ROOT)) #------------------------------------------------------------------ # dtb - -ifdef BOARD_PREBUILT_DTBIMAGE_DIR +ifdef BOARD_INCLUDE_DTB_IN_BOOTIMG INSTALLED_DTBIMAGE_TARGET := $(PRODUCT_OUT)/dtb.img +ifdef BOARD_PREBUILT_DTBIMAGE_DIR $(INSTALLED_DTBIMAGE_TARGET) : $(sort $(wildcard $(BOARD_PREBUILT_DTBIMAGE_DIR)/*.dtb)) cat $^ > $@ endif +endif # ----------------------------------------------------------------- # the ramdisk @@ -3791,6 +3792,7 @@ $(BUILT_TARGET_FILES_PACKAGE): \ $(INTERNAL_SYSTEMOTHERIMAGE_FILES) \ $(INSTALLED_ANDROID_INFO_TXT_TARGET) \ $(INSTALLED_KERNEL_TARGET) \ + $(INSTALLED_DTBIMAGE_TARGET) \ $(INSTALLED_2NDBOOTLOADER_TARGET) \ $(BOARD_PREBUILT_DTBOIMAGE) \ $(BOARD_PREBUILT_RECOVERY_DTBOIMAGE) \ @@ -3843,7 +3845,7 @@ endif ifdef BOARD_INCLUDE_RECOVERY_ACPIO $(hide) cp $(BOARD_RECOVERY_ACPIO) $(zip_root)/$(PRIVATE_RECOVERY_OUT)/recovery_acpio endif -ifdef BOARD_INCLUDE_DTB_IN_BOOTIMG +ifdef INSTALLED_DTBIMAGE_TARGET $(hide) cp $(INSTALLED_DTBIMAGE_TARGET) $(zip_root)/$(PRIVATE_RECOVERY_OUT)/dtb endif ifdef INTERNAL_KERNEL_CMDLINE diff --git a/core/board_config.mk b/core/board_config.mk index aa626e374c..d0f0ccfc0d 100644 --- a/core/board_config.mk +++ b/core/board_config.mk @@ -482,6 +482,12 @@ ifeq ($(AB_OTA_UPDATER),true) endif endif +ifdef BOARD_PREBUILT_DTBIMAGE_DIR + ifneq ($(BOARD_INCLUDE_DTB_IN_BOOTIMG),true) + $(error BOARD_PREBUILT_DTBIMAGE_DIR with 'BOARD_INCLUDE_DTB_IN_BOOTIMG != true' is not supported) + endif +endif + # Check BOARD_VNDK_VERSION define check_vndk_version $(eval vndk_path := prebuilts/vndk/v$(1)) \ |