blob: 1e80106b8efc16b6296a0067f996848e9adbd3de [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
Satya Durga Srinivasu Prabhalad92dc602011-07-21 16:39:52 +05306ifeq ($(call is-android-codename,HONEYCOMB),true)
Ajay Dudani91b04272011-03-09 09:49:29 -08007CROSS_TOOL := ../../../prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
Ajay Dudanid1a095a2011-11-14 22:01:16 -08008else ifeq ($(call is-android-codename,ICECREAM_SANDWICH),true)
9CROSS_TOOL := ../../../prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
Ajay Dudani91b04272011-03-09 09:49:29 -080010else
David Ng90556062010-12-20 18:36:33 -080011CROSS_TOOL := ../../../prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/bin/arm-eabi-
Ajay Dudani91b04272011-03-09 09:49:29 -080012endif
David Ng90556062010-12-20 18:36:33 -080013
David Ngbe536c32009-12-07 19:16:42 -080014# Remove bootloader binary to trigger recompile when source changes
15appsbootldr_clean:
16 $(hide) rm -f $(TARGET_BOOTLOADER)
Ajay Dudani7d131cc2009-12-09 01:06:21 -080017 $(hide) rm -rf $(BOOTLOADER_OUT)
David Ngbe536c32009-12-07 19:16:42 -080018
Chandan Uddarajua9b07bb2009-11-21 12:22:02 -080019$(BOOTLOADER_OUT):
20 mkdir -p $(BOOTLOADER_OUT)
21
David Ng025c1d92009-12-09 23:46:00 -080022
David Ng90556062010-12-20 18:36:33 -080023TARGET_EMMC := 0
David Ng025c1d92009-12-09 23:46:00 -080024ifeq ($(TARGET_USERIMAGES_USE_EXT2),true)
David Ng90556062010-12-20 18:36:33 -080025 TARGET_EMMC := 1
26endif
27ifeq ($(TARGET_USERIMAGES_USE_EXT3),true)
28 TARGET_EMMC := 1
29endif
30ifeq ($(TARGET_USERIMAGES_USE_EXT4),true)
31 TARGET_EMMC := 1
32endif
33
Shashank Mittalcd98d472011-08-02 14:29:24 -070034ifeq ($(TARGET_BOOTIMG_SIGNED),true)
35 SIGNED_KERNEL := SIGNED_KERNEL=1
36else
37 SIGNED_KERNEL := SIGNED_KERNEL=0
38endif
David Ng90556062010-12-20 18:36:33 -080039
40ifeq ($(TARGET_EMMC),1)
Ajay Dudaniafc2cf52010-05-25 20:35:09 -070041TARGET_BOOTLOADER_EMMC := $(PRODUCT_OUT)/EMMCBOOT.MBN
David Ng025c1d92009-12-09 23:46:00 -080042BOOTLOADER_EMMC_OUT := $(TOP)/$(TARGET_OUT_INTERMEDIATES)/BOOTLOADER_EMMC_OBJ
43
44emmc_appsbootldr_clean:
45 $(hide) rm -f $(TARGET_BOOTLOADER_EMMC)
46 $(hide) rm -rf $(BOOTLOADER_EMMC_OUT)
47
48$(BOOTLOADER_EMMC_OUT):
49 mkdir -p $(BOOTLOADER_EMMC_OUT)
50
Anshul Gupta0fd98fd2011-10-20 20:48:55 +053051$(TARGET_BOOTLOADER): appsbootldr_clean emmc_appsbootldr_clean | $(BOOTLOADER_OUT) $(BOOTLOADER_EMMC_OUT)
Shashank Mittalcd98d472011-08-02 14:29:24 -070052 $(MAKE) -C bootable/bootloader/lk TOOLCHAIN_PREFIX=$(CROSS_TOOL) BOOTLOADER_OUT=../../../$(BOOTLOADER_OUT) $(TARGET_PRODUCT) $(SIGNED_KERNEL)
53 $(MAKE) -C bootable/bootloader/lk TOOLCHAIN_PREFIX=$(CROSS_TOOL) BOOTLOADER_OUT=../../../$(BOOTLOADER_EMMC_OUT) $(TARGET_PRODUCT) EMMC_BOOT=1 $(SIGNED_KERNEL)
David Ng025c1d92009-12-09 23:46:00 -080054
55else
56
Anshul Gupta0fd98fd2011-10-20 20:48:55 +053057$(TARGET_BOOTLOADER): appsbootldr_clean | $(BOOTLOADER_OUT)
Shashank Mittalcd98d472011-08-02 14:29:24 -070058 $(MAKE) -C bootable/bootloader/lk TOOLCHAIN_PREFIX=$(CROSS_TOOL) BOOTLOADER_OUT=../../../$(BOOTLOADER_OUT) $(TARGET_PRODUCT) $(SIGNED_KERNEL)
Chandan Uddarajua9b07bb2009-11-21 12:22:02 -080059
David Ng025c1d92009-12-09 23:46:00 -080060endif
Ajay Dudani168f6cb2009-12-07 19:04:02 -080061
62#build nandwrite as a part of Android Build
63TARGET_NANDWRITE := $(PRODUCT_OUT)/obj/nandwrite/build-$(TARGET_PRODUCT)_nandwrite/lk
64NANDWRITE_OUT := $(TOP)/$(TARGET_OUT_INTERMEDIATES)/nandwrite
65
David Ng17fdc972009-12-10 11:01:43 -080066nandwrite_clean:
67 $(hide) rm -f $(TARGET_NANDWRITE)
68 $(hide) rm -rf $(NANDWRITE_OUT)
Ajay Dudani168f6cb2009-12-07 19:04:02 -080069
David Ng17fdc972009-12-10 11:01:43 -080070$(NANDWRITE_OUT):
71 mkdir -p $(NANDWRITE_OUT)
72
Anshul Gupta0fd98fd2011-10-20 20:48:55 +053073$(TARGET_NANDWRITE): nandwrite_clean | $(NANDWRITE_OUT)
Ajay Dudani168f6cb2009-12-07 19:04:02 -080074 @echo $(TARGET_PRODUCT)_nandwrite
David Ng90556062010-12-20 18:36:33 -080075 $(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 -080076