bug-automake
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Segmentation fault with Solaris /usr/xpg4/bin/make


From: Stefano Lattarini
Subject: Segmentation fault with Solaris /usr/xpg4/bin/make
Date: Thu, 5 Aug 2010 19:40:15 +0200
User-agent: KMail/1.13.3 (Linux/2.6.30-2-686; KDE/4.4.4; i686; ; )

Hello automakers.

The test `parallel-tests9.test' fails on Solaris 10 when using 
/usr/xpg4/bin/make as $MAKE, due to a submake invocation returning
an exit status `139' (i.e. a "Segmantation fault").

The test has a similar behaviour on Debian with Heirloom make as 
$MAKE:
 1. If the `MALLOC_CHECK_' env var is unset, the test fails due
    to a submake invocation returning an exit status `134' (i.e.
    an "Abort").
 2. If the `MALLOC_CHECK_' env var is set to `0', the test fails
    due to a submake invocation returning an exit status `139'
    (i.e. a "Segementation fault" again).
 3. If the `MALLOC_CHECK_' env var is set to `1', the test passes!

See the attachements for verbose logs.

Sadly, I still haven't found a minimal testcase exposing the problem.
I'll let you know if I find more details, or hopefully even a fix.

Regards,
   Stefano
+ unset MALLOC_CHECK_
/home/stefano/src/automake/tests:/home/stefano/go/bin:/home/stefano/bin/linux:/home/stefano/bin:/usr/local/bin:/opt/bin:/usr/lib/jvm/java-6-sun-1.6.0.20/bin:/usr/games:/usr/bin:/usr/sbin:/bin:/sbin
=== Running test ./parallel-tests9.test
++ pwd
/home/stefano/src/automake/tests/parallel-tests9.dir
+ set -e
+ cat
+ cat
+ cat
+ cat
+ cat
+ chmod a+x foo.test bar.test baz.test
+ aclocal-1.11a -Werror
+ autoconf
+ automake-1.11a --foreign -Werror -Wall -a
+ ./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether heirloom-make sets $(MAKE)... yes
configure: creating ./config.status
config.status: creating Makefile
+ heirloom-make check
heirloom-make: fatal error.
Current working directory /home/stefano/src/automake/tests/parallel-tests9.dir
heirloom-make: fatal error.
Current working directory /home/stefano/src/automake/tests/parallel-tests9.dir
heirloom-make: fatal error.
+ cat stdout
        heirloom-make  bla
        echo bla > bla
        heirloom-make  check-TESTS
PASS: foo.test
FAIL: bar.test
FAIL: baz.test
===================
2 of 3 tests failed
See ./mylog.log
===================
*** Error code 1 (bu21)
The following command caused the error:
case $- in *e*) set +e;; esac;                                          \
list='foo.log bar.log baz.log';                                         \
results=`for f in $list; do                                     \
           read line < $f && echo "$line" || echo FAIL; \
         done`;                                                 \
all=`echo "$results" | sed '/^$/d' | wc -l | sed -e 's/^[        ]*//'`; \
fail=`echo "$results" | grep -c '^FAIL'`;                       \
pass=`echo "$results" | grep -c '^PASS'`;                       \
skip=`echo "$results" | grep -c '^SKIP'`;                       \
xfail=`echo "$results" | grep -c '^XFAIL'`;                     \
xpass=`echo "$results" | grep -c '^XPASS'`;                     \
failures=`expr $fail + $xpass`;                         \
all=`expr $all - $skip`;                                        \
if test "$all" -eq 1; then tests=test; All=;                    \
else tests=tests; All="All "; fi;                               \
case fail=$fail:xpass=$xpass:xfail=$xfail in                    \
  fail=0:xpass=0:xfail=0)                                       \
    msg="$All$all $tests passed.  ";                            \
    exit=true;;                                                 \
  fail=0:xpass=0:xfail=*)                                       \
    msg="$All$all $tests behaved as expected";          \
    if test "$xfail" -eq 1; then xfailures=failure;             \
    else xfailures=failures; fi;                                \
    msg="$msg ($xfail expected $xfailures).  ";         \
    exit=true;;                                                 \
  fail=*:xpass=0:xfail=*)                                       \
    msg="$fail of $all $tests failed.  ";                       \
    exit=false;;                                                \
  fail=*:xpass=*:xfail=*)                                       \
    msg="$failures of $all $tests did not behave as expected"; \
    if test "$xpass" -eq 1; then xpasses=pass;                  \
    else xpasses=passes; fi;                                    \
    msg="$msg ($xpass unexpected $xpasses).  ";         \
    exit=false;;                                                \
  *)                                                            \
    echo >&2 "incorrect case"; exit 4;;                         \
esac;                                                           \
if test "$skip" -ne 0; then                                     \
  if test "$skip" -eq 1; then                                   \
    msg="$msg($skip test was not run).  ";                      \
  else                                                          \
    msg="$msg($skip tests were not run).  ";                    \
  fi;                                                           \
fi;                                                             \
{                                                               \
  echo "parallel-tests9 1.0: ./mylog.log" |     \
    sed 's/.*/   &   /;h;s/./=/g;p;x;p;g;p;s/.*//';                             
                \
  echo "$msg";                                                  \
  echo;                                                         \
  echo ".. contents:: :depth: 2";                               \
  echo;                                                         \
  for f in $list; do                                            \
    read line < $f;                                             \
    case $line in                                               \
      PASS:*|XFAIL:*);;                                         \
      *) echo; cat $f;;                                 \
    esac;                                                       \
  done;                                                         \
} >mylog.log.tmp;                                       \
mv mylog.log.tmp mylog.log;                     \
if test "$failures" -ne 0; then                         \
  msg="${msg}See ./mylog.log.  ";               \
  if test -n ""; then                   \
    msg="${msg}Please report to .  ";   \
  fi;                                                           \
fi;                                                             \
test x"$VERBOSE" = x || $exit || cat mylog.log; \
red=; grn=; lgn=; blu=; std=;                                           \
if $exit; then                                                  \
  echo -n "$grn";                               \
 else                                                           \
  echo -n "$red";                               \
fi;                                                             \
echo "$msg" | gawk '{                            n = split($0, lines, "\\.  "); 
max = 0;                 for (i = 1; i <= n; ++i)                               
 if (max < length(lines[i]))                             max = 
