[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Tue, 17 Mar 2009 14:40:59 +0100
Ralf Wildenhues wrote:
> Hi Jim,
> this patch enables the use of Automake's parallel-tests instead of using
> check.mk (use the 'next' branch of git Automake). With it, coreutils
> make -jN check
> still passes, but distcheck fails, for reasons not yet apparent to me.
> FAIL: mv/i-1 (exit: 255)
> Error in tempdir() using
> Parent directory
> (/tmp/coreutils/coreutils-7.1.34-1b9a13/_build/tests/../../tests/mv) is not
> at ../../tests/CuTmpdir.pm line 98
> BEGIN failed--compilation aborted.
> Use of uninitialized value in concatenation (.) or string at
> ../../tests/CuTmpdir.pm line 56.
> ../../tests/mv/i-1: failed to chdir to :
Thanks a lot for doing that!
I'll be happy to apply it once those changes hit master.
I tried that patch, reproduced the failure, and tracked it down
to what must be a change in how the internal (to 'make check's
Makefile code) $tst variable is set. Before CuTmpdir would get
a directory based on builddir, but the new $tst is in $srcdir,
and part of "make distcheck"s job is to ensure that nothing modifies
srcdir, so it makes the whole tree read-only. Then, CuTmpdir's
attempt to create a temporary directory for "make check" would fail.
If I make the following change, to use "$f" instead (also undocumented),
"make distcheck" passes once again:
diff --git a/tests/CuTmpdir.pm b/tests/CuTmpdir.pm
index 166e50b..ffad710 100644
@@ -1,7 +1,7 @@
# create, then chdir into a temporary sub-directory
-# Copyright (C) 2007-2008 Free Software Foundation, Inc.
+# Copyright (C) 2007-2009 Free Software Foundation, Inc.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/tests/check.mk b/tests/check.mk
index 0c6e7dc..a000eaa 100644
@@ -58,7 +58,7 @@ TESTS_ENVIRONMENT = \
if $(PERL) -e 'use warnings' > /dev/null 2>&1; then \
grep '^\#!/usr/bin/perl -T' "$$1" > /dev/null && T_=T || T_=; \
$(PERL) -w$$T_ -I$(srcdir) -MCoreutils \
- -M"CuTmpdir qw($$tst)" -- "$$1"; \
+ -M"CuTmpdir qw($$f)" -- "$$1"; \
echo 1>&2 "$$tst: configure did not find a usable version of Perl," \
"so skipping this test"; \
- parallel-tests, Ralf Wildenhues, 2009/03/14
- Re: parallel-tests,
Jim Meyering <=