protobuf/0007-add-coverage-compile-option.patch
chengzrz f88e94e3d4 add compile option for coverage
Signed-off-by: chengzrz <czrzrichard@gmail.com>
(cherry picked from commit b81a308b0e20fc18b47f4ffdbb87926f1f23ad95)
2023-11-27 16:14:21 +08:00

50 lines
1.4 KiB
Diff

From c87fadf8be81e48697eca3308981ec3a684ecfcc Mon Sep 17 00:00:00 2001
From: chengzrz <czrzrichard@gmail.com>
Date: Wed, 16 Nov 2022 17:47:10 +0800
Subject: [PATCH] protobuf: add coverage compile option
Type:testcode
reason:add coverage compile option
Signed-off-by: chengzrz <czrzrichard@gmail.com>
---
configure.ac | 7 +++++++
src/Makefile.am | 4 ++++
2 files changed, 11 insertions(+)
diff --git a/configure.ac b/configure.ac
index eb70a76..2ef1668 100644
--- a/configure.ac
+++ b/configure.ac
@@ -72,6 +72,13 @@ AC_ARG_WITH([protoc],
[use the given protoc command instead of building a new one when building tests (useful for cross-compiling)])],
[],[with_protoc=no])
+AC_ARG_ENABLE([coverage],
+ [AS_HELP_STRING([--enable-coverage],
+ [generate coverage report])],
+ [coverage=yes],[coverage=no])
+
+AM_CONDITIONAL([HAVE_COVERAGE], [test "x$coverage" == "xyes"])
+
# Checks for programs.
AC_PROG_CC
AC_PROG_CXX
diff --git a/src/Makefile.am b/src/Makefile.am
index 9af3db1..81d1418 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -21,6 +21,10 @@ endif
PROTOBUF_VERSION = 25:0:0
PROTOBUF_OPT_FLAG += -Wl,-z,now -fstack-check
+if HAVE_COVERAGE
+PROTOBUF_OPT_FLAG += -fprofile-arcs -ftest-coverage
+endif
+
if GCC
# Turn on all warnings except for sign comparison (we ignore sign comparison
# in Google so our code base have tons of such warnings).
--
2.26.3