length(lines[i]);                                 for (i = 0; i < max; ++i) 
line = line "=";              print line;                                       
      for (i = 1; i <= n; ++i) if (lines[i]) print lines[i]; print line;        
                                      }';                                    \
echo -n "$std";                         \
$exit
*** Error code 1 (bu21)
The following command caused the error:
list='foo.log bar.log baz.log';                                         \
list=`for f in $list; do                                        \
  test .log = $f || echo $f;                                    \
done | tr '\012\015' '  '`;                                     \
heirloom-make  mylog.log TEST_LOGS="$list"
*** Error code 1 (bu21)
+ heirloom-make recheck
*** glibc detected *** heirloom-make: free(): invalid next size (normal): 
0x09d5a020 ***
======= Backtrace: =========
/lib/i686/cmov/libc.so.6(+0x6b321)[0xb7cf3321]
/lib/i686/cmov/libc.so.6(+0x6cb78)[0xb7cf4b78]
/lib/i686/cmov/libc.so.6(cfree+0x6d)[0xb7cf7c5d]
/lib/i686/cmov/libc.so.6(closedir+0x28)[0xb7d1b328]
heirloom-make[0x8050afc]
heirloom-make[0x804b8e6]
heirloom-make[0x80515b5]
heirloom-make[0x804e889]
heirloom-make[0x8060ac5]
heirloom-make[0x80541c4]
heirloom-make[0x8055420]
heirloom-make[0x8057acd]
/lib/i686/cmov/libc.so.6(__libc_start_main+0xe6)[0xb7c9ec76]
heirloom-make(__gxx_personality_v0+0xfd)[0x804a071]
======= Memory map: ========
08048000-08073000 r-xp 00000000 03:47 1176796    /opt/heirloom/bin/make
08073000-08075000 rw-p 0002b000 03:47 1176796    /opt/heirloom/bin/make
08075000-080ad000 rw-p 00000000 00:00 0 
09d4e000-09d6f000 rw-p 00000000 00:00 0          [heap]
b7900000-b7921000 rw-p 00000000 00:00 0 
b7921000-b7a00000 ---p 00000000 00:00 0 
b7a42000-b7a7a000 r--p 002bf000 03:47 3365415    /usr/lib/locale/locale-archive
b7a7a000-b7c7a000 r--p 00000000 03:47 3365415    /usr/lib/locale/locale-archive
b7c7a000-b7c84000 r-xp 00000000 03:47 3170391    
/lib/i686/cmov/libnss_files-2.11.2.so
b7c84000-b7c85000 r--p 00009000 03:47 3170391    
/lib/i686/cmov/libnss_files-2.11.2.so
b7c85000-b7c86000 rw-p 0000a000 03:47 3170391    
/lib/i686/cmov/libnss_files-2.11.2.so
b7c86000-b7c88000 rw-p 00000000 00:00 0 
b7c88000-b7dc8000 r-xp 00000000 03:47 3170393    /lib/i686/cmov/libc-2.11.2.so
b7dc8000-b7dc9000 ---p 00140000 03:47 3170393    /lib/i686/cmov/libc-2.11.2.so
b7dc9000-b7dcb000 r--p 00140000 03:47 3170393    /lib/i686/cmov/libc-2.11.2.so
b7dcb000-b7dcc000 rw-p 00142000 03:47 3170393    /lib/i686/cmov/libc-2.11.2.so
b7dcc000-b7dcf000 rw-p 00000000 00:00 0 
b7dcf000-b7dec000 r-xp 00000000 03:47 3156182    /lib/libgcc_s.so.1
b7dec000-b7ded000 rw-p 0001c000 03:47 3156182    /lib/libgcc_s.so.1
b7ded000-b7e11000 r-xp 00000000 03:47 3170377    /lib/i686/cmov/libm-2.11.2.so
b7e11000-b7e12000 r--p 00023000 03:47 3170377    /lib/i686/cmov/libm-2.11.2.so
b7e12000-b7e13000 rw-p 00024000 03:47 3170377    /lib/i686/cmov/libm-2.11.2.so
b7e13000-b7efc000 r-xp 00000000 03:47 1552397    /usr/lib/libstdc++.so.6.0.13
b7efc000-b7f00000 r--p 000e9000 03:47 1552397    /usr/lib/libstdc++.so.6.0.13
b7f00000-b7f01000 rw-p 000ed000 03:47 1552397    /usr/lib/libstdc++.so.6.0.13
b7f01000-b7f09000 rw-p 00000000 00:00 0 
b7f23000-b7f25000 r-xp 00000000 03:47 1896416    /usr/lib/gconv/ISO8859-15.so
b7f25000-b7f26000 r--p 00001000 03:47 1896416    /usr/lib/gconv/ISO8859-15.so
b7f26000-b7f27000 rw-p 00002000 03:47 1896416    /usr/lib/gconv/ISO8859-15.so
b7f27000-b7f2e000 r--s 00000000 03:47 2222984    
/usr/lib/gconv/gconv-modules.cache
b7f2e000-b7f2f000 r--p 0041e000 03:47 3365415    /usr/lib/locale/locale-archive
b7f2f000-b7f35000 r--p 0027e000 03:47 3365415    /usr/lib/locale/locale-archive
b7f35000-b7f36000 rw-p 00000000 00:00 0 
b7f36000-b7f37000 r-xp 00000000 00:00 0          [vdso]
b7f37000-b7f52000 r-xp 00000000 03:47 3156756    /lib/ld-2.11.2.so
b7f52000-b7f53000 r--p 0001a000 03:47 3156756    /lib/ld-2.11.2.so
b7f53000-b7f54000 rw-p 0001b000 03:47 3156756    /lib/ld-2.11.2.so
bfae8000-bfb1b000 rw-p 00000000 00:00 0          [stack]
sh: line 4: 17938 Abortito                heirloom-make TEST_LOGS="bar.log 
baz.log " mylog.log TEST_LOGS="$list"
heirloom-make: fatal error.
Current working directory /home/stefano/src/automake/tests/parallel-tests9.dir
heirloom-make: fatal error.
Current working directory /home/stefano/src/automake/tests/parallel-tests9.dir
heirloom-make: fatal error.
+ cat stdout
        heirloom-make TEST_LOGS="bar.log baz.log " bla
`bla' is up to date.
        heirloom-make TEST_LOGS="bar.log baz.log " check-TESTS
*** Error code 134 (bu21)
The following command caused the error:
list='bar.log baz.log';                                         \
list=`for f in $list; do                                        \
  test .log = $f || echo $f;                                    \
