blob: a9ca944e8e32e557c7be6224e8c308a06a105834 [file] [log] [blame]
Chandan Uddarajua9b07bb2009-11-21 12:22:02 -08001#Android makefile to build lk bootloader as a part of Android Build
2
Ajay Dudani7e5a6302011-11-24 12:23:49 -08003# Set flags if we need to include security libs
Shashank Mittalcd98d472011-08-02 14:29:24 -07004ifeq ($(TARGET_BOOTIMG_SIGNED),true)
5 SIGNED_KERNEL := SIGNED_KERNEL=1
6else
7 SIGNED_KERNEL := SIGNED_KERNEL=0
8endif
David Ng90556062010-12-20 18:36:33 -08009
Ajay Dudani7e5a6302011-11-24 12:23:49 -080010# NAND variant output
11TARGET_NAND_BOOTLOADER := $(PRODUCT_OUT)/appsboot.mbn
12NAND_BOOTLOADER_OUT := $(TARGET_OUT_INTERMEDIATES)/NAND_BOOTLOADER_OBJ
David Ng025c1d92009-12-09 23:46:00 -080013
Channagoud Kadabic52dc182011-12-14 00:08:48 +053014# Remove bootloader binary to trigger recompile when source changes
15appsbootldr_clean:
16 $(hide) rm -f $(TARGET_NAND_BOOTLOADER)
17
Ajay Dudani7e5a6302011-11-24 12:23:49 -080018$(NAND_BOOTLOADER_OUT):
19 mkdir -p $(NAND_BOOTLOADER_OUT)
David Ng025c1d92009-12-09 23:46:00 -080020
Ajay Dudani7e5a6302011-11-24 12:23:49 -080021# eMMC variant output
22TARGET_EMMC_BOOTLOADER := $(PRODUCT_OUT)/emmc_appsboot.mbn
23EMMC_BOOTLOADER_OUT := $(TARGET_OUT_INTERMEDIATES)/EMMC_BOOTLOADER_OBJ
David Ng025c1d92009-12-09 23:46:00 -080024
Channagoud Kadabic52dc182011-12-14 00:08:48 +053025emmc_appsbootldr_clean:
26 $(hide) rm -f $(TARGET_EMMC_BOOTLOADER)
27
Ajay Dudani7e5a6302011-11-24 12:23:49 -080028$(EMMC_BOOTLOADER_OUT):
29 mkdir -p $(EMMC_BOOTLOADER_OUT)
David Ng025c1d92009-12-09 23:46:00 -080030
Ajay Dudani7e5a6302011-11-24 12:23:49 -080031# Top level for NAND variant targets
Channagoud Kadabic52dc182011-12-14 00:08:48 +053032$(TARGET_NAND_BOOTLOADER): appsbootldr_clean | $(NAND_BOOTLOADER_OUT)
Shashank Mittal71df7a22012-06-21 00:42:22 -070033 $(MAKE) -C bootable/bootloader/lk BOOTLOADER_OUT=../../../$(NAND_BOOTLOADER_OUT) $(TARGET_PRODUCT) $(SIGNED_KERNEL)
David Ng025c1d92009-12-09 23:46:00 -080034
Ajay Dudani7e5a6302011-11-24 12:23:49 -080035# Top level for eMMC variant targets
Channagoud Kadabic52dc182011-12-14 00:08:48 +053036$(TARGET_EMMC_BOOTLOADER): emmc_appsbootldr_clean | $(EMMC_BOOTLOADER_OUT)
Shashank Mittal71df7a22012-06-21 00:42:22 -070037 $(MAKE) -C bootable/bootloader/lk BOOTLOADER_OUT=../../../$(EMMC_BOOTLOADER_OUT) $(TARGET_PRODUCT) EMMC_BOOT=1 $(SIGNED_KERNEL)
Chandan Uddarajua9b07bb2009-11-21 12:22:02 -080038
Ajay Dudani7e5a6302011-11-24 12:23:49 -080039# Keep build NAND & eMMC as default for targets still using TARGET_BOOTLOADER
40TARGET_BOOTLOADER := $(PRODUCT_OUT)/EMMCBOOT.MBN
41$(TARGET_BOOTLOADER): $(NAND_BOOTLOADER_OUT) $(EMMC_BOOTLOADER_OUT) | $(TARGET_NAND_BOOTLOADER) $(TARGET_EMMC_BOOTLOADER)
Ajay Dudani168f6cb2009-12-07 19:04:02 -080042
Ajay Dudani7e5a6302011-11-24 12:23:49 -080043#
44# Build nandwrite as a part of Android Build for NAND configurations
45#
Ajay Dudani168f6cb2009-12-07 19:04:02 -080046TARGET_NANDWRITE := $(PRODUCT_OUT)/obj/nandwrite/build-$(TARGET_PRODUCT)_nandwrite/lk
Ajay Dudani7e5a6302011-11-24 12:23:49 -080047NANDWRITE_OUT := $(TARGET_OUT_INTERMEDIATES)/nandwrite
Ajay Dudani168f6cb2009-12-07 19:04:02 -080048
David Ng17fdc972009-12-10 11:01:43 -080049nandwrite_clean:
50 $(hide) rm -f $(TARGET_NANDWRITE)
51 $(hide) rm -rf $(NANDWRITE_OUT)
Ajay Dudani168f6cb2009-12-07 19:04:02 -080052
David Ng17fdc972009-12-10 11:01:43 -080053$(NANDWRITE_OUT):
54 mkdir -p $(NANDWRITE_OUT)
55
Anshul Gupta0fd98fd2011-10-20 20:48:55 +053056$(TARGET_NANDWRITE): nandwrite_clean | $(NANDWRITE_OUT)
Ajay Dudani168f6cb2009-12-07 19:04:02 -080057 @echo $(TARGET_PRODUCT)_nandwrite
Shashank Mittal71df7a22012-06-21 00:42:22 -070058 $(MAKE) -C bootable/bootloader/lk BOOTLOADER_OUT=../../../$(NANDWRITE_OUT) $(TARGET_PRODUCT)_nandwrite BUILD_NANDWRITE=1