m4/ar-lib.m4 \
m4/as.m4 \
m4/auxdir.m4 \
- m4/ccstdc.m4 \
m4/cond.m4 \
m4/cond-if.m4 \
m4/depend.m4 \
m4/depout.m4 \
m4/dmalloc.m4 \
+ m4/extra-recurs.m4 \
m4/gcj.m4 \
- m4/header.m4 \
m4/init.m4 \
m4/install-sh.m4 \
m4/lead-dot.m4 \
m4/make.m4 \
m4/minuso.m4 \
m4/missing.m4 \
- m4/mkdirp.m4 \
- m4/obsol-gt.m4 \
- m4/obsol-lt.m4 \
- m4/obsolete.m4 \
m4/options.m4 \
m4/protos.m4 \
m4/python.m4 \
# test scripts, but not from the environment.
AM_TESTS_ENVIRONMENT = \
for v in \
- me \
required \
am_using_tap \
am_serial_tests \
; do \
eval test x"\$${$$v}" = x || unset $$v; \
done;
-# The 'AM_TESTS_REEXEC=no' setting tells the tests not to needlessly
-# re-execute themselves with the shell detected at configure time, since
-# we are already running them under it explicitly in our setup (see e.g.
-# the definition of TEST_LOG_COMPILER above).
-AM_TESTS_ENVIRONMENT += AM_TESTS_REEXEC=no; export AM_TESTS_REEXEC;
# We want warning messages and explanations for skipped tests to go to
# the console if possible, so set up 'stderr_fileno_' properly.
AM_TESTS_FD_REDIRECT = 9>&2
$(generated_TESTS): $(srcdir)/gen-testsuite-part
$(srcdir)/t/testsuite-part.am: $(srcdir)/gen-testsuite-part Makefile.am
+# Hand-written tests for stuff in 'contrib/'.
+include $(srcdir)/contrib/t/local.am
+TESTS += $(contrib_TESTS)
+EXTRA_DIST += $(contrib_TESTS)
+
# Static dependencies valid for each test case.
check_SCRIPTS = t/wrap/aclocal-$(APIVERSION) t/wrap/automake-$(APIVERSION)
dist_check_DATA = \
EXTRA_DIST += defs-static.in
CLEANFILES += defs-static
+runtest: runtest.in Makefile
+ $(AM_V_at)rm -f $@ $@-t
+ $(AM_V_GEN)in=runtest.in \
+ && $(MKDIR_P) t/ax \
+ && $(do_subst) <$(srcdir)/runtest.in >$@-t \
+ && chmod a+x $@-t
+ $(generated_file_finalize)
+EXTRA_DIST += runtest.in
+CLEANFILES += runtest
+noinst_SCRIPTS = runtest
+
# If two test scripts have the same basename, they will end up sharing
# the same log file, leading to all sort of undefined and undesired
# behaviours.
.PHONY: check-no-repeated-test-name
## Checking the list of tests.
-test_subdirs = t t/pm t/perf
+test_subdirs = t t/pm t/perf contrib/t
include $(srcdir)/t/CheckListOfTests.am
# Run the testsuite with the installed aclocal and automake.
clean-local: clean-local-check
.PHONY: clean-local-check
clean-local-check:
- -set x t/*.dir; shift; \
- if test "$$#,$$1" = "1,*.dir"; then \
- : there is no test directory to clean; \
- else \
- find "$$@" -type d ! -perm -700 -exec chmod u+rwx {} ';'; \
- rm -rf "$$@"; \
- fi;
+## Directries candidate to be test directories match this wildcard.
+ @globs='t/*.dir t/*/*.dir */t/*.dir */t/*/*.dir'; \
+## The 'nullglob' bash option is not portable, so use perl.
+ dirs=`$(PERL) -e "print join(' ', glob('$$globs'));"` || exit 1; \
+ if test -n "$$dirs"; then \
+## Errors in find are acceptable, errors in rm are not.
+ find $$dirs -type d ! -perm -700 -exec chmod u+rwx {} ';'; \
+ echo " rm -rf $$dirs"; \
+ rm -rf $$dirs || exit 1; \
+ fi
## ---------------- ##
exit 1; \
fi
-# Ensure tests are world-executable.
-# FIXME: this should be turned into a maintainer check...
-dist-hook:
- $(am__cd) $(distdir)/t && chmod a+rx *.sh *.tap
-
## --------------------------- ##
## Perl coverage statistics. ##