From: Elia Pinto <gitter.spiros@gmail.com>
To: gitster@pobox.com
Cc: git@vger.kernel.org, gitter.spiros@gmail.com
Subject: [PATCH v2 1/1] Makefile: add a prerequisite to the coverage-report target
Date: Sat, 9 Apr 2022 03:51:45 +0000 [thread overview]
Message-ID: <20220409035145.1256570-1-gitter.spiros@gmail.com> (raw)
In-Reply-To: <xmqqpmlrl4j2.fsf@gitster.g>
Directly invoking make coverage-report as a target results in an error because
its prerequisites are missing,
This patch adds the compile-test prerequisite, which is run only once each time
the compile-report target is invoked. In practice, the developer may decide to
review the coverage-report results without necessarily rerunning for this
coverage-test, if it has already been run.
Signed-off-by: Elia Pinto <gitter.spiros@gmail.com>
---
This is the second version of the patch.
With respect to the first version, we tried to eliminate the inefficient
coverage-test invocation if the target is coverage-report, introducing a more
useful invocation order
Makefile | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
index e8aba291d7..eacdffd748 100644
--- a/Makefile
+++ b/Makefile
@@ -3378,6 +3378,8 @@ check-builtins::
.PHONY: coverage-untested-functions cover_db cover_db_html
.PHONY: coverage-clean-results
+coverage-test.file?=coverage-test.file
+
coverage:
$(MAKE) coverage-test
$(MAKE) coverage-untested-functions
@@ -3389,6 +3391,7 @@ coverage-clean-results:
$(RM) coverage-untested-functions
$(RM) -r cover_db/
$(RM) -r cover_db_html/
+ $(RM) -f $(coverage-test.file)
coverage-clean: coverage-clean-results
$(RM) $(addsuffix *.gcno,$(object_dirs))
@@ -3404,12 +3407,16 @@ coverage-test: coverage-clean-results coverage-compile
$(MAKE) CFLAGS="$(COVERAGE_CFLAGS)" LDFLAGS="$(COVERAGE_LDFLAGS)" \
DEFAULT_TEST_TARGET=test -j1 test
+$(coverage-test.file):
+ @make coverage-test
+ touch $(coverage-test.file)
+
coverage-prove: coverage-clean-results coverage-compile
$(MAKE) CFLAGS="$(COVERAGE_CFLAGS)" LDFLAGS="$(COVERAGE_LDFLAGS)" \
DEFAULT_TEST_TARGET=prove GIT_PROVE_OPTS="$(GIT_PROVE_OPTS) -j1" \
-j1 test
-coverage-report:
+coverage-report: $(coverage-test.file)
$(QUIET_GCOV)for dir in $(object_dirs); do \
$(GCOV) $(GCOVFLAGS) --object-directory=$$dir $$dir*.c || exit; \
done
--
2.35.1
next prev parent reply other threads:[~2022-04-09 3:52 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-04-08 10:54 [PATCH] Makefile: add a prerequisite to the coverage-report target Elia Pinto
2022-04-08 20:10 ` Junio C Hamano
2022-04-09 3:51 ` Elia Pinto [this message]
-- strict thread matches above, loose matches on Subject: below --
2022-04-09 4:30 [PATCH v2 1/1] " Elia Pinto
2022-04-11 18:29 ` Junio C Hamano
2022-04-11 21:27 ` Ævar Arnfjörð Bjarmason
2022-04-11 22:59 ` Junio C Hamano
2022-04-12 7:51 ` Ævar Arnfjörð Bjarmason
2022-04-12 16:02 ` Junio C Hamano
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220409035145.1256570-1-gitter.spiros@gmail.com \
--to=gitter.spiros@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).