From 503abf607a9e1d5d778edb48e00514f5cb73f777 Mon Sep 17 00:00:00 2001 From: Arseny Kapoulkine Date: Sat, 25 Oct 2014 05:28:37 +0000 Subject: Add 'coverage' configuration to Makefile. git-svn-id: https://pugixml.googlecode.com/svn/trunk@1079 99668b35-9821-0410-8761-19e4c4f06640 --- Makefile | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/Makefile b/Makefile index eddd4f2..d351e0f 100644 --- a/Makefile +++ b/Makefile @@ -13,6 +13,12 @@ ifeq ($(config),release) CXXFLAGS+=-O3 -DNDEBUG endif +ifeq ($(config),coverage) + CXXFLAGS+=-DNDEBUG + CXXFLAGS+=-fprofile-arcs -ftest-coverage + LDFLAGS+=-fprofile-arcs +endif + ifneq ($(defines),standard) COMMA=, CXXFLAGS+=-D $(subst $(COMMA), -D ,$(defines)) @@ -22,8 +28,16 @@ OBJECTS=$(SOURCES:%=$(BUILD)/%.o) all: $(EXECUTABLE) +ifeq ($(config),coverage) test: $(EXECUTABLE) + @find $(BUILD) -name '*.gcda' | xargs rm ./$(EXECUTABLE) + @gcov -b -c $(BUILD)/src/pugixml.cpp.gcda | sed -e '/./{H;$!d;}' -e 'x;/pugixml.cpp/!d;' + @ls *.gcov | grep -v pugixml.cpp.gcov | xargs rm +else +test: $(EXECUTABLE) + ./$(EXECUTABLE) +endif clean: rm -rf $(BUILD) -- cgit v1.2.3