done | tr '\012\015' '  '`;                                     \
heirloom-make TEST_LOGS="bar.log baz.log " mylog.log TEST_LOGS="$list"
*** Error code 1 (bu21)
*** Error code 1 (bu21)
The following command caused the error:
target=`echo recheck | sed 's,^re,,'`;                          \
list='foo.log bar.log baz.log';                                         \
list=`for f in $list; do                                        \
        test -f $f || continue;                         \
        if read line < $f; then                         \
          case $line in FAIL*|XPASS*) echo $f;; esac;           \
        else echo $f; fi;                                       \
      done | tr '\012\015' '  '`;                               \
heirloom-make  $target AM_MAKEFLAGS=' TEST_LOGS="'"$list"'"'
+ grep foo.test stdout
+ grep bar.test stdout
+ Exit 1
+ set +e
+ exit 1
+ exit 1
+ exit_status=1
+ set +e
+ cd /home/stefano/src/automake/tests
+ case $exit_status,$keep_testdirs in
+ test 0 '!=' 0
+ echo 'parallel-tests9: exit 1'
parallel-tests9: exit 1
+ exit 1
+ export MALLOC_CHECK_=0
/home/stefano/src/automake/tests:/home/stefano/go/bin:/home/stefano/bin/linux:/home/stefano/bin:/usr/local/bin:/opt/bin:/usr/lib/jvm/java-6-sun-1.6.0.20/bin:/usr/games:/usr/bin:/usr/sbin:/bin:/sbin
=== Running test ./parallel-tests9.test
++ pwd
/home/stefano/src/automake/tests/parallel-tests9.dir
+ set -e
+ cat
+ cat
+ cat
+ cat
+ cat
+ chmod a+x foo.test bar.test baz.test
+ aclocal-1.11a -Werror
+ autoconf
+ automake-1.11a --foreign -Werror -Wall -a
+ ./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether heirloom-make sets $(MAKE)... yes
configure: creating ./config.status
config.status: creating Makefile
+ heirloom-make check
heirloom-make: fatal error.
Current working directory /home/stefano/src/automake/tests/parallel-tests9.dir
heirloom-make: fatal error.
Current working directory /home/stefano/src/automake/tests/parallel-tests9.dir
heirloom-make: fatal error.
+ cat stdout
        heirloom-make  bla
        echo bla > bla
        heirloom-make  check-TESTS
PASS: foo.test
FAIL: bar.test
FAIL: baz.test
===================
2 of 3 tests failed
See ./mylog.log
===================
*** Error code 1 (bu21)
The following command caused the error:
case $- in *e*) set +e;; esac;                                          \
list='foo.log bar.log baz.log';                                         \
results=`for f in $list; do                                     \
           read line < $f && echo "$line" || echo FAIL; \
         done`;                                                 \
all=`echo "$results" | sed '/^$/d' | wc -l | sed -e 's/^[        ]*//'`; \
fail=`echo "$results" | grep -c '^FAIL'`;                       \
pass=`echo "$results" | grep -c '^PASS'`;                       \
skip=`echo "$results" | grep -c '^SKIP'`;                       \
xfail=`echo "$results" | grep -c '^XFAIL'`;                     \
xpass=`echo "$results" | grep -c '^XPASS'`;                     \
failures=`expr $fail + $xpass`;                         \
all=`expr $all - $skip`;                                        \
if test "$all" -eq 1; then tests=test; All=;                    \
else tests=tests; All="All "; fi;                               \
case fail=$fail:xpass=$xpass:xfail=$xfail in                    \
  fail=0:xpass=0:xfail=0)                                       \
    msg="$All$all $tests passed.  ";                            \
    exit=true;;                                                 \
  fail=0:xpass=0:xfail=*)                                       \
    msg="$All$all $tests behaved as expected";          \
    if test "$xfail" -eq 1; then xfailures=failure;             \
    else xfailures=failures; fi;                                \
    msg="$msg ($xfail expected $xfailures).  ";         \
    exit=true;;                                                 \
  fail=*:xpass=0:xfail=*)                                       \
    msg="$fail of $all $tests failed.  ";                       \
    exit=false;;                                                \
  fail=*:xpass=*:xfail=*)                                       \
    msg="$failures of $all $tests did not behave as expected"; \
    if test "$xpass" -eq 1; then xpasses=pass;                  \
    else xpasses=passes; fi;                                    \
    msg="$msg ($xpass unexpected $xpasses).  ";         \
    exit=false;;                                                \
  *)                                                            \
    echo >&2 "incorrect case"; exit 4;;                         \
esac;                                                           \
if test "$skip" -ne 0; then                                     \
  if test "$skip" -eq 1; then                                   \
    msg="$msg($skip test was not run).  ";                      \
  else                                                          \
    msg="$msg($skip tests were not run).  ";                    \
  fi;                                                           \
fi;                                                             \
{                                                               \
  echo "parallel-tests9 1.0: ./mylog.log" |     \
    sed 's/.*/   &   /;h;s/./=/g;p;x;p;g;p;s/.*//';                             
                \
  echo "$msg";                                                  \
  echo;                                                         \
  echo ".. contents:: :depth: 2";                               \
  echo;                                                         \
  for f in $list; do                                            \
    read line < $f;                                             \
    case $line in                                               \
      PASS:*|XFAIL:*);;                                         \
      *) echo; cat $f;;                                 \
    esac;                                                       \
  done;                                                         \
} >mylog.log.tmp;                                       \
mv mylog.log.tmp mylog.log;                     \
if test "$failures" -ne 0; then                         \
  msg="${msg}See ./mylog.log.  ";               \
  if test -n ""; then                   \
    msg="${msg}Please report to .  ";   \
  fi;                                                           \
fi;                                                             \
test x"$VERBOSE" = x || $exit || cat mylog.log; \
red=; grn=; lgn=; blu=; std=;                                           \
if $exit; then                                                  \
  echo -n "$grn";                               \
 else                                                           \
  echo -n "$red";                               \
fi;                                                             \
echo "$msg" | gawk '{                            n = split($0, lines, "\\.  "); 
max = 0;                 for (i = 1; i <= n; ++i)                               
 if (max < length(lines[i]))                             max = 
length(lines[i]);                                 for (i = 0; i < max; ++i) 
line = line "=";              print line;                                       
      for (i = 1; i <= n; ++i) if (lines[i]) print lines[i]; print line;        
                                      }';                                    \
echo -n "$std";                         \
$exit
*** Error code 1 (bu21)
The following command caused the error:
list='foo.log bar.log baz.log';                                         \
list=`for f in $list; do                                        \
  test .log = $f || echo $f;                                    \
done | tr '\012\015' '  '`;                                     \
heirloom-make  mylog.log TEST_LOGS="$list"
*** Error code 1 (bu21)
+ heirloom-make recheck
sh: line 4: 23267 Segmentation fault      heirloom-make TEST_LOGS="bar.log 
baz.log " mylog.log TEST_LOGS="$list"
heirloom-make: fatal error.
Current working directory /home/stefano/src/automake/tests/parallel-tests9.dir
heirloom-make: fatal error.
Current working directory /home/stefano/src/automake/tests/parallel-tests9.dir
heirloom-make: fatal error.
+ cat stdout
        heirloom-make TEST_LOGS="bar.log baz.log " bla
`bla' is up to date.
        heirloom-make TEST_LOGS="bar.log baz.log " check-TESTS
