Chandan Uddaraju | a9b07bb | 2009-11-21 12:22:02 -0800 | [diff] [blame] | 1 | #Android makefile to build lk bootloader as a part of Android Build |
| 2 | |
Satya Durga Srinivasu Prabhala | d92dc60 | 2011-07-21 16:39:52 +0530 | [diff] [blame] | 3 | ifeq ($(call is-android-codename,HONEYCOMB),true) |
Ajay Dudani | 91b0427 | 2011-03-09 09:49:29 -0800 | [diff] [blame] | 4 | CROSS_TOOL := ../../../prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi- |
Ajay Dudani | d1a095a | 2011-11-14 22:01:16 -0800 | [diff] [blame] | 5 | else ifeq ($(call is-android-codename,ICECREAM_SANDWICH),true) |
| 6 | CROSS_TOOL := ../../../prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi- |
Ajay Dudani | 91b0427 | 2011-03-09 09:49:29 -0800 | [diff] [blame] | 7 | else |
David Ng | 9055606 | 2010-12-20 18:36:33 -0800 | [diff] [blame] | 8 | CROSS_TOOL := ../../../prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/bin/arm-eabi- |
Ajay Dudani | 91b0427 | 2011-03-09 09:49:29 -0800 | [diff] [blame] | 9 | endif |
David Ng | 9055606 | 2010-12-20 18:36:33 -0800 | [diff] [blame] | 10 | |
Ajay Dudani | 7e5a630 | 2011-11-24 12:23:49 -0800 | [diff] [blame] | 11 | # Set flags if we need to include security libs |
Shashank Mittal | cd98d47 | 2011-08-02 14:29:24 -0700 | [diff] [blame] | 12 | ifeq ($(TARGET_BOOTIMG_SIGNED),true) |
| 13 | SIGNED_KERNEL := SIGNED_KERNEL=1 |
| 14 | else |
| 15 | SIGNED_KERNEL := SIGNED_KERNEL=0 |
| 16 | endif |
David Ng | 9055606 | 2010-12-20 18:36:33 -0800 | [diff] [blame] | 17 | |
Ajay Dudani | 7e5a630 | 2011-11-24 12:23:49 -0800 | [diff] [blame] | 18 | # NAND variant output |
| 19 | TARGET_NAND_BOOTLOADER := $(PRODUCT_OUT)/appsboot.mbn |
| 20 | NAND_BOOTLOADER_OUT := $(TARGET_OUT_INTERMEDIATES)/NAND_BOOTLOADER_OBJ |
David Ng | 025c1d9 | 2009-12-09 23:46:00 -0800 | [diff] [blame] | 21 | |
Channagoud Kadabi | c52dc18 | 2011-12-14 00:08:48 +0530 | [diff] [blame] | 22 | # Remove bootloader binary to trigger recompile when source changes |
| 23 | appsbootldr_clean: |
| 24 | $(hide) rm -f $(TARGET_NAND_BOOTLOADER) |
| 25 | |
Ajay Dudani | 7e5a630 | 2011-11-24 12:23:49 -0800 | [diff] [blame] | 26 | $(NAND_BOOTLOADER_OUT): |
| 27 | mkdir -p $(NAND_BOOTLOADER_OUT) |
David Ng | 025c1d9 | 2009-12-09 23:46:00 -0800 | [diff] [blame] | 28 | |
Ajay Dudani | 7e5a630 | 2011-11-24 12:23:49 -0800 | [diff] [blame] | 29 | # eMMC variant output |
| 30 | TARGET_EMMC_BOOTLOADER := $(PRODUCT_OUT)/emmc_appsboot.mbn |
| 31 | EMMC_BOOTLOADER_OUT := $(TARGET_OUT_INTERMEDIATES)/EMMC_BOOTLOADER_OBJ |
David Ng | 025c1d9 | 2009-12-09 23:46:00 -0800 | [diff] [blame] | 32 | |
Channagoud Kadabi | c52dc18 | 2011-12-14 00:08:48 +0530 | [diff] [blame] | 33 | emmc_appsbootldr_clean: |
| 34 | $(hide) rm -f $(TARGET_EMMC_BOOTLOADER) |
| 35 | |
Ajay Dudani | 7e5a630 | 2011-11-24 12:23:49 -0800 | [diff] [blame] | 36 | $(EMMC_BOOTLOADER_OUT): |
| 37 | mkdir -p $(EMMC_BOOTLOADER_OUT) |
David Ng | 025c1d9 | 2009-12-09 23:46:00 -0800 | [diff] [blame] | 38 | |
Ajay Dudani | 7e5a630 | 2011-11-24 12:23:49 -0800 | [diff] [blame] | 39 | # Top level for NAND variant targets |
Channagoud Kadabi | c52dc18 | 2011-12-14 00:08:48 +0530 | [diff] [blame] | 40 | $(TARGET_NAND_BOOTLOADER): appsbootldr_clean | $(NAND_BOOTLOADER_OUT) |
Ajay Dudani | 7e5a630 | 2011-11-24 12:23:49 -0800 | [diff] [blame] | 41 | $(MAKE) -C bootable/bootloader/lk TOOLCHAIN_PREFIX=$(CROSS_TOOL) BOOTLOADER_OUT=../../../$(NAND_BOOTLOADER_OUT) $(TARGET_PRODUCT) $(SIGNED_KERNEL) |
David Ng | 025c1d9 | 2009-12-09 23:46:00 -0800 | [diff] [blame] | 42 | |
Ajay Dudani | 7e5a630 | 2011-11-24 12:23:49 -0800 | [diff] [blame] | 43 | # Top level for eMMC variant targets |
Channagoud Kadabi | c52dc18 | 2011-12-14 00:08:48 +0530 | [diff] [blame] | 44 | $(TARGET_EMMC_BOOTLOADER): emmc_appsbootldr_clean | $(EMMC_BOOTLOADER_OUT) |
Ajay Dudani | 7e5a630 | 2011-11-24 12:23:49 -0800 | [diff] [blame] | 45 | $(MAKE) -C bootable/bootloader/lk TOOLCHAIN_PREFIX=$(CROSS_TOOL) BOOTLOADER_OUT=../../../$(EMMC_BOOTLOADER_OUT) $(TARGET_PRODUCT) EMMC_BOOT=1 $(SIGNED_KERNEL) |
Chandan Uddaraju | a9b07bb | 2009-11-21 12:22:02 -0800 | [diff] [blame] | 46 | |
Ajay Dudani | 7e5a630 | 2011-11-24 12:23:49 -0800 | [diff] [blame] | 47 | # Keep build NAND & eMMC as default for targets still using TARGET_BOOTLOADER |
| 48 | TARGET_BOOTLOADER := $(PRODUCT_OUT)/EMMCBOOT.MBN |
| 49 | $(TARGET_BOOTLOADER): $(NAND_BOOTLOADER_OUT) $(EMMC_BOOTLOADER_OUT) | $(TARGET_NAND_BOOTLOADER) $(TARGET_EMMC_BOOTLOADER) |
Ajay Dudani | 168f6cb | 2009-12-07 19:04:02 -0800 | [diff] [blame] | 50 | |
Ajay Dudani | 7e5a630 | 2011-11-24 12:23:49 -0800 | [diff] [blame] | 51 | # |
| 52 | # Build nandwrite as a part of Android Build for NAND configurations |
| 53 | # |
Ajay Dudani | 168f6cb | 2009-12-07 19:04:02 -0800 | [diff] [blame] | 54 | TARGET_NANDWRITE := $(PRODUCT_OUT)/obj/nandwrite/build-$(TARGET_PRODUCT)_nandwrite/lk |
Ajay Dudani | 7e5a630 | 2011-11-24 12:23:49 -0800 | [diff] [blame] | 55 | NANDWRITE_OUT := $(TARGET_OUT_INTERMEDIATES)/nandwrite |
Ajay Dudani | 168f6cb | 2009-12-07 19:04:02 -0800 | [diff] [blame] | 56 | |
David Ng | 17fdc97 | 2009-12-10 11:01:43 -0800 | [diff] [blame] | 57 | nandwrite_clean: |
| 58 | $(hide) rm -f $(TARGET_NANDWRITE) |
| 59 | $(hide) rm -rf $(NANDWRITE_OUT) |
Ajay Dudani | 168f6cb | 2009-12-07 19:04:02 -0800 | [diff] [blame] | 60 | |
David Ng | 17fdc97 | 2009-12-10 11:01:43 -0800 | [diff] [blame] | 61 | $(NANDWRITE_OUT): |
| 62 | mkdir -p $(NANDWRITE_OUT) |
| 63 | |
Anshul Gupta | 0fd98fd | 2011-10-20 20:48:55 +0530 | [diff] [blame] | 64 | $(TARGET_NANDWRITE): nandwrite_clean | $(NANDWRITE_OUT) |
Ajay Dudani | 168f6cb | 2009-12-07 19:04:02 -0800 | [diff] [blame] | 65 | @echo $(TARGET_PRODUCT)_nandwrite |
David Ng | 9055606 | 2010-12-20 18:36:33 -0800 | [diff] [blame] | 66 | $(MAKE) -C bootable/bootloader/lk TOOLCHAIN_PREFIX=$(CROSS_TOOL) BOOTLOADER_OUT=../../../$(NANDWRITE_OUT) $(TARGET_PRODUCT)_nandwrite BUILD_NANDWRITE=1 |