diff options
| -rw-r--r-- | Makefile | 21 | ||||
| -rw-r--r-- | tests/Makefile | 7 |
2 files changed, 24 insertions, 4 deletions
@@ -1,15 +1,17 @@ VERSION=0.1 CC=gcc -CFLAGS=-Wall -O3 -DVERSION=$(VERSION) -g +CFLAGS=-Wall -DVERSION=$(VERSION) -g -O3 INCLUDE= -Iinclude LIB= -Llib DOXY=doxygen DOCDIR=doc DOXYFILE=$(DOCDIR)/Doxyfile +LCOV=lcov +GENHTML=genhtml EXECS=gensvm gensvm_grid -.PHONY: all clean doc test +.PHONY: all clean doc test cover all: lib/libgensvm.a $(EXECS) @@ -22,12 +24,25 @@ doc: $(DOXY) $(DOXYFILE) clean: - rm -rf $(EXECS) *.o src/*.o lib/*.a + rm -rf $(EXECS) *.o src/*.o lib/*.a *.{gcno,gcov} src/*.{gcno,gcda} $(MAKE) -C tests clean test: lib/libgensvm.a $(MAKE) -C tests all +cover: CFLAGS += --coverage +cover: LDFLAGS += --coverage -lgcov +cover: CFLAGS := $(filter-out -O3,$(CFLAGS)) +cover: lib/libgensvm.a + $(LCOV) -c -i -d ./src/ -o ./cover/coverage.base + $(MAKE) -C tests cover + mkdir -p cover + $(LCOV) -c -d ./src/ -o ./cover/coverage.run + $(LCOV) -a ./cover/coverage.base -a ./cover/coverage.run \ + -o ./cover/coverage.all + $(GENHTML) -o ./cover ./cover/coverage.all + rm -f src/*.{gcda,gcno} tests/*.{gcda,gcno} + lib/libgensvm.a: \ src/gensvm_base.o \ src/gensvm_cmdarg.o \ diff --git a/tests/Makefile b/tests/Makefile index dc5e0c5..29a181f 100644 --- a/tests/Makefile +++ b/tests/Makefile @@ -1,5 +1,5 @@ CC=gcc -CFLAGS=-Wall -O3 -g -rdynamic -DNDEBUG $(OPTFLAGS) +CFLAGS=-Wall -g -rdynamic -DNDEBUG $(OPTFLAGS) INCLUDE=-I../include/ -I./include LIB=-L../lib @@ -22,7 +22,12 @@ valgrind: --log-file=/tmp/valgrind-%p.log --track-origins=yes \ --show-leak-kinds=all -v" $(MAKE) +cover: CFLAGS += --coverage +cover: LDFLAGS += -lgcov +cover: all + clean: rm -rf $(TESTS) rm -f ./tests.log rm -f /tmp/valgrind*.log + rm -f *.gcno *.gcda *.gcov |
