summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJim Meyering <meyering@redhat.com>2012-09-14 09:25:33 +0200
committerJim Meyering <meyering@redhat.com>2012-09-14 10:20:03 +0200
commit0b4abe7b42a8236f9d75c4e6f9ddb30111b63990 (patch)
tree55ff916726bf807506505105b5a4415d4446a3d9
parent8d4924f10792cd443efafe8405f70a75d66cd9d5 (diff)
downloadcoreutils-0b4abe7b42a8236f9d75c4e6f9ddb30111b63990.tar.xz
tests: reenable "make -C tests ..." commands
The README-documented way to run individual tests was invalidated by the conversion of tests/ to non-recursive make. Add a GNUmakefile shim to reenable that usage. * tests/GNUmakefile: New file, so that "make -C tests ..." works like it did before the conversion of tests/ to non-recursive build. Reported by Bernhard Voelker. * Makefile.am (EXTRA_DIST): Add it. * cfg.mk (sc_prohibit_tab_based_indentation): Also exempt any GNUmakefile from this syntax-check.
-rw-r--r--Makefile.am1
-rw-r--r--cfg.mk5
-rw-r--r--tests/GNUmakefile20
3 files changed, 24 insertions, 2 deletions
diff --git a/Makefile.am b/Makefile.am
index dfbb59195..0232090b8 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -53,6 +53,7 @@ EXTRA_DIST = \
cfg.mk \
dist-check.mk \
maint.mk \
+ tests/GNUmakefile \
thanks-gen
gen_progs_lists = $(top_srcdir)/build-aux/gen-lists-of-programs.sh
diff --git a/cfg.mk b/cfg.mk
index 0deb3cb77..37fa22e4f 100644
--- a/cfg.mk
+++ b/cfg.mk
@@ -539,10 +539,11 @@ exclude_file_name_regexp--sc_prohibit_fail_0 = \
(^.*/git-hooks/commit-msg|^tests/init\.sh|Makefile\.am|\.mk|.*\.texi)$$
exclude_file_name_regexp--sc_prohibit_atoi_atof = ^lib/euidaccess-stat\.c$$
-tbi_1 = ^tests/pr/|(^gl/lib/reg.*\.c\.diff|Makefile(\.am)?|\.mk|^man/help2man)$$
+tbi_1 = ^tests/pr/|(^gl/lib/reg.*\.c\.diff|\.mk|^man/help2man)$$
tbi_2 = ^scripts/git-hooks/(pre-commit|pre-applypatch|applypatch-msg)$$
+tbi_3 = (GNU)?[Mm]akefile(\.am)?$$
exclude_file_name_regexp--sc_prohibit_tab_based_indentation = \
- $(tbi_1)|$(tbi_2)
+ $(tbi_1)|$(tbi_2)|$(tbi_3)
exclude_file_name_regexp--sc_preprocessor_indentation = \
^(gl/lib/rand-isaac\.[ch]|gl/tests/test-rand-isaac\.c)$$
diff --git a/tests/GNUmakefile b/tests/GNUmakefile
new file mode 100644
index 000000000..3c178a2c8
--- /dev/null
+++ b/tests/GNUmakefile
@@ -0,0 +1,20 @@
+# Provide a compatibility layer so that the commands used before the
+# conversion of tests/ to non-recursive make still work. To do that, we
+# must rerun the "make check" from the parent, and with tests/ prefixed
+# onto any TESTS values. The SUBDIRS=. is to prevent the top-level check
+# rules from descending into e.g., gnulib-test/.
+
+.PHONY: all
+all:
+ @echo 'tests/GNUmakefile: did you mean to make "check"?' 1>&2
+ @exit 1
+
+ifeq ($(TESTS),)
+tests =
+else
+tests = TESTS=$(addprefix tests/,$(TESTS))
+endif
+
+.PHONY: check
+check:
+ cd .. && $(MAKE) $@ $(tests) SUBDIRS=.