1 PKG_CONFIG_LIBDIR := /usr/lib/pkgconfig:/lib/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig:$(PKG_CONFIG_LIBDIR)
2 MACHINE = $(shell $(CC) -dumpmachine)
3 SUBDIRS := $(wildcard amxc_*) $(wildcard variant_*)
4 OBJDIR = ../output/$(MACHINE)/coverage
5 RESULTSDIR = ../output/result
8 run: $(OBJDIR)/ $(RESULTSDIR)/
9 mkdir -p $(RESULTSDIR)/test
10 @for dir in $(SUBDIRS); do CMOCKA_XML_FILE=../$(RESULTSDIR)/test/$$dir.xml CMOCKA_MESSAGE_OUTPUT=xml make -C $$dir $@ || exit -1; done
11 @rm -rf $(OBJDIR)/test_*
12 @rm -rf $(OBJDIR)/*_dummy_*
16 rm -rf $(OBJDIR)/$(COVERREPORT)
17 find .. -name "run_test" -delete
19 coverage: $(OBJDIR)/$(COVERREPORT)/
20 @cd $(OBJDIR) && for i in $$(find . -name "*.o"); do gcov -c -b -f --long-file-names --preserve-paths $$i > /dev/null; done
21 @cd $(OBJDIR) && for i in $$(find . -name "*.h.gcov"); do rm $$i > /dev/null; done
23 cd $(OBJDIR) && gcovr -k -p -r ../../.. -s -g --html --html-details -o ./$(COVERREPORT)/index.html
24 cd $(OBJDIR) && gcovr -k -p -r ../../.. -s -g | tee ./$(COVERREPORT)/gcovr_summary.txt
32 $(OBJDIR)/$(COVERREPORT)/:
35 .PHONY: run clean coverage