From c46137bdddbb3247d2739094cb820e5071e8a819 Mon Sep 17 00:00:00 2001 From: "Bi-Ruei, Chiu" Date: Mon, 8 May 2017 17:04:38 +0800 Subject: [PATCH] Merge velichkov's commit 598e7b45... to mouse07410's asn1c repository Excerpt from commit log : Do not generate coverage data for the test C code When compiling tests remove the CODE_COVERAGE_CFLAGS flags from CFLAGS and also add CFLAGS = $(filter-out $(CODE_COVERAGE_CFLAGS), @CFLAGS@) to 'skeleton/Makefile.am' to avoid compilation error in vlm's repository. --- asn1c/tests/Makefile.am | 14 +++++++++++++- asn1c/tests/check-assembly.sh | 20 +++++++++++++------- m4/ax_code_coverage.m4 | 28 +++++++++++++++------------- skeletons/Makefile.am | 1 + skeletons/tests/Makefile.am | 3 +++ 5 files changed, 45 insertions(+), 21 deletions(-) diff --git a/asn1c/tests/Makefile.am b/asn1c/tests/Makefile.am index 3bb0f9d7..9660aaeb 100644 --- a/asn1c/tests/Makefile.am +++ b/asn1c/tests/Makefile.am @@ -4,7 +4,19 @@ SUBDIRS = check-src dist_check_SCRIPTS = check-assembly.sh -TESTS_ENVIRONMENT= CC="${CC}" CFLAGS="${TESTSUITE_CFLAGS} ${CFLAGS}" CXXFLAGS="${CXXFLAGS}" srcdir=${srcdir} abs_top_srcdir=${abs_top_srcdir} abs_top_builddir=${abs_top_builddir} ${srcdir}/check-assembly.sh +#Filter out the coverage options from CFLAGS as we don't need +#code coverage data for the tests executables +CFLAGS = $(filter-out $(CODE_COVERAGE_CFLAGS), @CFLAGS@) + +TESTS_ENVIRONMENT= \ + CC="${CC}" \ + CFLAGS="${TESTSUITE_CFLAGS} ${CFLAGS}" \ + CXXFLAGS="${CXXFLAGS}" \ + LDFLAGS="${LDFLAGS}" \ + srcdir=${srcdir} \ + abs_top_srcdir=${abs_top_srcdir} \ + abs_top_builddir=${abs_top_builddir} \ + ${srcdir}/check-assembly.sh TESTS = TESTS += check-src/check-03.-fwide-types.c diff --git a/asn1c/tests/check-assembly.sh b/asn1c/tests/check-assembly.sh index baa433fc..4887eed3 100755 --- a/asn1c/tests/check-assembly.sh +++ b/asn1c/tests/check-assembly.sh @@ -53,28 +53,34 @@ asn_module=$(echo "${abs_top_srcdir}/tests/${testno}"-*.asn1) cat > "$testdir/Makefile" <. -#serial 21 +#serial 23 AC_DEFUN([AX_CODE_COVERAGE],[ dnl Check for --enable-code-coverage @@ -123,12 +118,19 @@ AC_DEFUN([AX_CODE_COVERAGE],[ ]) dnl Build the code coverage flags - dnl Define CODE_COVERAGE_LDFLAGS for backwards compatibility CODE_COVERAGE_CPPFLAGS="-DNDEBUG" - CODE_COVERAGE_CFLAGS="-O0 -g -fprofile-arcs -ftest-coverage" - CODE_COVERAGE_CXXFLAGS="-O0 -g -fprofile-arcs -ftest-coverage" - CODE_COVERAGE_LIBS="-lgcov" - CODE_COVERAGE_LDFLAGS="$CODE_COVERAGE_LIBS" + AX_CHECK_COMPILE_FLAG([-coverage], [ + CODE_COVERAGE_CFLAGS="-O0 -g -coverage" + CODE_COVERAGE_CXXFLAGS="-O0 -g -coverage" + CODE_COVERAGE_LDFLAGS="-coverage" + CODE_COVERAGE_LIBS="" + ], [ + CODE_COVERAGE_CFLAGS="-O0 -g -fprofile-arcs -ftest-coverage" + CODE_COVERAGE_CXXFLAGS="-O0 -g -fprofile-arcs -ftest-coverage" + CODE_COVERAGE_LIBS="-lgcov" + dnl Define CODE_COVERAGE_LDFLAGS for backwards compatibility + CODE_COVERAGE_LDFLAGS="$CODE_COVERAGE_LIBS" + ]) AC_SUBST([CODE_COVERAGE_CPPFLAGS]) AC_SUBST([CODE_COVERAGE_CFLAGS]) @@ -218,7 +220,7 @@ CODE_COVERAGE_LCOV_RMOPTS ?= $(CODE_COVERAGE_LCOV_RMOPTS_DEFAULT) CODE_COVERAGE_GENHTML_OPTIONS_DEFAULT ?=\ $(if $(CODE_COVERAGE_BRANCH_COVERAGE),\ --rc genhtml_branch_coverage=$(CODE_COVERAGE_BRANCH_COVERAGE)) -CODE_COVERAGE_GENHTML_OPTIONS ?= $(CODE_COVERAGE_GENHTML_OPTIONS_DEFAULTS) +CODE_COVERAGE_GENHTML_OPTIONS ?= $(CODE_COVERAGE_GENHTML_OPTIONS_DEFAULT) CODE_COVERAGE_IGNORE_PATTERN ?= code_coverage_v_lcov_cap = $(code_coverage_v_lcov_cap_$(V)) diff --git a/skeletons/Makefile.am b/skeletons/Makefile.am index 99789460..f201de02 100644 --- a/skeletons/Makefile.am +++ b/skeletons/Makefile.am @@ -1,5 +1,6 @@ SUBDIRS = . tests +CFLAGS = $(filter-out $(CODE_COVERAGE_CFLAGS), @CFLAGS@) dist_pkgdata_DATA = \ ${srcdir}/README \ diff --git a/skeletons/tests/Makefile.am b/skeletons/tests/Makefile.am index 26db11b1..b716f579 100644 --- a/skeletons/tests/Makefile.am +++ b/skeletons/tests/Makefile.am @@ -14,6 +14,9 @@ check_PROGRAMS = \ check-PER \ check-PER-INTEGER +#Filter out the coverage options from CFLAGS as we don't need +#code coverage data for the tests executables +CFLAGS = $(filter-out $(CODE_COVERAGE_CFLAGS), @CFLAGS@) AM_CPPFLAGS = -I$(top_srcdir)/skeletons $(TESTSUITE_CFLAGS) AM_LDFLAGS = $(top_builddir)/skeletons/libasn1cskeletons.la LDADD = -lm