This reverts commit
24e3b4ee2f8cb9f72dd94a05a893f3d4e88b7835,
because it re-opened the bug fixed by
v1.11-10-g218e678.
2010-09-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
parallel-tests: avoid command-line length limit issue.
* automake.in (handle_tests): New argument $makefile, new
substitution %MAKEFILE%.
(generate_makefile): Adjust.
* lib/am/check.am [%?PARALLEL_TESTS%] (check-TESTS): Pass
sanitized TEST_LOGS value as makefile snippet on standard
input to $(MAKE), to avoid exceeding the command line limit on
w32 (MSYS).
* NEWS: Update.
Report by Bob Friesenhahn.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+2010-10-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ Revert "parallel-tests: avoid command-line length limit issue."
+ This reverts commit 24e3b4ee2f8cb9f72dd94a05a893f3d4e88b7835,
+ because it re-opened the bug fixed by v1.11-10-g218e678.
+
+ 2010-09-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ parallel-tests: avoid command-line length limit issue.
+ * automake.in (handle_tests): New argument $makefile, new
+ substitution %MAKEFILE%.
+ (generate_makefile): Adjust.
+ * lib/am/check.am [%?PARALLEL_TESTS%] (check-TESTS): Pass
+ sanitized TEST_LOGS value as makefile snippet on standard
+ input to $(MAKE), to avoid exceeding the command line limit on
+ w32 (MSYS).
+ * NEWS: Update.
+ Report by Bob Friesenhahn.
+
2010-09-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
parallel-tests: avoid command-line length limit issue.
- The AM_COND_IF macro also works if the shell expression for the conditional
is no longer valid for the condition.
- - The `parallel-tests' driver works around a problem with command-line
- length limits with `make check' on w32 (MSYS).
-
* Long standing bugs:
- On Darwin 9, `pythondir' and `pyexecdir' pointed below `/Library/Python'
}
-# handle_tests ($MAKEFILE)
-# ------------------------
# Handle TESTS variable and other checks.
-sub handle_tests ($)
+sub handle_tests
{
- my ($makefile) = @_;
-
if (option 'dejagnu')
{
&handle_tests_dejagnu;
push (@check_tests, 'check-TESTS');
$output_rules .= &file_contents ('check', new Automake::Location,
COLOR => !! option 'color-tests',
- PARALLEL_TESTS => !! option 'parallel-tests',
- MAKEFILE => basename $makefile);
+ PARALLEL_TESTS => !! option 'parallel-tests');
# Tests that are known programs should have $(EXEEXT) appended.
# For matching purposes, we need to adjust XFAIL_TESTS as well.
handle_tags;
handle_minor_options;
# Must come after handle_programs so that %known_programs is up-to-date.
- handle_tests ($makefile);
+ handle_tests;
# This must come after most other rules.
handle_dist;
@list='$(RECHECK_LOGS)'; test -z "$$list" || rm -f $$list
@test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG)
@list='$(TEST_LOGS)'; \
- { echo "TEST_LOGS = \\"; \
- for f in $$list; do test .log = $$f || echo "$$f \\"; done; \
- } | sed '$$s/\\$$//' \
- | $(MAKE) -f Makefile -f - $(AM_MAKEFLAGS) $(TEST_SUITE_LOG)
+ list=`for f in $$list; do \
+ test .log = $$f || echo $$f; \
+ done | tr '\012\015' ' '`; \
+ $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) TEST_LOGS="$$list"
.log.html:
@list='$(RST2HTML) $$RST2HTML rst2html rst2html.py'; \
## we rely on .PHONY to work portably.
@test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG)
@list='$(TEST_LOGS)'; \
- { echo "TEST_LOGS = \\"; \
- for f in $$list; do test .log = $$f || echo "$$f \\"; done; \
- } | sed '$$s/\\$$//' \
- | $(MAKE) -f %MAKEFILE% -f - $(AM_MAKEFLAGS) $(TEST_SUITE_LOG)
+ list=`for f in $$list; do \
+ test .log = $$f || echo $$f; \
+ done | tr '\012\015' ' '`; \
+ $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) TEST_LOGS="$$list"
AM_RECURSIVE_TARGETS += check
@list='$(RECHECK_LOGS)'; test -z "$$list" || rm -f $$list
@test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG)
@list='$(TEST_LOGS)'; \
- { echo "TEST_LOGS = \\"; \
- for f in $$list; do test .log = $$f || echo "$$f \\"; done; \
- } | sed '$$s/\\$$//' \
- | $(MAKE) -f Makefile -f - $(AM_MAKEFLAGS) $(TEST_SUITE_LOG)
+ list=`for f in $$list; do \
+ test .log = $$f || echo $$f; \
+ done | tr '\012\015' ' '`; \
+ $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) TEST_LOGS="$$list"
.log.html:
@list='$(RST2HTML) $$RST2HTML rst2html rst2html.py'; \