2009-04-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+ testsuite: do not fail on systems without read permissions.
+ * tests/instfail-info.test: Do not use the `non-root'
+ requirement for testing whether files may be made unreadable;
+ instead use `test -r' and skip the test if that still works.
+ * tests/instfail-java.test: Likewise.
+ * tests/instfail-libtool.test: Likewise.
+ * tests/instfail.test: Likewise.
+ * tests/instmany-mans.test: Likewise.
+ * tests/instmany-python.test: Likewise.
+ * tests/instmany.test: Likewise.
+ * tests/parallel-tests9.test: Likewise.
+
testsuite: parallel make fixes.
This patch fixes a couple of testsuite bugs exposed with
`MAKE=make\ -jN make check'.
# This test has a few sister tests, for java, info, libtool.
-
-# non-root should catch 'chmod a-r'-challenged file systems.
-required='non-root makeinfo'
+required='makeinfo'
. ./defs || Exit 1
set -e
for file in info1.info
do
chmod a-r $file
+ test ! -r $file || Exit 77
$MAKE install-data && Exit 1
chmod u+r $file
done
# This is the java sister test of instfail.test.
-
-# non-root should catch 'chmod a-r'-challenged file systems.
-required='non-root'
. ./defs || Exit 1
set -e
for file in java1.class
do
chmod a-r $file
+ test ! -r $file || Exit 77
$MAKE install-data && Exit 1
chmod u+r $file
done
# This is the libtool sister test of instfail.test
-
-# non-root should catch 'chmod a-r'-challenged file systems.
-required='non-root libtool libtoolize'
+required='libtool libtoolize'
. ./defs || Exit 1
set -e
$MAKE install
$MAKE uninstall
+for file in liblt1.la libltn1.la
+do
+ chmod a-r $file
+ test ! -r $file || Exit 77
+ $MAKE install-exec && Exit 1
+ chmod u+r $file
+done
+
$MAKE unreadable-prog
$MAKE install-exec && Exit 1
$MAKE readable-prog
$MAKE install-exec && Exit 1
$MAKE readable-progn
-for file in liblt1.la libltn1.la
-do
- chmod a-r $file
- $MAKE install-exec && Exit 1
- chmod u+r $file
-done
-
:
# This test has a few sister tests, for java, info, libtool.
-
-# non-root should catch 'chmod a-r'-challenged file systems.
-required=non-root
. ./defs || Exit 1
set -e
$MAKE install
$MAKE uninstall
+for file in lib1.a libn1.a
+do
+ chmod a-r $file
+ test ! -r $file || Exit 77
+ $MAKE install-exec && Exit 1
+ chmod u+r $file
+done
+
$MAKE unreadable-prog
$MAKE install-exec && Exit 1
$MAKE readable-prog
$MAKE install-exec && Exit 1
$MAKE readable-progn
-for file in lib1.a libn1.a
-do
- chmod a-r $file
- $MAKE install-exec && Exit 1
- chmod u+r $file
-done
-
if grep "^EMACS = no" Makefile; then :; else
for file in lisp1.el lisp1.elc
do
# This is the mans sister test of instmany.test, see there for details.
-required=non-root # hope to catch 'chmod a-r'-challenged file systems.
. ./defs || Exit 1
set -e
for file in page3.1 page$nfiles.1 npage3.1 npage$nfiles.1; do
chmod a-r $srcdir/$file
+ test ! -r $srcdir/$file || Exit 77
$MAKE install-man1 && Exit 1
chmod u+r $srcdir/$file
done
# This is the python sister test of instmany.test, see there for details.
-required='non-root python'
+required='python'
. ./defs || Exit 1
set -e
for file in python3.py python$nfiles.py
do
chmod a-r $srcdir/$file
+ test ! -r $srcdir/$file || Exit 77
$MAKE install && Exit 1
chmod u+r $srcdir/$file
done
# For texinfos, we expand names using $(srcdir) in the first place.
# Let's hope nobody uses many texinfos.
-
-required=non-root # hope to catch 'chmod a-r'-challenged file systems.
. ./defs || Exit 1
set -e
for file in script3 script$nfiles
do
chmod a-r $srcdir/$file
+ test ! -r $srcdir/$file || Exit 77
$MAKE install-binSCRIPTS && Exit 1
chmod u+r $srcdir/$file
done
# If we cannot read the log file, then redo it as well.
chmod a-r foo.log
-$MAKE recheck >stdout && { cat stdout; Exit 1; }
-cat stdout
-grep foo.test stdout || Exit 1
+if test ! -r foo.log; then
+ $MAKE recheck >stdout && { cat stdout; Exit 1; }
+ cat stdout
+ grep foo.test stdout || Exit 1
+fi
# Ensure that recheck builds check_SCRIPTS, and that
# recheck reruns nothing if check has not been run.