📄 makefile~
字号:
#========================================================================================
# 文件描述: Base Test of ARM7
# Version: v2008.02
# MCU & IC: LPC2131 ( + )
# Frequency: Fosc=20.000M, Fcclk=3*Fosc, Fpclk=0.75*Fosc
# Compiler: CodeSourcery gcc
# 版权信息: W&T Co, Ltd(2005-2008), flyyyying@126.com, 2008-02-17
#========================================================================================
#---------------------------------------- PATH ------------------------------------------
wrkpath = ./
binpath = D:/Program\ Files/CodeSourcery/Lite/bin
libpath = D:/Program\ Files/CodeSourcery/Lite
incpath = D:/Program\ Files/CodeSourcery/Lite
cygpath = D:/Program\ Files/cygwin/usr/bin
brnpath = D:/Program\ Files/Philips/Flash_Magic
rarpath = C:/Program\ Files/WinRAR
#--------------------------------------- COMMAND ----------------------------------------
FLAG = -mcpu=arm7tdmi-s -Wall -O1 -g -fomit-frame-pointer -T$(mem_ld)
CC = $(binpath)/arm-none-eabi-gcc
CFLAGS = -c $(FLAG)
AC = $(CC)
AFLAGS = -c $(FLAG)
LD = $(CC)
LFLAGS = $(FLAG) -nostartfiles -Wl,-M,-Map=z.map
QD = $(binpath)/arm-none-eabi-objcopy
#
REMOVE = $(cygpath)/rm -rf
COPY = $(cygpath)/cp -uf
WZIP = $(rarpath)/rar
GDB = $(binpath)/arm-none-eabi-gdb
FLASH = $(brnpath)/fm
#---------------------------------------- FILES -----------------------------------------
mem_ld = bsp/mem.ld
#
src_hal1 = boot.s bsp.c i2c.c
src_hal2 = port.c portISR.c heap_1.c
src_core = list.c tasks.c #queue.c
src_usr0 = lib.c
src_usr1 = main.c
objs = $(addsuffix .o, $(addprefix bsp/, $(basename $(src_hal1))))
objs += $(addsuffix .o, $(addprefix rtos/port/, $(basename $(src_hal2))))
objs += $(addsuffix .o, $(addprefix rtos/source/, $(basename $(src_core))))
#bjs += $(addsuffix .o, $(addprefix lib/, $(basename $(src_usr0))))
objs += $(addsuffix .o, $(addprefix app/, $(basename $(src_usr1))))
#
tar = HexokA_codso.hex
sar = $(tar:hex=elf)
#--------------------------------------- COMPILE ----------------------------------------
all: $(tar)
$(tar): $(sar)
$(QD) $< -O ihex $@
@echo -- -- -- -- -- -- -- Converting to $(@), done !!!!
$(sar): $(objs)
$(LD) $(LFLAGS) $^ -o $@
@echo -- -- -- -- -- -- -- Linkiiiing to $(@), done !!!
%.o: %.c
$(CC) $(CFLAGS) $< -o $@
@echo -- -- -- -- -- -- -- Compiliing to $(@), done !!
%.o: %.s
$(AC) $(AFLAGS) $< -o $@
@echo -- -- -- -- -- -- -- Assembling to $(@), done !
#---------------------------------------- MISC ------------------------------------------
x:
bash -c "$(REMOVE) $$(find . -name '*~') |sed -e 's/\.[chs]~/\.o/g'"
bash -c "$(REMOVE) $$(find . -name '*~') *.elf *.map *.DBK *.PWI"
#
gdb:
$(GDB) $(sar)
#
burn:
$(FLASH) COM(1,19200) DEVICE(LPC2131,20) ERASE(DEVICE,PROTECTISP)\
HEXFILE($(tar),CHECKSUMS,NOFILL,PROTECTISP)
#
bak:
bash -c "$(REMOVE) $$(find . -name '*.o') tags *.hex"
$(WZIP) a -r -agmmddhhmm $(wrkpath)/$(tar:hex=rar) $(wrkpath)/
#=========================================<EOF>==========================================
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -