##### this makefile for pkt_trapper
CC = $(CROSS_COMPILE)gcc
AR = $(CROSS_COMPILE)ar
STRIP = $(CROSS_COMPILE)strip

APPL=$(NFQUEUE_LOGGER_APPS_BLDDIR)/$(NFQUEUE_LOGGER_APPS_NAME)

CFLAGS = -fpic -g -Os -Wall -I$(TOOLCHAIN_USRINCDIR) -I$(NFQUEUE_LOGGER_APPS_DIR)
CFLAGS += $(NFQUEUE_LOGGER_APPS_CFLAGS_DEPENDENT) 
CFLAGS += -I$(LIBNFQUEUE_APPS_DIR)/include
CFLAGS += -I$(LIBNFNETLINK_APPS_DIR)/include

LDFLAGS = -L$(ROOTFS_DIR)/lib
## For Project dependent LD flags
LDFLAGS += $(NFQUEUE_LOGGER_APPS_LDFLAGS)
LDFLAGS += -Wl,-rpath-link -Wl,--allow-shlib-undefined
LDFLAGS += -L$(LIBNFNETLINK_APPS_BLDDIR) -lnfnetlink
LDFLAGS += -L$(LIBNFQUEUE_APPS_BLDDIR) -lnfqueue

LSRCS := $(wildcard *.c)
LOBJS := $(addsuffix .o, $(basename ${LSRCS}))
BOBJS := $(addprefix ${NFQUEUE_LOGGER_APPS_BLDDIR}/,${LOBJS})

all: $(APPL)

$(APPL): $(BOBJS)
	$(CC) $(LDFLAGS) -o $@ $(BOBJS)

$(NFQUEUE_LOGGER_APPS_BLDDIR)/%.o: %.c
	@echo "Compiling $<"
	@$(CC) $(CFLAGS) -c $< -o $@
	
clean:
	@rm -f $(BOBJS:.o=.d)
	@rm -f $(BOBJS)
	@rm -f $(NFQUEUE_LOGGER_APPS_BLDDIR)/$(NFQUEUE_LOGGER_APPS_NAME)

ifeq (,$(findstring clean,$(MAKECMDGOALS)))
-include $(addprefix ${NFQUEUE_LOGGER_APPS_BLDDIR}/,$(addsuffix .d,$(basename $(LSRCS))))
$(NFQUEUE_LOGGER_APPS_BLDDIR)/%.d: %.c
	-@if [ ! -d $(@D)  ]; then mkdir -p $(@D); fi
	@echo "Generating dependency file for $<"; \
	$(CC) -M $(CFLAGS) $< >$@.tmp; \
	echo "$@ \\" > $@; \
	sed 's,\($*\)\.o[ :]*,$$(NFQUEUE_LOGGER_APPS_BLDDIR)\/\1.o: ,g' < $@.tmp >> $@; \
	rm -f $@.tmp
endif

.PHONY: all clean
