include ../../Makefile.vars

MCBLOCKINC = -I../../classes/include
ALLINC = ${CRYPTOPPINC} ${JSONCPPINC} ${DWMINC} ${DWMAUTHINC} ${DWMRDAPINC} ${MCBLOCKINC} -I.
MCBLOCKLIB = -L../../classes/lib -lDwmMcBlock
ALLLIB = ${DWMRDAPLIB} ${DWMAUTHLIB} ${DWMLIB} ${CRYPTOPPLIB} ${JSONCPPLIB} -lbz2 -lz -lpcap
OBJFILES = mcblocklogparser.o
OBJDEPS  = $(OBJFILES:%.o=deps/%.d)
TESTS    = $(OBJFILES:%.o=%)

all: mcblocklogparser

../classes/lib/libDwmMcBlock.a::
	${MAKE} -C ../src

deps/%.d: %.cc
	@echo "making dependencies for $<"
	@set -e; \
	${CXX} -MM ${CXXFLAGS} ${ALLINC} -c $< | \
	  sed 's/\($*\)\.o[ :]*/\1.o $(@D)\/$(@F) : /g' > $@ ; [ -s $@ ] || \
	  rm -f $@

#  only include dependency makefiles if target is not 'clean' or 'distclean'
ifneq ($(MAKECMDGOALS),clean)
ifneq ($(MAKECMDGOALS),distclean)
-include ${OBJDEPS}
endif
endif

%.o: %.cc
	${CXX} ${CXXFLAGS} ${ALLINC} -c $<

mcblocklogparser: ${OBJFILES} ../../classes/lib/libDwmMcBlock.a
	${LIBTOOL} --mode=link --tag=CXX ${CXX} -static ${LDFLAGS} -o $@ $^ ${ALLLIB}

clean::
	rm -f mcblocklogparser ${OBJFILES}

distclean: clean
	rm -f deps/*.d
