PWD=$(shell pwd)
TOPDIR=$(PWD)/..
SRCDIR = ./src 

#*********************************************************************************************************
# build path
#*********************************************************************************************************
RM=rm

#CROSS_COMPILE=riscv64-linux-gnu-
#CC=$(CROSS_COMPILE)gcc 

CFLAGS = -o2 -ffunction-sections -fdata-sections #--pack-struct #-Wall
CFLAGS += -I$(PWD)/inc

LDFLAGS = -L$(PWD)/lib -Wl,-gc-sections
LDFLAGS += -lpthread -ldl -lm -lpcap


SHARE_FLAGS = -fPIC -shared

#定义根目录
srcdir = .

#定义源码子目录
subdir = src \

#遍历所有dir,并搜索该dir下面的所有.c文件
allsrc = $(foreach dir, $(subdir), $(wildcard $(srcdir)/$(dir)/*.c))

#把所有的.c替换为.o
allobj  = $(patsubst $(srcdir)/%.c, %.o, $(allsrc))

TARGET = pcaptest

default: $(TARGET)

$(TARGET):  $(allobj)
	$(CC) -o $@ $(allobj) $(LDFLAGS)  

#生成.o的规则
$(allobj): %.o : %.c
	@echo Compiling $<...
	@$(CC) $(CFLAGS) -c $< -o $@

ECHO:
	@echo allsrc = $(allsrc)
	@echo allobj = $(allobj)

.PHONY: clean
clean:
	find $(allobj) -name *.o -exec $(RM) -rf {} \;
#	$(RM) -rf $(allobj)
