一个makefile的例子

 ################################################
CC = tcc
AR = armar

################################################

CFLAGS = -O1 -bi -g+ -apcs /interwork/swst -fy -Wbe -DSDL /
     -DEXTERNAL_SDL_DEBUG -DUSE_PM3_RF -D_ENABLE_WATCHDOG ...
################################################

INCLUDES = /
 -I ../../Common/include /
 -I ../../GSMGPRS/Include/ARM /
 -I ../../MicsHeader ...

################################################

LIBS = App/bt/lib/bluetooth.a /
   App/im/im_cstar/lib/im_cstar.a ...
   
################################################

mmimain = /
 Kernel/c/app_tasks.c /
 Kernel/c/block_mem.c /
 Kernel/c/MMIUTIL.c ...
 
################################################

accessory = /
 App/Accessory/c/mmi_solarlunar.c /
 App/Accessory/c/mmiacc_feast.c ...

app := $(accessory)

audio = /
 App/audio/c/mmiaudio.c /
 App/audio/c/mmiaudio_ctrl.c
app += $(audio)

################################################

SOURCES = $(mmimain) $(app)
OBJS = $(patsubst %.c, %.o, $(SOURCES))

################################################

TARGET = ../Lib/mmi_app_cstar_dvb.a

$(TARGET) : $(LIBS) $(OBJS)
 $(AR) -r ../Lib/mmi_app_cstar_dvb.a $(OBJS) $(LIBS)

################################################

App/bt/lib/bluetooth.a :
 make -C App/bt

App/im/im_cstar/lib/im_cstar.a :
 make -C App/im/im_cstar


################################################

$(OBJS) : %.o : %.c
 $(CC) -c $(CFLAGS) $(INCLUDES)  $< -o $@
 
################################################

.PHONY : clean

clean : clean_proj
 rm -rf $(OBJS) $(TARGET)

clean_proj :
 make -C App/bt clean
 make -C App/im/im_cstar clean

################################################


你可能感兴趣的:(一个makefile的例子)