From: Mark Adler Date: Sun, 9 Oct 2011 17:16:43 +0000 (-0700) Subject: Add --cover option to ./configure for gcc coverage testing. X-Git-Tag: v1.2.5.2~24 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d66a30794183e04f121fd1464d7bfcfbbcaf64ed;p=thirdparty%2Fzlib-ng.git Add --cover option to ./configure for gcc coverage testing. This adds the -fprofile-arcs and -ftest-coverage options when compiling the source code for the static library. Those same options must then be used when linking the static library into an executable. This updates Makefile.in to remove and .gitignore to ignore the files generated when testing coverage. --- 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 "