blob: fbe05279960e157c3450f665b258e0271eff2658 [file] [log] [blame]
Chandan Uddarajua9b07bb2009-11-21 12:22:02 -08001#Android makefile to build lk bootloader as a part of Android Build
2
Dominic Binks96c50a52009-12-23 15:54:25 -08003TARGET_BOOTLOADER := $(PRODUCT_OUT)/appsboot.mbn
Ajay Dudani168f6cb2009-12-07 19:04:02 -08004BOOTLOADER_OUT := $(TOP)/$(TARGET_OUT_INTERMEDIATES)/BOOTLOADER_OBJ
Chandan Uddarajua9b07bb2009-11-21 12:22:02 -08005
David Ng90556062010-12-20 18:36:33 -08006# Force GCC 4.4.0 crosstool chain for Android builds
7CROSS_TOOL := ../../../prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/bin/arm-eabi-
8
David Ngbe536c32009-12-07 19:16:42 -08009# Remove bootloader binary to trigger recompile when source changes
10appsbootldr_clean:
11 $(hide) rm -f $(TARGET_BOOTLOADER)
Ajay Dudani7d131cc2009-12-09 01:06:21 -080012 $(hide) rm -rf $(BOOTLOADER_OUT)
David Ngbe536c32009-12-07 19:16:42 -080013
Chandan Uddarajua9b07bb2009-11-21 12:22:02 -080014$(BOOTLOADER_OUT):
15 mkdir -p $(BOOTLOADER_OUT)
16
David Ng025c1d92009-12-09 23:46:00 -080017
David Ng90556062010-12-20 18:36:33 -080018TARGET_EMMC := 0
David Ng025c1d92009-12-09 23:46:00 -080019ifeq ($(TARGET_USERIMAGES_USE_EXT2),true)
David Ng90556062010-12-20 18:36:33 -080020 TARGET_EMMC := 1
21endif
22ifeq ($(TARGET_USERIMAGES_USE_EXT3),true)
23 TARGET_EMMC := 1
24endif
25ifeq ($(TARGET_USERIMAGES_USE_EXT4),true)
26 TARGET_EMMC := 1
27endif
28
29
30ifeq ($(TARGET_EMMC),1)
Ajay Dudaniafc2cf52010-05-25 20:35:09 -070031TARGET_BOOTLOADER_EMMC := $(PRODUCT_OUT)/EMMCBOOT.MBN
David Ng025c1d92009-12-09 23:46:00 -080032BOOTLOADER_EMMC_OUT := $(TOP)/$(TARGET_OUT_INTERMEDIATES)/BOOTLOADER_EMMC_OBJ
33
34emmc_appsbootldr_clean:
35 $(hide) rm -f $(TARGET_BOOTLOADER_EMMC)
36 $(hide) rm -rf $(BOOTLOADER_EMMC_OUT)
37
38$(BOOTLOADER_EMMC_OUT):
39 mkdir -p $(BOOTLOADER_EMMC_OUT)
40
David Ng17fdc972009-12-10 11:01:43 -080041$(TARGET_BOOTLOADER): appsbootldr_clean emmc_appsbootldr_clean $(BOOTLOADER_OUT) $(BOOTLOADER_EMMC_OUT)
David Ng90556062010-12-20 18:36:33 -080042 $(MAKE) -C bootable/bootloader/lk TOOLCHAIN_PREFIX=$(CROSS_TOOL) BOOTLOADER_OUT=../../../$(BOOTLOADER_OUT) $(TARGET_PRODUCT)
43 $(MAKE) -C bootable/bootloader/lk TOOLCHAIN_PREFIX=$(CROSS_TOOL) BOOTLOADER_OUT=../../../$(BOOTLOADER_EMMC_OUT) $(TARGET_PRODUCT) EMMC_BOOT=1
David Ng025c1d92009-12-09 23:46:00 -080044
45else
46
David Ng17fdc972009-12-10 11:01:43 -080047$(TARGET_BOOTLOADER): appsbootldr_clean $(BOOTLOADER_OUT)
David Ng90556062010-12-20 18:36:33 -080048 $(MAKE) -C bootable/bootloader/lk TOOLCHAIN_PREFIX=$(CROSS_TOOL) BOOTLOADER_OUT=../../../$(BOOTLOADER_OUT) $(TARGET_PRODUCT)
Chandan Uddarajua9b07bb2009-11-21 12:22:02 -080049
David Ng025c1d92009-12-09 23:46:00 -080050endif
Ajay Dudani168f6cb2009-12-07 19:04:02 -080051
52#build nandwrite as a part of Android Build
53TARGET_NANDWRITE := $(PRODUCT_OUT)/obj/nandwrite/build-$(TARGET_PRODUCT)_nandwrite/lk
54NANDWRITE_OUT := $(TOP)/$(TARGET_OUT_INTERMEDIATES)/nandwrite
55
David Ng17fdc972009-12-10 11:01:43 -080056nandwrite_clean:
57 $(hide) rm -f $(TARGET_NANDWRITE)
58 $(hide) rm -rf $(NANDWRITE_OUT)
Ajay Dudani168f6cb2009-12-07 19:04:02 -080059
David Ng17fdc972009-12-10 11:01:43 -080060$(NANDWRITE_OUT):
61 mkdir -p $(NANDWRITE_OUT)
62
63$(TARGET_NANDWRITE): nandwrite_clean $(NANDWRITE_OUT)
Ajay Dudani168f6cb2009-12-07 19:04:02 -080064 @echo $(TARGET_PRODUCT)_nandwrite
David Ng90556062010-12-20 18:36:33 -080065 $(MAKE) -C bootable/bootloader/lk TOOLCHAIN_PREFIX=$(CROSS_TOOL) BOOTLOADER_OUT=../../../$(NANDWRITE_OUT) $(TARGET_PRODUCT)_nandwrite BUILD_NANDWRITE=1
Ajay Dudani168f6cb2009-12-07 19:04:02 -080066