CC = gcc
WFADATAD_LIB_DIR ?= $(shell dirname $(PWD))
WFADATAD_LIB = -l:wfa_delm_test.so -L$(WFADATAD_LIB_DIR)
CMOCKA_LIB = -l cmocka
LIBS = $(WFADATAD_LIB) $(CMOCKA_LIB) -luci -pthread -lubus -lubox -ljson-c -lblobmsg_json
CFLAGS = -g -ggdb -Wall -I../.. -I../../src
LDFLAGS = $(LIBS) -Wl,-rpath=$(WFADATAD_LIB_DIR) -I$(WFADATAD_LIB_DIR)
UNIT_TESTS = unit_test_decollector

VALGRIND = valgrind --leak-check=full --show-reachable=no \
           --show-leak-kinds=all --errors-for-leak-kinds=all \
           --error-exitcode=1 --track-origins=yes

unit_test_decollector:  unit_test_decollector.o
	$(CC) -o $@ $^ $(LDFLAGS)

unit-test: $(UNIT_TESTS)
	$(foreach testprog, $(UNIT_TESTS), sudo $(VALGRIND) ./$(testprog);)

.PHONY: clean
clean:
	rm *.o unit_test_decollector -fv

