summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Moore <paul@paul-moore.com>2021-08-02 23:44:58 -0400
committerPaul Moore <paul@paul-moore.com>2021-08-12 12:38:06 -0400
commitf8786326782010fac9fc71dc8509db76cdaa1e55 (patch)
tree8256f5e53b5b5f2b82744f1e3e7922c53ec54117
parentc3baa68fe94bf855671b599dbdda0db2eb6df589 (diff)
downloadlibseccomp-f8786326782010fac9fc71dc8509db76cdaa1e55.tar.gz
build: reorganize the code coverage targets
This is arguably the way it should have been done in the beginning but TravisCI and Coveralls masked the need for proper standalone code coverage tests. With this change simply enabling code coverage during ./configure and following with a code coverage build should generate proper gcov/lcov data and a local HTML report, example: % ./configure --enable-code-coverage % make check-code-coverage Acked-by: Tom Hromatka <tom.hromatka@oracle.com> Signed-off-by: Paul Moore <paul@paul-moore.com> (imported from commit a415ef0938c2fc8139d45f89a722d132367077cc)
-rw-r--r--Makefile.am19
-rw-r--r--src/Makefile.am7
-rw-r--r--tests/Makefile.am4
3 files changed, 10 insertions, 20 deletions
diff --git a/Makefile.am b/Makefile.am
index 650dfae..b7d491f 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -16,6 +16,13 @@
# along with this library; if not, see <http://www.gnu.org/licenses>.
#
+@CODE_COVERAGE_RULES@
+
+CODE_COVERAGE_IGNORE_PATTERN = \
+ /usr/include/bits/* \
+ */src/arch-syscall-check.c \
+ */src/syscalls.perf
+
ACLOCAL_AMFLAGS = -I m4
SUBDIRS = include src tools tests doc
@@ -43,16 +50,8 @@ check-syntax:
@./tools/check-syntax
if CODE_COVERAGE_ENABLED
-check-code-coverage: check-build
- ${MAKE} ${AM_MAKEFLAGS} -C tests check-code-coverage
-endif
-
-if CODE_COVERAGE_ENABLED
-test-code-coverage: check-build
- ${MAKE} ${AM_MAKEFLAGS} -C src check-code-coverage
- LIBSECCOMP_TSTCFG_TYPE=basic \
- ${MAKE} ${AM_MAKEFLAGS} check-code-coverage
- LIBSECCOMP_TSTCFG_TYPE=bpf-sim \
+test-code-coverage:
+ LIBSECCOMP_TSTCFG_TYPE=basic,bpf-sim \
${MAKE} ${AM_MAKEFLAGS} check-code-coverage
endif
diff --git a/src/Makefile.am b/src/Makefile.am
index 10154e1..2a0bf12 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -16,10 +16,6 @@
# along with this library; if not, see <http://www.gnu.org/licenses>.
#
-@CODE_COVERAGE_RULES@
-
-CODE_COVERAGE_IGNORE_PATTERN = /usr/include/bits/* */arch-syscall-check.c
-
SUBDIRS = .
if ENABLE_PYTHON
SUBDIRS += python
@@ -61,8 +57,7 @@ lib_LTLIBRARIES = libseccomp.la
arch_syscall_dump_SOURCES = arch-syscall-dump.c ${SOURCES_ALL}
arch_syscall_check_SOURCES = arch-syscall-check.c ${SOURCES_ALL}
-arch_syscall_check_CFLAGS = ${AM_CFLAGS} ${CODE_COVERAGE_CFLAGS}
-arch_syscall_check_LDFLAGS = ${CODE_COVERAGE_LDFLAGS}
+arch_syscall_check_CFLAGS = ${AM_CFLAGS}
libseccomp_la_SOURCES = ${SOURCES_ALL}
libseccomp_la_CPPFLAGS = ${AM_CPPFLAGS} ${CODE_COVERAGE_CPPFLAGS}
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 13d3157..b39ee06 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -16,10 +16,6 @@
# along with this library; if not, see <http://www.gnu.org/licenses>.
#
-@CODE_COVERAGE_RULES@
-
-CODE_COVERAGE_IGNORE_PATTERN = /usr/include/bits/* */arch-syscall-check.c
-
if CODE_COVERAGE_ENABLED
DBG_STATIC =
else