From nobody Sat Feb 7 15:04:39 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) client-ip=209.132.183.28; envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1552497107853872.5886419020507; Wed, 13 Mar 2019 10:11:47 -0700 (PDT) Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 90EF211B77C; Wed, 13 Mar 2019 17:11:45 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id B231B28577; Wed, 13 Mar 2019 17:11:44 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id 3AEBE3FB12; Wed, 13 Mar 2019 17:11:44 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x2DHBgaC016834 for ; Wed, 13 Mar 2019 13:11:42 -0400 Received: by smtp.corp.redhat.com (Postfix) id D966D605A8; Wed, 13 Mar 2019 17:11:42 +0000 (UTC) Received: from worklaptop.redhat.com (ovpn-124-40.rdu2.redhat.com [10.10.124.40]) by smtp.corp.redhat.com (Postfix) with ESMTP id CEACC12A7D; Wed, 13 Mar 2019 17:11:39 +0000 (UTC) From: Cole Robinson To: libvirt-list@redhat.com Date: Wed, 13 Mar 2019 13:11:31 -0400 Message-Id: <6ff5f1a4ce09bd3efb88dd71d34641cc9bb09416.1552496850.git.crobinso@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 1/2] configure: Remove --enable-test-coverage X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.38]); Wed, 13 Mar 2019 17:11:46 +0000 (UTC) Content-Type: text/plain; charset="utf-8" We provide a custom configure option --enable-test-coverage and 'make cov' target to generate code coverage reports. However gnulib already provides a 'make coverage' which 'just works' and doesn't require a special configure option. This drops our custom implementation in favor of 'make coverage'. Reports are now output to cov/index.html Signed-off-by: Cole Robinson Reviewed-by: Martin Kletzander --- Makefile.am | 20 +++----------------- configure.ac | 18 ------------------ examples/Makefile.am | 2 +- src/Makefile.am | 3 +-- src/remote/Makefile.inc.am | 2 -- tests/Makefile.am | 2 -- tools/Makefile.am | 6 ------ 7 files changed, 5 insertions(+), 48 deletions(-) diff --git a/Makefile.am b/Makefile.am index 709064c6a6..3c06e2619a 100644 --- a/Makefile.am +++ b/Makefile.am @@ -16,15 +16,15 @@ ## License along with this library. If not, see ## . =20 -LCOV =3D lcov -GENHTML =3D genhtml - SUBDIRS =3D . gnulib/lib include/libvirt src tools docs gnulib/tests \ tests po examples =20 XZ_OPT ?=3D -v -T0 export XZ_OPT =20 +# have gnulib 'make coverage' output to 'cov' dir +COVERAGE_OUT =3D "cov" + ACLOCAL_AMFLAGS =3D -I m4 =20 EXTRA_DIST =3D \ @@ -77,20 +77,6 @@ check-local: all tests check-access: @($(MAKE) $(AM_MAKEFLAGS) -C tests check-access) =20 -cov: clean-cov - $(MKDIR_P) $(top_builddir)/coverage - $(LCOV) -c -o $(top_builddir)/coverage/libvirt.info.tmp \ - -d $(top_builddir)/src \ - -d $(top_builddir)/tests - $(LCOV) -r $(top_builddir)/coverage/libvirt.info.tmp \ - -o $(top_builddir)/coverage/libvirt.info - rm $(top_builddir)/coverage/libvirt.info.tmp - $(GENHTML) --show-details -t "libvirt" -o $(top_builddir)/coverage \ - --legend $(top_builddir)/coverage/libvirt.info - -clean-cov: - rm -rf $(top_builddir)/coverage - MAINTAINERCLEANFILES =3D .git-module-status =20 dist-hook: gen-ChangeLog gen-AUTHORS diff --git a/configure.ac b/configure.ac index 197d9746b2..880a3a7e40 100644 --- a/configure.ac +++ b/configure.ac @@ -738,23 +738,6 @@ fi AC_SUBST([VIR_TEST_EXPENSIVE_DEFAULT]) AM_CONDITIONAL([WITH_EXPENSIVE_TESTS], [test $VIR_TEST_EXPENSIVE_DEFAULT = =3D 1]) =20 -LIBVIRT_ARG_ENABLE([TEST_COVERAGE], [turn on code coverage instrumentation= ], [no]) -case "$enable_test_coverage" in - yes|no) ;; - *) AC_MSG_ERROR([bad value ${enable_test_coverga} for test-coverage opti= on]) ;; -esac - -if test "$enable_test_coverage" =3D yes; then - save_WARN_CFLAGS=3D$WARN_CFLAGS - WARN_CFLAGS=3D - gl_WARN_ADD([-fprofile-arcs]) - gl_WARN_ADD([-ftest-coverage]) - COVERAGE_FLAGS=3D$WARN_CFLAGS - AC_SUBST([COVERAGE_CFLAGS], [$COVERAGE_FLAGS]) - AC_SUBST([COVERAGE_LDFLAGS], [$COVERAGE_FLAGS]) - WARN_CFLAGS=3D$save_WARN_CFLAGS -fi - LIBVIRT_ARG_ENABLE([TEST_OOM], [memory allocation failure checking], [no]) case "$enable_test_oom" in yes|no) ;; @@ -1041,7 +1024,6 @@ LIBVIRT_WIN_RESULT_WINDRES AC_MSG_NOTICE([]) AC_MSG_NOTICE([Test suite]) AC_MSG_NOTICE([]) -AC_MSG_NOTICE([ Coverage: $enable_test_coverage]) AC_MSG_NOTICE([ Alloc OOM: $enable_test_oom]) AC_MSG_NOTICE([]) AC_MSG_NOTICE([Miscellaneous]) diff --git a/examples/Makefile.am b/examples/Makefile.am index e2ec6e7fba..b590a148ce 100644 --- a/examples/Makefile.am +++ b/examples/Makefile.am @@ -29,7 +29,7 @@ EXTRA_DIST =3D \ =20 AM_CPPFLAGS =3D \ -I$(top_builddir)/include -I$(top_srcdir)/include -I$(top_srcdir) -LDADD =3D $(STATIC_BINARIES) $(WARN_CFLAGS) $(COVERAGE_LDFLAGS) \ +LDADD =3D $(STATIC_BINARIES) $(WARN_CFLAGS) \ $(top_builddir)/src/libvirt.la \ $(top_builddir)/src/libvirt-admin.la =20 diff --git a/src/Makefile.am b/src/Makefile.am index 8c8dfe3dcf..a880937705 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -43,9 +43,8 @@ AM_CFLAGS =3D $(LIBXML_CFLAGS) \ $(WARN_CFLAGS) \ $(LOCK_CHECKING_CFLAGS) \ $(WIN32_EXTRA_CFLAGS) \ - $(COVERAGE_CFLAGS) + $(NULL) AM_LDFLAGS =3D $(DRIVER_MODULES_LDFLAGS) \ - $(COVERAGE_LDFLAGS) \ $(RELRO_LDFLAGS) \ $(NO_INDIRECT_LDFLAGS) \ $(CYGWIN_EXTRA_LDFLAGS) \ diff --git a/src/remote/Makefile.inc.am b/src/remote/Makefile.inc.am index 3d0ff29548..468a3f5d97 100644 --- a/src/remote/Makefile.inc.am +++ b/src/remote/Makefile.inc.am @@ -136,7 +136,6 @@ libvirtd_CFLAGS =3D \ $(LIBNL_CFLAGS) \ $(WARN_CFLAGS) \ $(PIE_CFLAGS) \ - $(COVERAGE_CFLAGS) \ -I$(srcdir)/access \ -I$(srcdir)/conf \ -I$(srcdir)/rpc \ @@ -145,7 +144,6 @@ libvirtd_CFLAGS =3D \ libvirtd_LDFLAGS =3D \ $(RELRO_LDFLAGS) \ $(PIE_LDFLAGS) \ - $(COVERAGE_LDFLAGS) \ $(NO_INDIRECT_LDFLAGS) \ $(NO_UNDEFINED_LDFLAGS) \ $(NULL) diff --git a/tests/Makefile.am b/tests/Makefile.am index a7f1b39a5e..c07a3866c6 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -47,7 +47,6 @@ AM_CFLAGS =3D \ $(SELINUX_CFLAGS) \ $(APPARMOR_CFLAGS) \ $(YAJL_CFLAGS) \ - $(COVERAGE_CFLAGS) \ $(XDR_CFLAGS) \ $(WARN_CFLAGS) =20 @@ -275,7 +274,6 @@ endif WITH_SECDRIVER_SELINUX =20 # This is a fake SSH we use from virnetsockettest ssh_SOURCES =3D ssh.c -ssh_LDADD =3D $(COVERAGE_LDFLAGS) =20 if WITH_LIBXL test_programs +=3D xlconfigtest xml2sexprtest sexpr2xmltest \ diff --git a/tools/Makefile.am b/tools/Makefile.am index f2f84f7852..95025ced43 100644 --- a/tools/Makefile.am +++ b/tools/Makefile.am @@ -27,7 +27,6 @@ WARN_CFLAGS +=3D $(STRICT_FRAME_LIMIT_CFLAGS) =20 AM_CFLAGS =3D \ $(WARN_CFLAGS) \ - $(COVERAGE_CFLAGS) \ $(PIE_CFLAGS) \ $(LIBXML_CFLAGS) \ $(NULL) @@ -137,7 +136,6 @@ libvirt_shell_la_CFLAGS =3D \ libvirt_shell_la_LDFLAGS =3D \ $(AM_LDFLAGS) \ $(PIE_LDFLAGS) \ - $(COVERAGE_LDFLAGS) \ $(NULL) libvirt_shell_la_LIBADD =3D \ ../src/libvirt.la \ @@ -183,7 +181,6 @@ endif ! WITH_BHYVE virt_host_validate_LDFLAGS =3D \ $(AM_LDFLAGS) \ $(PIE_LDFLAGS) \ - $(COVERAGE_LDFLAGS) \ $(NULL) =20 virt_host_validate_LDADD =3D \ @@ -206,7 +203,6 @@ virt_login_shell_SOURCES =3D \ virt_login_shell_LDFLAGS =3D \ $(AM_LDFLAGS) \ $(PIE_LDFLAGS) \ - $(COVERAGE_LDFLAGS) \ $(NULL) virt_login_shell_LDADD =3D \ $(STATIC_BINARIES) \ @@ -239,7 +235,6 @@ virsh_SOURCES =3D \ virsh_LDFLAGS =3D \ $(AM_LDFLAGS) \ $(PIE_LDFLAGS) \ - $(COVERAGE_LDFLAGS) \ $(NULL) virsh_LDADD =3D \ $(STATIC_BINARIES) \ @@ -257,7 +252,6 @@ virt_admin_SOURCES =3D \ =20 virt_admin_LDFLAGS =3D \ $(AM_LDFLAGS) \ - $(COVERAGE_LDFLAGS) \ $(STATIC_BINARIES) \ $(PIE_LDFLAGS) \ $(NULL) --=20 2.20.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Sat Feb 7 15:04:39 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) client-ip=209.132.183.28; envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1552497114920695.6009340284535; Wed, 13 Mar 2019 10:11:54 -0700 (PDT) Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id F0A1730EEF99; Wed, 13 Mar 2019 17:11:52 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.20]) by smtp.corp.redhat.com (Postfix) with ESMTPS id C8A661024940; Wed, 13 Mar 2019 17:11:52 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id 768D9181A136; Wed, 13 Mar 2019 17:11:52 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x2DHBmmb016881 for ; Wed, 13 Mar 2019 13:11:48 -0400 Received: by smtp.corp.redhat.com (Postfix) id 184FB87A6; Wed, 13 Mar 2019 17:11:48 +0000 (UTC) Received: from worklaptop.redhat.com (ovpn-124-40.rdu2.redhat.com [10.10.124.40]) by smtp.corp.redhat.com (Postfix) with ESMTP id 16FC0605A8; Wed, 13 Mar 2019 17:11:42 +0000 (UTC) From: Cole Robinson To: libvirt-list@redhat.com Date: Wed, 13 Mar 2019 13:11:32 -0400 Message-Id: <6a3cf5c22c9a83c33bf68cd8ab50643bab3c6ace.1552496850.git.crobinso@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 2/2] docs: hacking: Add 'Code coverage reports' section X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.48]); Wed, 13 Mar 2019 17:11:53 +0000 (UTC) Content-Type: text/plain; charset="utf-8" Signed-off-by: Cole Robinson Reviewed-by: Martin Kletzander --- docs/hacking.html.in | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/docs/hacking.html.in b/docs/hacking.html.in index f99d143b7b..56608fbc9e 100644 --- a/docs/hacking.html.in +++ b/docs/hacking.html.in @@ -1412,5 +1412,34 @@ int foo() in the same way, but still make sure they get reviewed if non-triv= ial. +

Code coverage reports

+ +

+ Code coverage HTML reports can be generated with: +

+ +
+  make coverage
+
+ +

+ Reports will be generated in the cov/ directory. Point a + web browser at cov/index.html for the full report. +

+ +

+ The make coverage target is provided by gnulib. + It is a convenience helper for calling the following 3 targets in or= der. + It may be useful to occasionally call these directly. + +

    +
  • make init-coverage: run make clean and + remove all code coverage counter files (*.gcno, etc)
  • +
  • make build-coverage: run make and + make check with CFLAGS filled in with + necessary coverage flags.
  • +
  • make gen-coverage: generate the HTML report
  • +
+

--=20 2.20.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list