summaryrefslogtreecommitdiff
path: root/tests/local.mk
diff options
context:
space:
mode:
authorZack Weinberg <zackw@panix.com>2020-08-18 14:54:24 -0400
committerZack Weinberg <zackw@panix.com>2020-08-18 14:54:24 -0400
commit17a7ec16a7b72a82286034c4e0cccf964a9a8afd (patch)
treede1fdafba5e73c791baf94106c2e56e0a1522d52 /tests/local.mk
parent2f97729b39f00dce1c2f0a1b7332e8459bc89786 (diff)
downloadautoconf-17a7ec16a7b72a82286034c4e0cccf964a9a8afd.tar.gz
Don’t distribute tests/ac*.at.
tests/ac*.at are generated files containing basic test cases for all the public AC_* macros that can be invoked without arguments. They’re generated using a simple awk script, and we already require awk at build time because of automake, so there is no reason to ship them in the tarball. If we don’t ship them in the tarball, we can simplify the logic in tests/local.mk, and avoid writing these files to the source directory in a split build. This should fix a problem with split builds using Solaris’ dmake (see bug #110289). tests/mktests.sh probably doesn’t work right if any of its argument paths have spaces in their names, but that’s a separate issue. * tests/local.mk (tests/mktests.stamp): Don’t change directory or rewrite the contents of $(AUTOCONF_FILES). (TESTSUITE_GENERATED_AT): Remove $(srcdir) prefix. Add tests/acerlang.at (accidentally omitted). (CLEANFILES): Add $(TESTSUITE_GENERATED_AT), mktests.stamp and mktests.tmp. (MAINTAINERCLEANFILES): Don’t set. (EXTRA_DIST): Include only the hand-written .at files, $(TESTSUITE_HAND_AT). * configure.ac: Run AC_PROG_AWK, if for some reason AM_INIT_AUTOMAKE hasn’t done it for us. * tests/mktests.sh: Use $AWK if set in environment. Shell script linting.
Diffstat (limited to 'tests/local.mk')
-rw-r--r--tests/local.mk44
1 files changed, 21 insertions, 23 deletions
diff --git a/tests/local.mk b/tests/local.mk
index ea072613..f55e8c6d 100644
--- a/tests/local.mk
+++ b/tests/local.mk
@@ -20,7 +20,6 @@
# But if you are borrowing from this file for setting up autotest in your
# project, remember to distribute both testsuite and package.m4.
EXTRA_DIST += \
- $(TESTSUITE_AT) \
tests/local.at \
tests/mktests.sh \
tests/atlocal.in \
@@ -88,20 +87,21 @@ $(wrappers): tests/wrapper.in
## ------------ ##
TESTSUITE_GENERATED_AT = \
- $(srcdir)/tests/aclang.at \
- $(srcdir)/tests/acc.at \
- $(srcdir)/tests/acfortran.at \
- $(srcdir)/tests/acgo.at \
- $(srcdir)/tests/acgeneral.at \
- $(srcdir)/tests/acstatus.at \
- $(srcdir)/tests/acautoheader.at \
- $(srcdir)/tests/acautoupdate.at \
- $(srcdir)/tests/acspecific.at \
- $(srcdir)/tests/acfunctions.at \
- $(srcdir)/tests/acheaders.at \
- $(srcdir)/tests/actypes.at \
- $(srcdir)/tests/aclibs.at \
- $(srcdir)/tests/acprograms.at
+ tests/aclang.at \
+ tests/acc.at \
+ tests/acerlang.at \
+ tests/acfortran.at \
+ tests/acgo.at \
+ tests/acgeneral.at \
+ tests/acstatus.at \
+ tests/acautoheader.at \
+ tests/acautoupdate.at \
+ tests/acspecific.at \
+ tests/acfunctions.at \
+ tests/acheaders.at \
+ tests/actypes.at \
+ tests/aclibs.at \
+ tests/acprograms.at
TESTSUITE_HAND_AT = \
tests/suite.at \
@@ -120,6 +120,9 @@ TESTSUITE_HAND_AT = \
tests/autoscan.at \
tests/foreign.at
+CLEANFILES += $(TESTSUITE_GENERATED_AT)
+EXTRA_DIST += $(TESTSUITE_HAND_AT)
+
TESTSUITE_AT = $(TESTSUITE_GENERATED_AT) $(TESTSUITE_HAND_AT)
TESTSUITE = tests/testsuite
@@ -172,8 +175,7 @@ MAINTAINERCLEANFILES += $(TESTSUITE_GENERATED_AT)
## Producing the test files.
# The files which contain macros we check for syntax. Use $(srcdir)
-# for the benefit of non-GNU make. Fix the names in the rule below
-# where we 'cd' to $srcdir.
+# for the benefit of non-GNU make.
autoconfdir = $(srcdir)/lib/autoconf
AUTOCONF_FILES = $(autoconfdir)/general.m4 \
$(autoconfdir)/status.m4 \
@@ -201,14 +203,10 @@ $(TESTSUITE_GENERATED_AT): tests/mktests.stamp
tests/mktests.stamp : tests/mktests.sh $(AUTOCONF_FILES)
@rm -f tests/mktests.tmp
@touch tests/mktests.tmp
- cd $(srcdir) && $(SHELL) tests/mktests.sh \
- `echo " "$(AUTOCONF_FILES) | sed 's, [^ ]*/, lib/autoconf/,g'`
+ $(SHELL) $(srcdir)/tests/mktests.sh $(AUTOCONF_FILES)
@mv -f tests/mktests.tmp $@
-## Distribute the stamp file, since we distribute the generated files.
-EXTRA_DIST += tests/mktests.stamp
-CLEANFILES += tests/mktests.tmp
-MAINTAINERCLEANFILES += tests/mktests.stamp
+CLEANFILES += tests/mktests.tmp tests/mktests.stamp
## maintainer-check ##