📄 makefile
字号:
# Makefile - make rules for Manchiane Download
#$Log: Makefile,v $
#Revision 1.1 2009/03/12 08:15:14 zhouningbo
#add bootloader for Hi3611
#
#Revision 1.1.1.1 2009/02/23 05:43:57 yangyanhong
#based on B867 正式版
#
#Revision 1.0 2006/12/12 14:55:54
#no message
#OEM can modify the value of this place
BASE_DIR = .
LIB_DIR = "c:/Program Files/GNUARM/lib/gcc/arm-elf/4.1.1"
LIB2_DIR = "c:/Program Files/GNUARM/arm-elf/lib"
ROMADDRESS = 0xA0080000
#CCDEF = -DDEBUG
CCDEF += -DUSB_HS
CCDEF += -DHISI3610_CHIP
CCDEF += -DHI3611_V120_MP
#CCDEF += -DRUN_IN_FLASH
OUTFILE = UsbLoader
#end of OEM modify palce
#OEM needn't modify the value after this place
CPU = ARMARCH5
TOOL = gnu
VENDOR = HUAWEI
BOARD = USP
FLASH_SOURCES := $(wildcard $(BASE_DIR)/Flash/*.c)
SYS_SOURCES := $(wildcard $(BASE_DIR)/Sys/*.c)
SYS_ASM_SOURCES := $(wildcard $(BASE_DIR)/Sys/*.S)
FLASH_OBJS := $(patsubst %c, %o, $(FLASH_SOURCES))
USB_OBJS := $(wildcard $(BASE_DIR)/USB/*.o)
SYS_OBJS := $(patsubst %S, %o, $(SYS_ASM_SOURCES)) $(patsubst %c, %o, $(SYS_SOURCES))
DWNLD_OBJS := $(wildcard $(BASE_DIR)/Download/*.o)
MODEM_OBJS := $(wildcard $(BASE_DIR)/Modem/*.o)
INCLUDE_DIR = -I$(BASE_DIR)/Inc -I$(BASE_DIR)/Flash -I$(BASE_DIR)/USB -I$(BASE_DIR)/Sys -I$(BASE_DIR)/Download -I$(BASE_DIR)/Modem
CC = arm-elf-gcc
ASM = arm-elf-as
LD = arm-elf-ld
CFLAGS = -g -c -O3 $(INCLUDE_DIR) $(CCDEF)
ASFLAGS = -g -c $(INCLUDE_DIR) $(CCDEF)
LDFLAGS = -e _romInit -Ttext $(ROMADDRESS) -EL --gc-sections -L$(LIB_DIR) -L$(LIB2_DIR)
$(OUTFILE).nb0:$(OUTFILE).elf
arm-elf-objcopy -O binary $(OUTFILE).elf $(OUTFILE).nb0
$(OUTFILE).elf: $(SYS_OBJS) $(FLASH_OBJS) $(USB_OBJS) $(DWNLD_OBJS) $(MODEM_OBJS)
$(LD) $(LDFLAGS) -Map $(OUTFILE).map -o $(OUTFILE).elf $(SYS_OBJS) $(FLASH_OBJS) $(USB_OBJS) $(DWNLD_OBJS) $(MODEM_OBJS) -lgcc -lc
Sys_Asm_depends:
$(CC) $(ASFLAGS) $(SYS_ASM_SOURCES) -M > Sys_Asm_depends
Flash_depends:
$(CC) $(CFLAGS) $(FLASH_SOURCES) -M > Flash_depends
Sys_depends:
$(CC) $(CFLAGS) $(SYS_SOURCES) -M > Sys_depends
-include depends
#%.o : %.c
# $(CC) -c $< -o $@
.PHONY : clean
clean :
@echo "make: removing targets and objects of project"
del $(OUTFILE).nb0 $(OUTFILE).elf $(OUTFILE).map $(subst /,\, $(FLASH_OBJS)) $(subst /,\, $(SYS_OBJS))
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -