Makefile: Enable support for 'make check'

With all test suites running all variants by default, add the various
testsuite runners to TESTS variable so 'make check' will execute them.

Introduce --enable-distcheck configure flag for internal use during
builds triggered by 'make distcheck'. This flag will force TESTS
variable to remain empty, so 'make check' run as part of distcheck will
not call any test suite: Most of the test suites require privileged
execution, 'make distcheck' usually doesn't and probably shouldn't.
Assuming the latter is used during the release process, it may even not
run on a machine which is up to date enough to generate meaningful test
suite results. Hence spare the release process from the likely pointless
delay imposed by 'make check'.

Signed-off-by: Phil Sutter <phil@nwl.cc>
This commit is contained in:
Phil Sutter 2023-09-08 18:16:29 +02:00
parent 106f315434
commit df19bf51d4
3 changed files with 27 additions and 0 deletions

13
.gitignore vendored
View File

@ -23,6 +23,19 @@ nftversion.h
*.payload.got
tests/build/tests.log
# make check results
/test-suite.log
/tests/build/run-tests.sh.log
/tests/build/run-tests.sh.trs
/tests/json_echo/run-test.py.log
/tests/json_echo/run-test.py.trs
/tests/monitor/run-tests.sh.log
/tests/monitor/run-tests.sh.trs
/tests/py/nft-test.py.log
/tests/py/nft-test.py.trs
/tests/shell/run-tests.sh.log
/tests/shell/run-tests.sh.trs
# Debian package build temporary files
build-stamp

View File

@ -23,6 +23,7 @@ libnftables_LIBVERSION = 2:0:1
###############################################################################
ACLOCAL_AMFLAGS = -I m4
AM_DISTCHECK_CONFIGURE_FLAGS = --enable-distcheck
EXTRA_DIST =
BUILT_SOURCES =
@ -431,3 +432,11 @@ doc_DATA = files/nftables/main.nft
tools/nftables.service: tools/nftables.service.in ${top_builddir}/config.status
${AM_V_GEN}${MKDIR_P} tools
${AM_V_at}sed -e 's|@''sbindir''@|${sbindir}|g;s|@''pkgsysconfdir''@|${pkgsysconfdir}|g' <${srcdir}/tools/nftables.service.in >$@
if !BUILD_DISTCHECK
TESTS = tests/build/run-tests.sh \
tests/json_echo/run-test.py \
tests/monitor/run-tests.sh \
tests/py/nft-test.py \
tests/shell/run-tests.sh
endif

View File

@ -154,6 +154,11 @@ AC_CONFIG_COMMANDS([nftversion.h], [
# so have 'make' call date and pass the value to every 'gcc' call
AC_SUBST([MAKE_STAMP], ["\$(shell date +%s)"])
AC_ARG_ENABLE([distcheck],
AS_HELP_STRING([--enable-distcheck], [Build for distcheck]),
[enable_distcheck=yes], [])
AM_CONDITIONAL([BUILD_DISTCHECK], [test "x$enable_distcheck" = "xyes"])
AC_CONFIG_FILES([ \
Makefile \
libnftables.pc \