11bd4fe43Sopenharmony_ciinclude $(MAIN_TOPDIR)/build/make_scripts/config.mk 21bd4fe43Sopenharmony_ci-include $(MAIN_TOPDIR)/$(MODULE_DIR)/srcs.mk 31bd4fe43Sopenharmony_ciinclude $(MAIN_TOPDIR)/$(MODULE_DIR)/module_config.mk 41bd4fe43Sopenharmony_ci 51bd4fe43Sopenharmony_cioverride CCFLAGS = $(BOOT_CCFLAGS) $(BOOT_DEFINE) $(BOOT_INC) 61bd4fe43Sopenharmony_cioverride ASFLAGS = $(BOOT_ASFLAGS) $(BOOT_DEFINE) $(BOOT_INC) 71bd4fe43Sopenharmony_ci 81bd4fe43Sopenharmony_ciLIBDIR = $(MAIN_TOPDIR)/$(LIB_PATH)/$(MODULE_DIR) 91bd4fe43Sopenharmony_ciOBJDIR = $(MAIN_TOPDIR)/$(OBJ_PATH)/loaderboot 101bd4fe43Sopenharmony_ciID_CFG_FILE = $(MAIN_TOPDIR)/$(MODULE_DIR)/file_id.cfg 111bd4fe43Sopenharmony_ci 121bd4fe43Sopenharmony_ciLIB_NAME = lib$(LIB).a 131bd4fe43Sopenharmony_ciSRCS = $($(LIB)_srcs) 141bd4fe43Sopenharmony_ciLIBOUT = $(LIBDIR)/$(MODULE_DIR)/$(LIB_NAME) 151bd4fe43Sopenharmony_ci 161bd4fe43Sopenharmony_ciifdef SRC_FILES 171bd4fe43Sopenharmony_ciOBJ_SRCS = $(filter %.c, $(SRC_FILES)) 181bd4fe43Sopenharmony_ciASM_SRCS = $(filter %.S, $(SRC_FILES)) 191bd4fe43Sopenharmony_cielse 201bd4fe43Sopenharmony_ciOBJ_SRCS = $(foreach dir, $(SRCS), $(wildcard $(dir)/*.c)) 211bd4fe43Sopenharmony_ciASM_SRCS = $(foreach dir, $(SRCS), $(wildcard $(dir)/*.S )) 221bd4fe43Sopenharmony_ciOBJ_COMMON_SRCS = $(foreach dir, $($(LIB)_common_srcs), $(wildcard $(dir)/*.c)) 231bd4fe43Sopenharmony_ciASM_COMMON_SRCS = $(foreach dir, $($(LIB)_common_srcs), $(wildcard $(dir)/*.S )) 241bd4fe43Sopenharmony_ciendif 251bd4fe43Sopenharmony_ciOBJ_SRCS += $(MAIN_TOPDIR)/third_party/u-boot-v2019.07/u-boot-v2019.07/lib/crc32.c \ 261bd4fe43Sopenharmony_ci $(MAIN_TOPDIR)/third_party/u-boot-v2019.07/u-boot-v2019.07/lib/lzma/LzmaDec.c \ 271bd4fe43Sopenharmony_ci $(MAIN_TOPDIR)/third_party/u-boot-v2019.07/u-boot-v2019.07/lib/lzma/LzmaTools.c 281bd4fe43Sopenharmony_ciOBJS = $(patsubst %.c, $(OBJDIR)/%.o, $(OBJ_SRCS)) 291bd4fe43Sopenharmony_ciASM_OBJS = $(patsubst %.S, $(OBJDIR)/%.o, $(ASM_SRCS)) 301bd4fe43Sopenharmony_ciCOMMON_OBJS = $(patsubst ../%.c, $(OBJDIR)/%.o, $(OBJ_COMMON_SRCS)) 311bd4fe43Sopenharmony_ciCOMMON_ASM_OBJS = $(patsubst ../%.S, $(OBJDIR)/%.o, $(ASM_COMMON_SRCS)) 321bd4fe43Sopenharmony_ci 331bd4fe43Sopenharmony_ciSIGN_TOOL = $(MAIN_TOPDIR)/tools/sign_tool/sign_tool 341bd4fe43Sopenharmony_ciENCRYPT_KEY_PATH = $(MAIN_TOPDIR)/tools/sign_tool/aes_key.txt 351bd4fe43Sopenharmony_ciifeq ($(CONFIG_TARGET_SIG_SHA256), y) 361bd4fe43Sopenharmony_ci LINK_FILE = $(MAIN_TOPDIR)/build/link/loaderboot_sha256.lds 371bd4fe43Sopenharmony_cielse ifeq ($(CONFIG_TARGET_SIG_ECC), y) 381bd4fe43Sopenharmony_ci LINK_FILE = $(MAIN_TOPDIR)/build/link/loaderboot_ecc.lds 391bd4fe43Sopenharmony_ci ROOT_KEY_PATH = $(MAIN_TOPDIR)/tools/sign_tool/root_ecc.pem 401bd4fe43Sopenharmony_ci SUB_KEY_PATH = $(MAIN_TOPDIR)/tools/sign_tool/sub_ecc.pem 411bd4fe43Sopenharmony_ci SIGN_TYPE = 2 421bd4fe43Sopenharmony_cielse 431bd4fe43Sopenharmony_ci LINK_FILE = $(MAIN_TOPDIR)/build/link/loaderboot_rsa.lds 441bd4fe43Sopenharmony_ci ROOT_KEY_PATH = $(MAIN_TOPDIR)/tools/sign_tool/root_rsa.pem 451bd4fe43Sopenharmony_ci SUB_KEY_PATH = $(MAIN_TOPDIR)/tools/sign_tool/sub_rsa.pem 461bd4fe43Sopenharmony_ci ifeq ($(CONFIG_TARGET_SIG_RSA_V15), y) 471bd4fe43Sopenharmony_ci SIGN_TYPE = 0 481bd4fe43Sopenharmony_ci else ifeq ($(CONFIG_TARGET_SIG_RSA_PSS), y) 491bd4fe43Sopenharmony_ci SIGN_TYPE = 1 501bd4fe43Sopenharmony_ci endif 511bd4fe43Sopenharmony_ciendif 521bd4fe43Sopenharmony_ci 531bd4fe43Sopenharmony_ciLIBS := $(patsubst lib%.a, -l%, $(notdir $(wildcard $(MAIN_TOPDIR)/build/libs/boot_libs/*.a))) 541bd4fe43Sopenharmony_ciLIBPATH := -L$(MAIN_TOPDIR)/build/libs 551bd4fe43Sopenharmony_ciLIBPATH += -L$(MAIN_TOPDIR)/build/libs/boot_libs 561bd4fe43Sopenharmony_ciBOOT_ELF = $(MAIN_TOPDIR)/$(CACHE_PATH)/loader_boot.elf 571bd4fe43Sopenharmony_ciBOOT_BIN = $(MAIN_TOPDIR)/$(CACHE_PATH)/hi_loader_boot.bin 581bd4fe43Sopenharmony_ciBOOT_SIGNED_BIN = $(MAIN_TOPDIR)/$(BIN_PATH)/$(TARGET_CHIP)_loader_signed.bin 591bd4fe43Sopenharmony_ci 601bd4fe43Sopenharmony_ciall: $(OBJS) $(ASM_OBJS) $(COMMON_OBJS) $(COMMON_ASM_OBJS) 611bd4fe43Sopenharmony_ci $(LINK) $(BOOT_LINK_FLAGS) -T $(LINK_FILE) $(LIBPATH) $(sort $^) -o $(BOOT_ELF) --start-group $(LIBS) --end-group 621bd4fe43Sopenharmony_ci $(OBJCOPY) -Obinary -R .rom.text -R .rom.code.text -R .u_boot_cmd -R .rom.data -R .rom.code.data -R .rom.bss -R .rom.code.bss -S $(BOOT_ELF) $(BOOT_BIN) 631bd4fe43Sopenharmony_ciifeq ($(CONFIG_TARGET_SIG_SHA256), y) 641bd4fe43Sopenharmony_ci $(SIGN_TOOL) -i $(BOOT_BIN) -o $(BOOT_SIGNED_BIN) -n 651bd4fe43Sopenharmony_cielse ifeq ($(CONFIG_BOOT_ENCRYPT), y) 661bd4fe43Sopenharmony_ci $(SIGN_TOOL) -i $(BOOT_BIN) -o $(BOOT_SIGNED_BIN) -r$(ROOT_KEY_PATH) -s$(SUB_KEY_PATH) -v $(CONFIG_TARGET_BOOT_VER) -a $(SIGN_TYPE) -e$(ENCRYPT_KEY_PATH) 671bd4fe43Sopenharmony_cielse 681bd4fe43Sopenharmony_ci $(SIGN_TOOL) -i $(BOOT_BIN) -o $(BOOT_SIGNED_BIN) -r$(ROOT_KEY_PATH) -s$(SUB_KEY_PATH) -v $(CONFIG_TARGET_BOOT_VER) -a $(SIGN_TYPE) 691bd4fe43Sopenharmony_ciendif 701bd4fe43Sopenharmony_ci $(Q)echo [LOADER_BOOT] SUCCESS 711bd4fe43Sopenharmony_ci $(RM) $(BOOT_ELF) $(BOOT_BIN) 721bd4fe43Sopenharmony_ci 731bd4fe43Sopenharmony_ci 741bd4fe43Sopenharmony_ciinclude $(MAIN_TOPDIR)/build/make_scripts/lib.mk 751bd4fe43Sopenharmony_ci$(COMMON_OBJS): $(OBJDIR)/%.o : ../%.c 761bd4fe43Sopenharmony_ci $(Q)if [ ! -d $(dir $@) ]; then \ 771bd4fe43Sopenharmony_ci mkdir -p $(dir $@); \ 781bd4fe43Sopenharmony_ci fi; 791bd4fe43Sopenharmony_ci $(Q) echo Compile $<; 801bd4fe43Sopenharmony_ci $(Q)if [ -e $< ]; \ 811bd4fe43Sopenharmony_ci then $(CC) $(CCFLAGS) -c $< -o $@; \ 821bd4fe43Sopenharmony_ci if [ "$$?" != "0" ]; then \ 831bd4fe43Sopenharmony_ci exit 1;\ 841bd4fe43Sopenharmony_ci fi; \ 851bd4fe43Sopenharmony_ci fi; 861bd4fe43Sopenharmony_ci 871bd4fe43Sopenharmony_ci$(COMMON_ASM_OBJS): $(OBJDIR)/%.o : ../%.S 881bd4fe43Sopenharmony_ci $(Q)echo Compile $<; 891bd4fe43Sopenharmony_ci $(Q)if [ ! -d $(dir $@) ]; \ 901bd4fe43Sopenharmony_ci then \ 911bd4fe43Sopenharmony_ci mkdir -p $(dir $@);\ 921bd4fe43Sopenharmony_ci fi; 931bd4fe43Sopenharmony_ci $(Q)if [ -f $< ]; \ 941bd4fe43Sopenharmony_ci then \ 951bd4fe43Sopenharmony_ci $(CC) $(ASFLAGS) -c $< -o $@ ; \ 961bd4fe43Sopenharmony_ci if [ "$$?" != "0" ]; then \ 971bd4fe43Sopenharmony_ci exit 1;\ 981bd4fe43Sopenharmony_ci fi;\ 991bd4fe43Sopenharmony_ci fi; 100