*** Error code 139 (bu21)
The following command caused the error:
list='bar.log baz.log';                                         \
list=`for f in $list; do                                        \
  test .log = $f || echo $f;                                    \
done | tr '\012\015' '  '`;                                     \
heirloom-make TEST_LOGS="bar.log baz.log " mylog.log TEST_LOGS="$list"
*** Error code 1 (bu21)
*** Error code 1 (bu21)
The following command caused the error:
target=`echo recheck | sed 's,^re,,'`;                          \
list='foo.log bar.log baz.log';                                         \
list=`for f in $list; do                                        \
        test -f $f || continue;                         \
        if read line < $f; then                         \
          case $line in FAIL*|XPASS*) echo $f;; esac;           \
        else echo $f; fi;                                       \
      done | tr '\012\015' '  '`;                               \
heirloom-make  $target AM_MAKEFLAGS=' TEST_LOGS="'"$list"'"'
+ grep foo.test stdout
+ grep bar.test stdout
+ Exit 1
+ set +e
+ exit 1
+ exit 1
+ exit_status=1
+ set +e
+ cd /home/stefano/src/automake/tests
+ case $exit_status,$keep_testdirs in
+ test 0 '!=' 0
+ echo 'parallel-tests9: exit 1'
parallel-tests9: exit 1
+ exit 1
+ export MALLOC_CHECK_=1
/home/stefano/src/automake/tests:/home/stefano/go/bin:/home/stefano/bin/linux:/home/stefano/bin:/usr/local/bin:/opt/bin:/usr/lib/jvm/java-6-sun-1.6.0.20/bin:/usr/games:/usr/bin:/usr/sbin:/bin:/sbin
=== Running test ./parallel-tests9.test
++ pwd
/home/stefano/src/automake/tests/parallel-tests9.dir
+ set -e
+ cat
+ cat
+ cat
+ cat
+ cat
+ chmod a+x foo.test bar.test baz.test
+ aclocal-1.11a -Werror
+ autoconf
+ automake-1.11a --foreign -Werror -Wall -a
+ ./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether heirloom-make sets $(MAKE)... yes
configure: creating ./config.status
config.status: creating Makefile
+ heirloom-make check
heirloom-make: fatal error.
Current working directory /home/stefano/src/automake/tests/parallel-tests9.dir
heirloom-make: fatal error.
Current working directory /home/stefano/src/automake/tests/parallel-tests9.dir
heirloom-make: fatal error.
+ cat stdout
        heirloom-make  bla
        echo bla > bla
        heirloom-make  check-TESTS
PASS: foo.test
FAIL: bar.test
FAIL: baz.test
===================
2 of 3 tests failed
See ./mylog.log
===================
*** Error code 1 (bu21)
The following command caused the error:
case $- in *e*) set +e;; esac;                                          \
list='foo.log bar.log baz.log';                                         \
results=`for f in $list; do                                     \
           read line < $f && echo "$line" || echo FAIL; \
         done`;                                                 \
all=`echo "$results" | sed '/^$/d' | wc -l | sed -e 's/^[        ]*//'`; \
fail=`echo "$results" | grep -c '^FAIL'`;                       \
pass=`echo "$results" | grep -c '^PASS'`;                       \
skip=`echo "$results" | grep -c '^SKIP'`;                       \
xfail=`echo "$results" | grep -c '^XFAIL'`;                     \
xpass=`echo "$results" | grep -c '^XPASS'`;                     \
failures=`expr $fail + $xpass`;                         \
all=`expr $all - $skip`;                                        \
if test "$all" -eq 1; then tests=test; All=;                    \
else tests=tests; All="All "; fi;                               \
case fail=$fail:xpass=$xpass:xfail=$xfail in                    \
  fail=0:xpass=0:xfail=0)                                       \
    msg="$All$all $tests passed.  ";                            \
    exit=true;;                                                 \
  fail=0:xpass=0:xfail=*)                                       \
    msg="$All$all $tests behaved as expected";          \
    if test "$xfail" -eq 1; then xfailures=failure;             \
    else xfailures=failures; fi;                                \
    msg="$msg ($xfail expected $xfailures).  ";         \
    exit=true;;                                                 \
  fail=*:xpass=0:xfail=*)                                       \
    msg="$fail of $all $tests failed.  ";                       \
    exit=false;;                                                \
  fail=*:xpass=*:xfail=*)                                       \
    msg="$failures of $all $tests did not behave as expected"; \
    if test "$xpass" -eq 1; then xpasses=pass;                  \
    else xpasses=passes; fi;                                    \
    msg="$msg ($xpass unexpected $xpasses).  ";         \
    exit=false;;                                                \
  *)                                                            \
    echo >&2 "incorrect case"; exit 4;;                         \
esac;                                                           \
if test "$skip" -ne 0; then                                     \
  if test "$skip" -eq 1; then                                   \
    msg="$msg($skip test was not run).  ";                      \
  else                                                          \
    msg="$msg($skip tests were not run).  ";                    \
  fi;                                                           \
fi;                                                             \
{                                                               \
  echo "parallel-tests9 1.0: ./mylog.log" |     \
    sed 's/.*/   &   /;h;s/./=/g;p;x;p;g;p;s/.*//';                             
                \
  echo "$msg";                                                  \
  echo;                                                         \
  echo ".. contents:: :depth: 2";                               \
  echo;                                                         \
  for f in $list; do                                            \
    read line < $f;                                             \
    case $line in                                               \
      PASS:*|XFAIL:*);;                                         \
      *) echo; cat $f;;                                 \
    esac;                                                       \
  done;                                                         \
} >mylog.log.tmp;                                       \
mv mylog.log.tmp mylog.log;                     \
if test "$failures" -ne 0; then                         \
  msg="${msg}See ./mylog.log.  ";               \
  if test -n ""; then                   \
    msg="${msg}Please report to .  ";   \
  fi;                                                           \
fi;                                                             \
test x"$VERBOSE" = x || $exit || cat mylog.log; \
red=; grn=; lgn=; blu=; std=;                                           \
if $exit; then                                                  \
  echo -n "$grn";                               \
 else                                                           \
  echo -n "$red";                               \
fi;                                                             \
echo "$msg" | gawk '{                            n = split($0, lines, "\\.  "); 
max = 0;                 for (i = 1; i <= n; ++i)                               
 if (max < length(lines[i]))                             max = 
length(lines[i]);                                 for (i = 0; i < max; ++i) 
line = line "=";              print line;                                       
      for (i = 1; i <= n; ++i) if (lines[i]) print lines[i]; print line;        
                                      }';                                    \
echo -n "$std";                         \
$exit
*** Error code 1 (bu21)
The following command caused the error:
list='foo.log bar.log baz.log';                                         \
list=`for f in $list; do                                        \
  test .log = $f || echo $f;                                    \
done | tr '\012\015' '  '`;                                     \
heirloom-make  mylog.log TEST_LOGS="$list"
*** Error code 1 (bu21)
+ heirloom-make recheck
*** glibc detected *** heirloom-make: malloc: top chunk is corrupt: 0x09a75410 
***
heirloom-make: fatal error.
Current working directory /home/stefano/src/automake/tests/parallel-tests9.dir
heirloom-make: fatal error.
Current working directory /home/stefano/src/automake/tests/parallel-tests9.dir
heirloom-make: fatal error.
Current working directory /home/stefano/src/automake/tests/parallel-tests9.dir
heirloom-make: fatal error.
+ cat stdout
        heirloom-make TEST_LOGS="bar.log baz.log " bla
`bla' is up to date.
        heirloom-make TEST_LOGS="bar.log baz.log " check-TESTS
FAIL: bar.test
FAIL: baz.test
===================
2 of 2 tests failed
See ./mylog.log
===================
*** Error code 1 (bu21)
The following command caused the error:
case $- in *e*) set +e;; esac;                                          \
list='bar.log baz.log';                                         \
results=`for f in $list; do                                     \
           read line < $f && echo "$line" || echo FAIL; \
         done`;                                                 \
all=`echo "$results" | sed '/^$/d' | wc -l | sed -e 's/^[        ]*//'`; \
fail=`echo "$results" | grep -c '^FAIL'`;                       \
pass=`echo "$results" | grep -c '^PASS'`;                       \
skip=`echo "$results" | grep -c '^SKIP'`;                       \
xfail=`echo "$results" | grep -c '^XFAIL'`;                     \
xpass=`echo "$results" | grep -c '^XPASS'`;                     \
failures=`expr $fail + $xpass`;                         \
all=`expr $all - $skip`;                                        \
if test "$all" -eq 1; then tests=test; All=;                    \
else tests=tests; All="All "; fi;                               \
case fail=$fail:xpass=$xpass:xfail=$xfail in                    \
  fail=0:xpass=0:xfail=0)                                       \
    msg="$All$all $tests passed.  ";                            \
    exit=true;;                                                 \
  fail=0:xpass=0:xfail=*)                                       \
    msg="$All$all $tests behaved as expected";          \
    if test "$xfail" -eq 1; then xfailures=failure;             \
    else xfailures=failures; fi;                                \
    msg="$msg ($xfail expected $xfailures).  ";         \
    exit=true;;                                                 \
  fail=*:xpass=0:xfail=*)                                       \
    msg="$fail of $all $tests failed.  ";                       \
    exit=false;;                                                \
  fail=*:xpass=*:xfail=*)                                       \
    msg="$failures of $all $tests did not behave as expected"; \
    if test "$xpass" -eq 1; then xpasses=pass;                  \
    else xpasses=passes; fi;                                    \
    msg="$msg ($xpass unexpected $xpasses).  ";         \
    exit=false;;                                                \
  *)                                                            \
    echo >&2 "incorrect case"; exit 4;;                         \
esac;                                                           \
if test "$skip" -ne 0; then                                     \
  if test "$skip" -eq 1; then                                   \
    msg="$msg($skip test was not run).  ";                      \
  else                                                          \
    msg="$msg($skip tests were not run).  ";                    \
  fi;                                                           \
fi;                                                             \
{                                                               \
  echo "parallel-tests9 1.0: ./mylog.log" |     \
    sed 's/.*/   &   /;h;s/./=/g;p;x;p;g;p;s/.*//';                             
                \
  echo "$msg";                                                  \
  echo;                                                         \
  echo ".. contents:: :depth: 2";                               \
  echo;                                                         \
  for f in $list; do                                            \
    read line < $f;                                             \
    case $line in                                               \
      PASS:*|XFAIL:*);;                                         \
      *) echo; cat $f;;                                 \
    esac;                                                       \
  done;                                                         \
} >mylog.log.tmp;                                       \
mv mylog.log.tmp mylog.log;                     \
if test "$failures" -ne 0; then                         \
  msg="${msg}See ./mylog.log.  ";               \
  if test -n ""; then                   \
    msg="${msg}Please report to .  ";   \
  fi;                                                           \
fi;                                                             \
test x"$VERBOSE" = x || $exit || cat mylog.log; \
red=; grn=; lgn=; blu=; std=;                                           \
if $exit; then                                                  \
  echo -n "$grn";                               \
 else                                                           \
  echo -n "$red";                               \
fi;                                                             \
echo "$msg" | gawk '{                            n = split($0, lines, "\\.  "); 
max = 0;                 for (i = 1; i <= n; ++i)                               
 if (max < length(lines[i]))                             max = 
length(lines[i]);                                 for (i = 0; i < max; ++i) 
line = line "=";              print line;                                       
      for (i = 1; i <= n; ++i) if (lines[i]) print lines[i]; print line;        
                                      }';                                    \
echo -n "$std";                         \
$exit
*** Error code 1 (bu21)
The following command caused the error:
list='bar.log baz.log';                                         \
list=`for f in $list; do                                        \
  test .log = $f || echo $f;                                    \
done | tr '\012\015' '  '`;                                     \
heirloom-make TEST_LOGS="bar.log baz.log " mylog.log TEST_LOGS="$list"
*** Error code 1 (bu21)
*** Error code 1 (bu21)
The following command caused the error:
target=`echo recheck | sed 's,^re,,'`;                          \
list='foo.log bar.log baz.log';                                         \
list=`for f in $list; do                                        \
        test -f $f || continue;                         \
        if read line < $f; then                         \
          case $line in FAIL*|XPASS*) echo $f;; esac;           \
        else echo $f; fi;                                       \
      done | tr '\012\015' '  '`;                               \
heirloom-make  $target AM_MAKEFLAGS=' TEST_LOGS="'"$list"'"'
+ grep foo.test stdout
+ grep bar.test stdout
FAIL: bar.test
+ grep baz.test stdout
FAIL: baz.test
+ grep '2 of 2.*failed' stdout
2 of 2 tests failed
+ chmod a-r foo.log
+ test '!' -r foo.log
+ heirloom-make recheck
sh: line 7: foo.log: Permission denied
*** glibc detected *** heirloom-make: malloc: top chunk is corrupt: 0x0910d420 
***
heirloom-make: fatal error.
Current working directory /home/stefano/src/automake/tests/parallel-tests9.dir
heirloom-make: fatal error.
Current working directory /home/stefano/src/automake/tests/parallel-tests9.dir
heirloom-make: fatal error.
Current working directory /home/stefano/src/automake/tests/parallel-tests9.dir
heirloom-make: fatal error.
+ cat stdout
        heirloom-make TEST_LOGS="foo.log bar.log baz.log " bla
`bla' is up to date.
        heirloom-make TEST_LOGS="foo.log bar.log baz.log " check-TESTS
PASS: foo.test
FAIL: bar.test
FAIL: baz.test
===================
2 of 3 tests failed
See ./mylog.log
===================
*** Error code 1 (bu21)
The following command caused the error:
case $- in *e*) set +e;; esac;                                          \
list='foo.log bar.log baz.log';                                         \
results=`for f in $list; do                                     \
           read line < $f && echo "$line" || echo FAIL; \
         done`;                                                 \
all=`echo "$results" | sed '/^$/d' | wc -l | sed -e 's/^[        ]*//'`; \
fail=`echo "$results" | grep -c '^FAIL'`;                       \
pass=`echo "$results" | grep -c '^PASS'`;                       \
skip=`echo "$results" | grep -c '^SKIP'`;                       \
xfail=`echo "$results" | grep -c '^XFAIL'`;                     \
xpass=`echo "$results" | grep -c '^XPASS'`;                     \
failures=`expr $fail + $xpass`;                         \
all=`expr $all - $skip`;                                        \
if test "$all" -eq 1; then tests=test; All=;                    \
else tests=tests; All="All "; fi;                               \
case fail=$fail:xpass=$xpass:xfail=$xfail in                    \
  fail=0:xpass=0:xfail=0)                                       \
    msg="$All$all $tests passed.  ";                            \
    exit=true;;                                                 \
  fail=0:xpass=0:xfail=*)                                       \
    msg="$All$all $tests behaved as expected";          \
    if test "$xfail" -eq 1; then xfailures=failure;             \
    else xfailures=failures; fi;                                \
    msg="$msg ($xfail expected $xfailures).  ";         \
    exit=true;;                                                 \
  fail=*:xpass=0:xfail=*)                                       \
    msg="$fail of $all $tests failed.  ";                       \
    exit=false;;                                                \
  fail=*:xpass=*:xfail=*)                                       \
    msg="$failures of $all $tests did not behave as expected"; \
    if test "$xpass" -eq 1; then xpasses=pass;                  \
    else xpasses=passes; fi;                                    \
    msg="$msg ($xpass unexpected $xpasses).  ";         \
    exit=false;;                                                \
  *)                                                            \
    echo >&2 "incorrect case"; exit 4;;                         \
esac;                                                           \
if test "$skip" -ne 0; then                                     \
  if test "$skip" -eq 1; then                                   \
    msg="$msg($skip test was not run).  ";                      \
  else                                                          \
    msg="$msg($skip tests were not run).  ";                    \
  fi;                                                           \
fi;                                                             \
{                                                               \
  echo "parallel-tests9 1.0: ./mylog.log" |     \
    sed 's/.*/   &   /;h;s/./=/g;p;x;p;g;p;s/.*//';                             
                \
  echo "$msg";                                                  \
  echo;                                                         \
  echo ".. contents:: :depth: 2";                               \
  echo;                                                         \
  for f in $list; do                                            \
    read line < $f;                                             \
    case $line in                                               \
      PASS:*|XFAIL:*);;                                         \
      *) echo; cat $f;;                                 \
    esac;                                                       \
  done;                                                         \
} >mylog.log.tmp;                                       \
mv mylog.log.tmp mylog.log;                     \
if test "$failures" -ne 0; then                         \
  msg="${msg}See ./mylog.log.  ";               \
  if test -n ""; then                   \
    msg="${msg}Please report to .  ";   \
  fi;                                                           \
fi;                                                             \
test x"$VERBOSE" = x || $exit || cat mylog.log; \
red=; grn=; lgn=; blu=; std=;                                           \
if $exit; then                                                  \
  echo -n "$grn";                               \
 else                                                           \
  echo -n "$red";                               \
fi;                                                             \
echo "$msg" | gawk '{                            n = split($0, lines, "\\.  "); 
max = 0;                 for (i = 1; i <= n; ++i)                               
 if (max < length(lines[i]))                             max = 
length(lines[i]);                                 for (i = 0; i < max; ++i) 
line = line "=";              print line;                                       
      for (i = 1; i <= n; ++i) if (lines[i]) print lines[i]; print line;        
                                      }';                                    \
echo -n "$std";                         \
$exit
*** Error code 1 (bu21)
The following command caused the error:
list='foo.log bar.log baz.log';                                         \
list=`for f in $list; do                                        \
  test .log = $f || echo $f;                                    \
done | tr '\012\015' '  '`;                                     \
heirloom-make TEST_LOGS="foo.log bar.log baz.log " mylog.log TEST_LOGS="$list"
*** Error code 1 (bu21)
*** Error code 1 (bu21)
The following command caused the error:
target=`echo recheck | sed 's,^re,,'`;                          \
list='foo.log bar.log baz.log';                                         \
list=`for f in $list; do                                        \
        test -f $f || continue;                         \
        if read line < $f; then                         \
          case $line in FAIL*|XPASS*) echo $f;; esac;           \
        else echo $f; fi;                                       \
      done | tr '\012\015' '  '`;                               \
heirloom-make  $target AM_MAKEFLAGS=' TEST_LOGS="'"$list"'"'
+ grep foo.test stdout
PASS: foo.test
+ heirloom-make clean
        test -z "bla" || rm -f bla
        test -z "foo.log bar.log baz.log" || rm -f foo.log bar.log baz.log
        test -z "foo.log-t bar.log-t baz.log-t" || rm -f foo.log-t bar.log-t 
baz.log-t
        test -z "mylog.html" || rm -f mylog.html
        test -z "mylog.log" || rm -f mylog.log
+ heirloom-make recheck
        heirloom-make TEST_LOGS="" bla
        echo bla > bla
        heirloom-make TEST_LOGS="" check-TESTS
==================
All 0 tests passed
==================
+ test -f bla
+ test '!' -f foo.log
+ test '!' -f bar.log
+ test '!' -f baz.log
+ test -f mylog.log
+ :
+ exit_status=0
+ set +e
+ cd /home/stefano/src/automake/tests
+ case $exit_status,$keep_testdirs in
+ find parallel-tests9.dir -type d '!' -perm -200 -exec chmod u+w '{}' ';'
+ rm -rf parallel-tests9.dir
+ test 0 '!=' 0
+ echo 'parallel-tests9: exit 0'
parallel-tests9: exit 0
+ exit 0
FAIL: parallel-tests9.test (exit: 1)
====================================

=== Running test ../../tests/parallel-tests9.test
/scratch/latta/tmp/automake-1.11a/_build/tests:/home/latta/dev/xpath/automake:/usr/bin:/usr/sbin:/sbin:/usr/ucb
+ pwd 
/scratch/latta/tmp/automake-1.11a/_build/tests/parallel-tests9.dir
+ set -e 
+ cat 
+ cat 
+ cat 
+ cat 
+ cat 
+ chmod a+x foo.test bar.test baz.test 
+ aclocal-1.11a -Werror 
+ autoconf 
+ automake-1.11a --foreign -Werror -Wall -a 
+ ./configure 
checking for a BSD-compatible install... ./install-sh -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /opt/sfw/bin/mkdir -p
checking for gawk... no
checking for mawk... no
checking for nawk... nawk
checking whether make sets $(MAKE)... yes
configure: creating ./config.status
config.status: creating Makefile
+ run_command -e FAIL make check 
+ set +x 
+ cat stderr 
make: Fatal error: Command failed for target `mylog.log'
Current working directory 
/scratch/latta/tmp/automake-1.11a/_build/tests/parallel-tests9.dir
make: Fatal error: Command failed for target `check-TESTS'
Current working directory 
/scratch/latta/tmp/automake-1.11a/_build/tests/parallel-tests9.dir
make: Fatal error: Command failed for target `check-am'
+ cat stdout 
/usr/xpg4/bin/make  bla
echo bla > bla
/usr/xpg4/bin/make  check-TESTS
PASS: foo.test
FAIL: bar.test
FAIL: baz.test
===================
2 of 3 tests failed
See ./mylog.log
===================
*** Error code 1
The following command caused the error:
case $- in *e*) set +e;; esac;                                          \
list='foo.log bar.log baz.log';                                         \
results=`for f in $list; do                                     \
           read line < $f && echo "$line" || echo FAIL; \
         done`;                                                 \
all=`echo "$results" | sed '/^$/d' | wc -l | sed -e 's/^[        ]*//'`; \
fail=`echo "$results" | grep -c '^FAIL'`;                       \
pass=`echo "$results" | grep -c '^PASS'`;                       \
skip=`echo "$results" | grep -c '^SKIP'`;                       \
xfail=`echo "$results" | grep -c '^XFAIL'`;                     \
xpass=`echo "$results" | grep -c '^XPASS'`;                     \
failures=`expr $fail + $xpass`;                         \
all=`expr $all - $skip`;                                        \
if test "$all" -eq 1; then tests=test; All=;                    \
else tests=tests; All="All "; fi;                               \
case fail=$fail:xpass=$xpass:xfail=$xfail in                    \
  fail=0:xpass=0:xfail=0)                                       \
    msg="$All$all $tests passed.  ";                            \
    exit=true;;                                                 \
  fail=0:xpass=0:xfail=*)                                       \
    msg="$All$all $tests behaved as expected";          \
    if test "$xfail" -eq 1; then xfailures=failure;             \
    else xfailures=failures; fi;                                \
    msg="$msg ($xfail expected $xfailures).  ";         \
    exit=true;;                                                 \
  fail=*:xpass=0:xfail=*)                                       \
    msg="$fail of $all $tests failed.  ";                       \
    exit=false;;                                                \
  fail=*:xpass=*:xfail=*)                                       \
    msg="$failures of $all $tests did not behave as expected"; \
    if test "$xpass" -eq 1; then xpasses=pass;                  \
    else xpasses=passes; fi;                                    \
    msg="$msg ($xpass unexpected $xpasses).  ";         \
    exit=false;;                                                \
  *)                                                            \
    echo >&2 "incorrect case"; exit 4;;                         \
esac;                                                           \
if test "$skip" -ne 0; then                                     \
  if test "$skip" -eq 1; then                                   \
    msg="$msg($skip test was not run).  ";                      \
  else                                                          \
    msg="$msg($skip tests were not run).  ";                    \
  fi;                                                           \
fi;                                                             \
{                                                               \
  echo "parallel-tests9 1.0: ./mylog.log" |     \
    sed 's/.*/   &   /;h;s/./=/g;p;x;p;g;p;s/.*//';                             
                \
  echo "$msg";                                                  \
  echo;                                                         \
  echo ".. contents:: :depth: 2";                               \
  echo;                                                         \
  for f in $list; do                                            \
    read line < $f;                                             \
    case $line in                                               \
      PASS:*|XFAIL:*);;                                         \
      *) echo; cat $f;;                                 \
    esac;                                                       \
  done;                                                         \
} >mylog.log.tmp;                                       \
mv mylog.log.tmp mylog.log;                     \
if test "$failures" -ne 0; then                         \
  msg="${msg}See ./mylog.log.  ";               \
  if test -n ""; then                   \
    msg="${msg}Please report to .  ";   \
  fi;                                                           \
fi;                                                             \
test x"$VERBOSE" = x || $exit || cat mylog.log; \
red=; grn=; lgn=; blu=; std=;                                           \
if $exit; then                                                  \
  echo -n "$grn";                               \
 else                                                           \
  echo -n "$red";                               \
fi;                                                             \
echo "$msg" | nawk '{                            n = split($0, lines, "\\.  "); 
max = 0;                 for (i = 1; i <= n; ++i)                               
 if (max < length(lines[i]))                             max = 
length(lines[i]);                                 for (i = 0; i < max; ++i) 
line = line "=";              print line;                                       
      for (i = 1; i <= n; ++i) if (lines[i]) print lines[i]; print line;        
                                      }';                                    \
echo -n "$std";                         \
$exit
*** Error code 1
The following command caused the error:
list='foo.log bar.log baz.log';                                         \
list=`for f in $list; do                                        \
  test .log = $f || echo $f;                                    \
done | tr '\012\015' '  '`;                                     \
/usr/xpg4/bin/make  mylog.log TEST_LOGS="$list"
*** Error code 1
+ set +x 
run_command: exit status 1 (expecting FAIL)
+ test xyes = xyes 
+ run_command -e FAIL make recheck 
+ set +x 
+ cat stderr 
make: Fatal error: Command failed for target `mylog.log'
Current working directory 
/scratch/latta/tmp/automake-1.11a/_build/tests/parallel-tests9.dir
make: Fatal error: Command failed for target `check-TESTS'
Current working directory 
/scratch/latta/tmp/automake-1.11a/_build/tests/parallel-tests9.dir
make: Fatal error: Command failed for target `check-am'
Current working directory 
/scratch/latta/tmp/automake-1.11a/_build/tests/parallel-tests9.dir
make: Fatal error: Command failed for target `recheck'
+ cat stdout 
/usr/xpg4/bin/make TEST_LOGS="bar.log baz.log " bla
`bla' is updated.
/usr/xpg4/bin/make TEST_LOGS="bar.log baz.log " check-TESTS
FAIL: bar.test
FAIL: baz.test
===================
2 of 2 tests failed
See ./mylog.log
===================
*** Error code 1
The following command caused the error:
case $- in *e*) set +e;; esac;                                          \
list='bar.log baz.log';                                         \
results=`for f in $list; do                                     \
           read line < $f && echo "$line" || echo FAIL; \
         done`;                                                 \
