1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- .PHONY: all clean cleanall
- CC = gcc
- INC_PATH = ../include
- MY_CFLAGS = -I../include -I../paho.mqtt.c/src/
- CFLAGS = $(MY_CFLAGS) -Os -lrt -g -Wall -W -Wpointer-arith -Wstrict-prototypes -c
- OBJS = decode.o globle.o mysql.sdk.o init.o
- #定义最后生成的静态库文件
- LIB_A=libcommon.a
- AR= ar rcu
- RANLIB= ranlib
- all: $(LIB_A)
- #生成 lib.a 方便外面引用
- #依赖于 $(OBJS),即四个源文件编译得到的目标文件
- $(LIB_A):$(OBJS)
- #使用 ar 工具将目标文件打包成静态库
- $(AR) $@ $(OBJS)
- #运行 ranlib 命令更新静态库的索引,以确保正确性
- $(RANLIB) $@
- @echo -e "\\033[32m $(LIB_A) is OK \\033[0m"
- decode.o: decode.c $(INC_PATH)/decode.h
- $(CC) $(CFLAGS) $<
- globle.o: globle.c $(INC_PATH)/globle.h
- $(CC) $(CFLAGS) $<
- mysql.sdk.o:mysql.sdk.c
- $(CC) $(CFLAGS) $<
- init.o:init.c
- $(CC) $(CFLAGS) $<
- clean: cleanall
- cleanall:
- ifneq (,$(wildcard *.c))
- @#如果存在 c 则需要清除及重新编译
- rm -f $(OBJS) $(LIB_A)
- endif
- @echo "clean DONE"
|