Skip to content
Snippets Groups Projects
Commit fb62231b authored by lijuang's avatar lijuang Committed by Rahul Shahare
Browse files

AndroidBoot.mk:: Fix the compilation error

This will help to resolve compilation issue.
For "writing to readonly directory" & "obsolete" error
 - Added timestamp.
 - Replaced the obsolete flags.
 - Modified LK_PATH handling.

Change-Id: I9ec789f9c646e06fd86aa9622fb55710d15276a0
parent 9d6ef1c9
No related branches found
No related tags found
No related merge requests found
#Android makefile to build lk bootloader as a part of Android Build
LK_PATH := bootable/bootloader/lk/
CROOT_DIR := ../../..
ifneq ($(filter P% p% Q% q%,$(TARGET_PLATFORM_VERSION)),)
ifeq ($(PRODUCT_IOT),true)
LK_PATH := hardware/bsp/bootloader/qcom/lk
CROOT_DIR := ../../../../..
else
LK_PATH := bootable/bootloader/lk/
CROOT_DIR := ../../..
endif
endif
ifeq ($(BOOTLOADER_GCC_VERSION),)
......@@ -33,7 +35,7 @@ ifeq ($(BOOTLOADER_PLATFORM),)
BOOTLOADER_PLATFORM := $(TARGET_BOARD_PLATFORM)
endif
ifeq ($(PRODUCTS.$(INTERNAL_PRODUCT).PRODUCT_SUPPORTS_VERITY),true)
ifeq ($(PRODUCT_SUPPORTS_VERITY),true)
VERIFIED_BOOT := VERIFIED_BOOT=1
else
VERIFIED_BOOT := VERIFIED_BOOT=0
......@@ -131,12 +133,14 @@ ABOOT_OUT := $(TARGET_OUT_INTERMEDIATES)/ABOOT_OBJ
$(ABOOT_OUT):
$(hide) mkdir -p $(ABOOT_OUT)
ABOOT_CLEAN:
ABOOT_CLEAN := $(ABOOT_OUT)/aboot_clean.timestamp
$(ABOOT_CLEAN):
$(hide) rm -f $(TARGET_ABOOT_ELF)
@touch $(ABOOT_CLEAN)
# ELF binary for ABOOT
TARGET_ABOOT_ELF := $(PRODUCT_OUT)/aboot.elf
$(TARGET_ABOOT_ELF): ABOOT_CLEAN | $(ABOOT_OUT)
$(TARGET_ABOOT_ELF): $(ABOOT_CLEAN) | $(ABOOT_OUT)
$(MAKE) -C $(LK_PATH) TOOLCHAIN_PREFIX=$(CROSS_COMPILE) BOOTLOADER_OUT=$(CROOT_DIR)/$(ABOOT_OUT) $(BOOTLOADER_PLATFORM) $(EMMC_BOOT) $(SIGNED_KERNEL) $(VERIFIED_BOOT) $(VERIFIED_BOOT_2) $(VB1_KEY_USED) $(TARGET_DTBO_NOT_SUPPORTED) $(ENABLE_DISPLAY) $(ENABLE_KASLRSEED) $(ENABLE_BOOTDEVICE_MOUNT) $(DEVICE_STATUS) $(BUILD_VARIANT) $(BOARD_NAME) $(ENABLE_VB_ATTEST) $(OSVERSION_IN_BOOTIMAGE) $(QSEECOM_SECAPP_REGION_2MB) $(TARGET_USE_SYSTEM_AS_ROOT_IMAGE) $(DYNAMIC_PARTITION_SUPPORT)
# NAND variant output
......@@ -144,8 +148,10 @@ TARGET_NAND_BOOTLOADER := $(PRODUCT_OUT)/appsboot.mbn
NAND_BOOTLOADER_OUT := $(TARGET_OUT_INTERMEDIATES)/NAND_BOOTLOADER_OBJ
# Remove bootloader binary to trigger recompile when source changes
appsbootldr_clean:
appsbootldr_clean := $(ABOOT_OUT)/appsbootldr_clean.timestamp
$(appsbootldr_clean) :
$(hide) rm -f $(TARGET_NAND_BOOTLOADER)
@touch $(appsbootldr_clean)
$(NAND_BOOTLOADER_OUT):
mkdir -p $(NAND_BOOTLOADER_OUT)
......@@ -154,19 +160,23 @@ $(NAND_BOOTLOADER_OUT):
TARGET_EMMC_BOOTLOADER := $(PRODUCT_OUT)/emmc_appsboot.mbn
EMMC_BOOTLOADER_OUT := $(TARGET_OUT_INTERMEDIATES)/EMMC_BOOTLOADER_OBJ
emmc_appsbootldr_clean:
emmc_appsbootldr_clean := $(ABOOT_OUT)/emmc_appsbootldr_clean.timestamp
$(emmc_appsbootldr_clean):
$(hide) rm -f $(TARGET_EMMC_BOOTLOADER)
@touch $(emmc_appsbootldr_clean)
$(EMMC_BOOTLOADER_OUT):
mkdir -p $(EMMC_BOOTLOADER_OUT)
# Top level for NAND variant targets
$(TARGET_NAND_BOOTLOADER): appsbootldr_clean | $(NAND_BOOTLOADER_OUT)
$(TARGET_NAND_BOOTLOADER): $(appsbootldr_clean) | $(NAND_BOOTLOADER_OUT)
$(MAKE) -C $(LK_PATH) TOOLCHAIN_PREFIX=$(CROSS_COMPILE) BOOTLOADER_OUT=$(CROOT_DIR)/$(NAND_BOOTLOADER_OUT) $(BOOTLOADER_PLATFORM) $(SIGNED_KERNEL) $(BOARD_NAME)
$(hide) rm -f $(appsbootldr_clean)
# Top level for eMMC variant targets
$(TARGET_EMMC_BOOTLOADER): emmc_appsbootldr_clean | $(EMMC_BOOTLOADER_OUT) $(INSTALLED_KEYSTOREIMAGE_TARGET)
$(TARGET_EMMC_BOOTLOADER): $(emmc_appsbootldr_clean) | $(EMMC_BOOTLOADER_OUT) $(INSTALLED_KEYSTOREIMAGE_TARGET)
$(MAKE) -C $(LK_PATH) TOOLCHAIN_PREFIX=$(CROSS_COMPILE) BOOTLOADER_OUT=$(CROOT_DIR)/$(EMMC_BOOTLOADER_OUT) $(BOOTLOADER_PLATFORM) EMMC_BOOT=1 $(SIGNED_KERNEL) $(VERIFIED_BOOT) $(VERIFIED_BOOT_2) $(VB1_KEY_USED) $(TARGET_DTBO_NOT_SUPPORTED) $(ENABLE_DISPLAY) $(ENABLE_KASLRSEED) $(ENABLE_BOOTDEVICE_MOUNT) $(DEVICE_STATUS) $(BUILD_VARIANT) $(BOARD_NAME) $(ENABLE_VB_ATTEST) $(OSVERSION_IN_BOOTIMAGE) $(ENABLE_BG_SUPPORT) $(QSEECOM_SECAPP_REGION_2MB) $(TARGET_USE_SYSTEM_AS_ROOT_IMAGE) $(DYNAMIC_PARTITION_SUPPORT)
$(hide) rm -f $(emmc_appsbootldr_clean)
# Keep build NAND & eMMC as default for targets still using TARGET_BOOTLOADER
TARGET_BOOTLOADER := $(PRODUCT_OUT)/EMMCBOOT.MBN
......@@ -175,16 +185,19 @@ $(TARGET_BOOTLOADER): $(NAND_BOOTLOADER_OUT) $(EMMC_BOOTLOADER_OUT) | $(TARGET_N
#
# Build nandwrite as a part of Android Build for NAND configurations
#
TARGET_NANDWRITE := $(PRODUCT_OUT)/obj/nandwrite/build-$(BOOTLOADER_PLATFORM)_nandwrite/lk
TARGET_NANDWRITE := $(PRODUCT_OUT)/obj/nandwrite/build-$(strip $(BOOTLOADER_PLATFORM))_nandwrite/lk
NANDWRITE_OUT := $(TARGET_OUT_INTERMEDIATES)/nandwrite
nandwrite_clean:
nandwrite_clean := $(ABOOT_OUT)/nandwrite_clean.timestamp
$(nandwrite_clean):
$(hide) rm -f $(TARGET_NANDWRITE)
$(hide) rm -rf $(NANDWRITE_OUT)
@touch $(nandwrite_clean)
$(NANDWRITE_OUT):
mkdir -p $(NANDWRITE_OUT)
$(TARGET_NANDWRITE): nandwrite_clean | $(NANDWRITE_OUT)
$(TARGET_NANDWRITE): $(nandwrite_clean) | $(NANDWRITE_OUT)
@echo $(BOOTLOADER_PLATFORM)_nandwrite
$(MAKE) -C $(LK_PATH) TOOLCHAIN_PREFIX=$(CROSS_COMPILE) BOOTLOADER_OUT=$(CROOT_DIR)/$(NANDWRITE_OUT) $(BOOTLOADER_PLATFORM)_nandwrite BUILD_NANDWRITE=1
$(hide) rm -f $(nandwrite_clean)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment