[ng] parallel-tests: support "TESTS = $(srcdir)/foo.test"
This change fixes a small but annoying limitation of the parallel
testsuite harness. Before this change, if $(TESTS) contained a test
case with '$(srcdir)' in its name:
TESTS = $(srcdir)/foo.test
the parallel testsuite driver would have created the 'foo.log' and
'foo.trs' files in the source directory rather than in the build
directory. This made it impossible to employ useful constructs of the
following kind:
TESTS = $(wildcard *.test)
in a VPATH setup. In fact, the idiom as written above would have missed
any test in the source directory (i.e., any non-generated tests), while
the "corrected" idiom:
would have created the '.log' and '.trs' files for any distributed test
in the source directory.
After this change, the "corrected" idiom above is usable, and created
'.log' and '.trs' files in the build directory.
* doc/automake.texi: Don't warn about the old limitation anymore.
* NG-NEWS: Document that that limitation has been lifted.
* lib/am/check.am (am__cooked_tests): New variable, containing all the
entries of $(TESTS) with $(srcdir) prefix (if present) removed.
* am__cooked_tests: Likewise, but for the contents of $(XFAIL_TESTS).
* automake.in (handle_tests): Adjust the definition of $(TEST_LOGS) to
use '$(am__cooked_tests)' instead of raw '$(TESTS)'.
* t/parallel-tests-srcdir-in-test-name.sh: Adjust to test the new
semantics.
* t/list-of-tests.mk (XFAIL_TESTS): Remove the above test, it now
passes.
* t/parallel-tests-dynamic.sh: Enhance a little.