zlg的imx283里的makefile

来源:互联网 发布:jboss 数据库jndi配置 编辑:程序博客网 时间:2024/06/17 05:05
EXEC        = hello OBJS        = hello.o  CROSS      = arm-fsl-linux-gnueabi- CC              = $(CROSS)gcc   STRIP        = $(CROSS)strip CFLAGS   = -Wall -g -O2  all:    clean $(EXEC)  $(EXEC):$(OBJS)          $(CC) $(CFLAGS) -o $@ $(OBJS)          $(STRIP) $@  clean:          -rm -f $(EXEC) *.o 


下面是我写的

下面是我写的一个简单的有三个文件的一个makefileOBJ= send.o ymodem.o receive.oTARGET= demoall: $(OBJ)     $(CC) $(CCFLAG) $(OBJ) -o $(TARGET)%.o:%.c     $(CC) $(CCFLAG) $(CPPFLAGS) -c -o $@ $< clean:     rm -rf *.o $(TARGET).PHONY: clean

################################################################## A simple Makefile# By Late Lee(http://www.latelee.org)# # bugs:#      1. 需要显式指定库位置、名称;#      2. make 及 make clean处理得不好(对于库,要么删除再编译,要么无操作);##################################################################CC=gccCFLAGS = -WallDEBUG = yifeq ($(DEBUG), y)CFLAGS += -gelseCFLAGS += -O2endifSUBDIRS := foo bar btLIBS := bt/libbt.a foo/libfoo.a bar/libbar.aLDFLAGS = $(LIBS)RM = -rm -rf__OBJS = main.o__OBJS += example.o__SRCS = $(subst .o,.c,$(__OBJS))target = a.outMAKE = make#all: clean $(target)all: $(target)$(__OBJS): $(__SRCS)$(CC) $(CFLAGS) -c $^ -I ./configs/# 这种格式也可以#.c.o:#%.o: %.c#$(CC) $(CFLAGS) -c $^ -I ./configs/#********************************************#%.o: %.c#$(CC) $(CFLAGS) -c $^ -I ./configs/#********************************************# 可单独:#main.o: main.c#$(CC) $(CFLAGS) -c $^ -I ./configs/#example.o: example.c#$(CC) $(CFLAGS) -c $^ -I ./configs/$(target): $(__OBJS)for dir in $(SUBDIRS); \do $(MAKE) -C $$dir all || exit 1; \done$(CC) $(CFLAGS) $^ -o $@ $(LDFLAGS)clean:@for dir in $(SUBDIRS); do make -C $$dir clean|| exit 1; done$(RM) $(__OBJS) $(target) *.bak *~.PHONY: all clean


0 0
原创粉丝点击