all=`echo "$results" | sed '/^$/d' | wc -l | sed -e 's/^[        ]*//'`; \
fail=`echo "$results" | grep -c '^FAIL'`;                       \
pass=`echo "$results" | grep -c '^PASS'`;                       \
skip=`echo "$results" | grep -c '^SKIP'`;                       \
xfail=`echo "$results" | grep -c '^XFAIL'`;                     \
xpass=`echo "$results" | grep -c '^XPASS'`;                     \
failures=`expr $fail + $xpass`;                         \
all=`expr $all - $skip`;                                        \
if test "$all" -eq 1; then tests=test; All=;                    \
else tests=tests; All="All "; fi;                               \
case fail=$fail:xpass=$xpass:xfail=$xfail in                    \
  fail=0:xpass=0:xfail=0)                                       \
    msg="$All$all $tests passed.  ";                            \
    exit=true;;                                                 \
  fail=0:xpass=0:xfail=*)                                       \
    msg="$All$all $tests behaved as expected";          \
    if test "$xfail" -eq 1; then xfailures=failure;             \
    else xfailures=failures; fi;                                \
    msg="$msg ($xfail expected $xfailures).  ";         \
    exit=true;;                                                 \
  fail=*:xpass=0:xfail=*)                                       \
    msg="$fail of $all $tests failed.  ";                       \
    exit=false;;                                                \
  fail=*:xpass=*:xfail=*)                                       \
    msg="$failures of $all $tests did not behave as expected"; \
    if test "$xpass" -eq 1; then xpasses=pass;                  \
    else xpasses=passes; fi;                                    \
    msg="$msg ($xpass unexpected $xpasses).  ";         \
    exit=false;;                                                \
  *)                                                            \
    echo >&2 "incorrect case"; exit 4;;                         \
esac;                                                           \
if test "$skip" -ne 0; then                                     \
  if test "$skip" -eq 1; then                                   \
    msg="$msg($skip test was not run).  ";                      \
  else                                                          \
    msg="$msg($skip tests were not run).  ";                    \
  fi;                                                           \
fi;                                                             \
{                                                               \
  echo "parallel-tests9 1.0: ./mylog.log" |     \
    sed 's/.*/   &   /;h;s/./=/g;p;x;p;g;p;s/.*//';                             
                \
  echo "$msg";                                                  \
  echo;                                                         \
  echo ".. contents:: :depth: 2";                               \
  echo;                                                         \
  for f in $list; do                                            \
    read line < $f;                                             \
    case $line in                                               \
      PASS:*|XFAIL:*);;                                         \
      *) echo; cat $f;;                                 \
    esac;                                                       \
  done;                                                         \
} >mylog.log.tmp;                                       \
mv mylog.log.tmp mylog.log;                     \
if test "$failures" -ne 0; then                         \
  msg="${msg}See ./mylog.log.  ";               \
  if test -n ""; then                   \
    msg="${msg}Please report to .  ";   \
  fi;                                                           \
fi;                                                             \
test x"$VERBOSE" = x || $exit || cat mylog.log; \
red=; grn=; lgn=; blu=; std=;                                           \
if $exit; then                                                  \
  echo -n "$grn";                               \
 else                                                           \
  echo -n "$red";                               \
fi;                                                             \
echo "$msg" | nawk '{                            n = split($0, lines, "\\.  "); 
max = 0;                 for (i = 1; i <= n; ++i)                               
 if (max < length(lines[i]))                             max = 
length(lines[i]);                                 for (i = 0; i < max; ++i) 
line = line "=";              print line;                                       
      for (i = 1; i <= n; ++i) if (lines[i]) print lines[i]; print line;        
                                      }';                                    \
echo -n "$std";                         \
$exit
*** Error code 1
The following command caused the error:
list='bar.log baz.log';                                         \
list=`for f in $list; do                                        \
  test .log = $f || echo $f;                                    \
done | tr '\012\015' '  '`;                                     \
/usr/xpg4/bin/make TEST_LOGS="bar.log baz.log " mylog.log TEST_LOGS="$list"
*** Error code 1
*** Error code 1
The following command caused the error:
target=`echo recheck | sed 's,^re,,'`;                          \
list='foo.log bar.log baz.log';                                         \
list=`for f in $list; do                                        \
        test -f $f || continue;                         \
        if read line < $f; then                         \
          case $line in FAIL*|XPASS*) echo $f;; esac;           \
        else echo $f; fi;                                       \
      done | tr '\012\015' '  '`;                               \
/usr/xpg4/bin/make  $target AM_MAKEFLAGS=' TEST_LOGS="'"$list"'"'
+ set +x 
run_command: exit status 1 (expecting FAIL)
+ test xyes = xyes 
+ grep foo.test stdout 
+ grep bar.test stdout 
FAIL: bar.test
+ grep baz.test stdout 
FAIL: baz.test
+ grep 2 of 2.*failed stdout 
2 of 2 tests failed
+ chmod a-r foo.log 
+ test ! -r foo.log 
+ run_command -e FAIL make recheck 
+ set +x 
+ cat stderr 
bash: line 7: foo.log: Permission denied
bash: line 4: 14242 Segmentation Fault      (core dumped) /usr/xpg4/bin/make 
TEST_LOGS="foo.log bar.log baz.log " mylog.log TEST_LOGS="$list"
make: Fatal error: Command failed for target `check-TESTS'
Current working directory 
/scratch/latta/tmp/automake-1.11a/_build/tests/parallel-tests9.dir
make: Fatal error: Command failed for target `check-am'
Current working directory 
/scratch/latta/tmp/automake-1.11a/_build/tests/parallel-tests9.dir
make: Fatal error: Command failed for target `recheck'
+ cat stdout 
/usr/xpg4/bin/make TEST_LOGS="foo.log bar.log baz.log " bla
`bla' is updated.
/usr/xpg4/bin/make TEST_LOGS="foo.log bar.log baz.log " check-TESTS
*** Error code 139
The following command caused the error:
list='foo.log bar.log baz.log';                                         \
list=`for f in $list; do                                        \
  test .log = $f || echo $f;                                    \
done | tr '\012\015' '  '`;                                     \
/usr/xpg4/bin/make TEST_LOGS="foo.log bar.log baz.log " mylog.log 
TEST_LOGS="$list"
*** Error code 1
*** Error code 1
The following command caused the error:
target=`echo recheck | sed 's,^re,,'`;                          \
list='foo.log bar.log baz.log';                                         \
list=`for f in $list; do                                        \
        test -f $f || continue;                         \
        if read line < $f; then                         \
          case $line in FAIL*|XPASS*) echo $f;; esac;           \
        else echo $f; fi;                                       \
      done | tr '\012\015' '  '`;                               \
/usr/xpg4/bin/make  $target AM_MAKEFLAGS=' TEST_LOGS="'"$list"'"'
+ set +x 
run_command: exit status 1 (expecting FAIL)
+ test xyes = xyes 
+ grep foo.test stdout 
+ Exit 1 
+ set +e 
+ exit 1 
+ exit 1 
exit_status=1
+ set +e 
+ cd /scratch/latta/tmp/automake-1.11a/_build/tests 
+ test 0 != 0 
+ echo parallel-tests9: exit 1 
parallel-tests9: exit 1
+ exit 1 

reply via email to

[Prev in Thread] Current Thread [Next in Thread]