diff --git a/.gitignore b/.gitignore index 81d3ed29c..8c6bce0b9 100644 --- a/.gitignore +++ b/.gitignore @@ -9,6 +9,10 @@ *.o *.dylib +*.gcda +*.gcno +*.gcov + /example /example64 /examplesh diff --git a/Makefile.in b/Makefile.in index 1b8bf3f82..9ac04060f 100644 --- a/Makefile.in +++ b/Makefile.in @@ -232,6 +232,7 @@ clean: libz.* foo.gz so_locations \ _match.s maketree contrib/infback9/*.o rm -rf objs + rm -f *.gcda *.gcno *.gcov maintainer-clean: distclean distclean: clean zconf zconf.h.cmakein docs diff --git a/configure b/configure index 672b24fec..d15c03b69 100755 --- a/configure +++ b/configure @@ -55,6 +55,7 @@ mandir=${mandir-'${prefix}/share/man'} shared_ext='.so' shared=1 solo=0 +cover=0 zprefix=0 build64=0 gcc=0 @@ -85,6 +86,7 @@ case "$1" in -s* | --shared | --enable-shared) shared=1; shift ;; -t | --static) shared=0; shift ;; --solo) solo=1; shift ;; + --cover) cover=1; shift ;; -z* | --zprefix) zprefix=1; shift ;; -6* | --64) build64=1; shift ;; -a*=* | --archs=*) ARCHS=`echo $1 | sed 's/.*=//'`; shift ;; @@ -345,6 +347,10 @@ OBJC='$(OBJZ)' PIC_OBJC='$(PIC_OBJZ)' fi +if test $cover -eq 1; then + CFLAGS="${CFLAGS} -fprofile-arcs -ftest-coverage" +fi + cat > $test.c < #include @@ -578,7 +584,7 @@ case $CFLAGS in fi ;; esac -rm -f $test.[co] $test $test$shared_ext +rm -f $test.[co] $test $test$shared_ext $test.gcno # udpate Makefile sed < Makefile.in "