automake-patches
[Top][All Lists]
Advanced

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

[PATCHES] Fix spurious failures of some tests `silent*.test' with SunStu


From: Stefano Lattarini
Subject: [PATCHES] Fix spurious failures of some tests `silent*.test' with SunStudio Fortran
Date: Wed, 17 Nov 2010 15:25:02 +0100
User-agent: KMail/1.13.3 (Linux/2.6.30-2-686; KDE/4.4.4; i686; ; )

Hello automakers.

I'm seeing this failure with SunStudio fortran compilers on
Debian GNU/Linux (and a similar failure on Solaris 10):

-*-*-*-

 $ F77=/opt/bin/sunf77 sh silentf77.test 
 silentf77: running gfortran --version
 GNU Fortran (Debian 4.4.4-6) 4.4.4
 Copyright (C) 2010 Free Software Foundation, Inc.

 GNU Fortran comes with NO WARRANTY, to the extent permitted by law.
 You may redistribute copies of GNU Fortran
 under the terms of the GNU General Public License.
 For more information about these matters, see the file named COPYING

 === Running test silentf77.test
 ++ pwd
 /home/stefano/src/automake/tests/silentf77.dir
 + set -e
 + mkdir sub
 + cat
 + cat
 + cat
 + cat
 + cp foo.f sub/bar.f
 + aclocal-1.11 -Werror
 + automake-1.11 --foreign -Werror -Wall --add-missing
 + autoconf
 + ./configure --enable-silent-rules
 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 make sets $(MAKE)... yes
 checking whether the Fortran 77 compiler works... yes
 checking for Fortran 77 compiler default output file name... a.out
 checking for suffix of executables... 
 checking whether we are cross compiling... no
 checking for suffix of object files... o
 checking whether we are using the GNU Fortran 77 compiler... no
 checking whether /opt/bin/sunf77 accepts -g... yes
 configure: creating ./config.status
 config.status: creating Makefile
 config.status: creating sub/Makefile
 + make
 bar.f:
  MAIN foo:
 bar.f:
  MAIN foo:
 foo.f:
  MAIN foo:
 foo.f:
  MAIN foo:
 + cat stdout
 Making all in sub
 make[1]: Entering directory 
`/home/stefano/src/automake/tests/silentf77.dir/sub'
   F77    bar.o
 NOTICE: Invoking /opt/SunStudio/sunstudio12.1/prod/bin/f90 -f77 -ftrap=%none 
-g -c -o bar.o bar.f
   F77LD  bar1
 NOTICE: Invoking /opt/SunStudio/sunstudio12.1/prod/bin/f90 -f77 -ftrap=%none 
-g -o bar1 bar.o
   F77    bar2-bar.o
 NOTICE: Invoking /opt/SunStudio/sunstudio12.1/prod/bin/f90 -f77 -ftrap=%none 
-g -c -o bar2-bar.o bar.f
   F77LD  bar2
 NOTICE: Invoking /opt/SunStudio/sunstudio12.1/prod/bin/f90 -f77 -ftrap=%none 
-g -o bar2 bar2-bar.o
 make[1]: Leaving directory `/home/stefano/src/automake/tests/silentf77.dir/sub'
 make[1]: Entering directory `/home/stefano/src/automake/tests/silentf77.dir'
   F77    foo.o
 NOTICE: Invoking /opt/SunStudio/sunstudio12.1/prod/bin/f90 -f77 -ftrap=%none 
-g -c -o foo.o foo.f
   F77LD  foo1
 NOTICE: Invoking /opt/SunStudio/sunstudio12.1/prod/bin/f90 -f77 -ftrap=%none 
-g -o foo1 foo.o
   F77    foo2-foo.o
 NOTICE: Invoking /opt/SunStudio/sunstudio12.1/prod/bin/f90 -f77 -ftrap=%none 
-g -c -o foo2-foo.o foo.f
   F77LD  foo2
 NOTICE: Invoking /opt/SunStudio/sunstudio12.1/prod/bin/f90 -f77 -ftrap=%none 
-g -o foo2 foo2-foo.o
 make[1]: Leaving directory `/home/stefano/src/automake/tests/silentf77.dir'
 + /bin/grep -E ' (-c|-o)' stdout
 NOTICE: Invoking /opt/SunStudio/sunstudio12.1/prod/bin/f90 -f77 -ftrap=%none 
-g -c -o bar.o bar.f
 NOTICE: Invoking /opt/SunStudio/sunstudio12.1/prod/bin/f90 -f77 -ftrap=%none 
-g -o bar1 bar.o
 NOTICE: Invoking /opt/SunStudio/sunstudio12.1/prod/bin/f90 -f77 -ftrap=%none 
-g -c -o bar2-bar.o bar.f
 NOTICE: Invoking /opt/SunStudio/sunstudio12.1/prod/bin/f90 -f77 -ftrap=%none 
-g -o bar2 bar2-bar.o
 NOTICE: Invoking /opt/SunStudio/sunstudio12.1/prod/bin/f90 -f77 -ftrap=%none 
-g -c -o foo.o foo.f
 NOTICE: Invoking /opt/SunStudio/sunstudio12.1/prod/bin/f90 -f77 -ftrap=%none 
-g -o foo1 foo.o
 NOTICE: Invoking /opt/SunStudio/sunstudio12.1/prod/bin/f90 -f77 -ftrap=%none 
-g -c -o foo2-foo.o foo.f
 NOTICE: Invoking /opt/SunStudio/sunstudio12.1/prod/bin/f90 -f77 -ftrap=%none 
-g -o foo2 foo2-foo.o
 + 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 'silentf77: exit 1'
 silentf77: exit 1
 + exit 1

-*-*-*-

The test `silent5.test' experiences a similar failure.

Now, these failure are clearly spurious, and easy worked around,
so I'd like to apply the attached patches to temporary bugfixing
branches, and merge them to maint.

Objections?

Regards,
   Stefano

From b86fb0c25eb38c4a92b676539d77126a11fcd08d Mon Sep 17 00:00:00 2001
From: Stefano Lattarini <address@hidden>
Date: Wed, 17 Nov 2010 15:07:39 +0100
Subject: [PATCH] Fix spurious failures of silent-rules tests with Sun Fortran.

* tests/silentf77.test: Strip from the make output some verbose
messages possibly printed by the SunStudio fortran compilers, to
avoid spurious failures.  Add a trailing `:' command.
* tests/silentf90.test: Likewise.
---
 ChangeLog            |    8 ++++++++
 tests/silentf77.test |    6 ++++++
 tests/silentf90.test |    6 ++++++
 3 files changed, 20 insertions(+), 0 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 1fb4ba8..47f4e35 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2010-11-17  Stefano Lattarini  <address@hidden>
+
+       Fix spurious failures of silent-rules tests with Sun Fortran.
+       * tests/silentf77.test: Strip from the make output some verbose
+       messages possibly printed by the SunStudio fortran compilers, to
+       avoid spurious failures.  Add a trailing `:' command.
+       * tests/silentf90.test: Likewise.
+
 2010-06-06  Stefano Lattarini  <address@hidden>
 
        New tests for Automake silent-mode with Fortran.
diff --git a/tests/silentf77.test b/tests/silentf77.test
index 39495d4..977b5c3 100755
--- a/tests/silentf77.test
+++ b/tests/silentf77.test
@@ -63,6 +63,10 @@ $AUTOCONF
 ./configure --enable-silent-rules
 $MAKE >stdout || { cat stdout; Exit 1; }
 cat stdout
+# Avoid spurious failures with SunStudio Fortran compilers.
+sed '/^NOTICE: *[Ii]nvoking.*-ftrap=%none/d' stdout > t
+mv -f t stdout
+cat stdout
 
 $EGREP ' (-c|-o)' stdout && Exit 1
 grep 'mv ' stdout && Exit 1
@@ -89,3 +93,5 @@ $EGREP '(F77|FC|LD) ' stdout && Exit 1
 
 $MAKE clean
 $MAKE maintainer-clean
+
+:
diff --git a/tests/silentf90.test b/tests/silentf90.test
index 9330bdd..ee446ee 100755
--- a/tests/silentf90.test
+++ b/tests/silentf90.test
@@ -63,6 +63,10 @@ $AUTOCONF
 ./configure --enable-silent-rules
 $MAKE >stdout || { cat stdout; Exit 1; }
 cat stdout
+# Avoid spurious failures with SunStudio Fortran compilers.
+sed '/^NOTICE: *[Ii]nvoking.*-ftrap=%none/d' stdout > t
+mv -f t stdout
+cat stdout
 
 $EGREP ' (-c|-o)' stdout && Exit 1
 grep 'mv ' stdout && Exit 1
@@ -89,3 +93,5 @@ $EGREP '(F77|FC|LD) ' stdout && Exit 1
 
 $MAKE clean
 $MAKE maintainer-clean
+
+:
-- 
1.7.1

From 920ac7e7a2c42d9fbbd0190fb153be87adda5678 Mon Sep 17 00:00:00 2001
From: Stefano Lattarini <address@hidden>
Date: Wed, 17 Nov 2010 15:18:49 +0100
Subject: [PATCH] Fix spurious failures of silent5.test with Sun Fortran.

* tests/silent5.test: Strip from the make output some verbose
messages possibly printed by the SunStudio fortran compilers,
to avoid spurious failures.  This bug has been there from the
very first version of this test script.
---
 ChangeLog          |    8 ++++++++
 tests/silent5.test |    4 ++++
 2 files changed, 12 insertions(+), 0 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 80c1729..d901dd0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2010-11-17  Stefano Lattarini  <address@hidden>
+
+       Fix spurious failures of silent5.test with Sun Fortran.
+       * tests/silent5.test: Strip from the make output some verbose
+       messages possibly printed by the SunStudio fortran compilers,
+       to avoid spurious failures.  This bug has been there from the
+       very first version of this test script.
+
 2010-06-26  Stefano Lattarini  <address@hidden>
 
        Fix typo-related bug in test script silent5.test.
diff --git a/tests/silent5.test b/tests/silent5.test
index e29f48f..47bba5b 100755
--- a/tests/silent5.test
+++ b/tests/silent5.test
@@ -35,6 +35,10 @@ do_and_check_silent_build ()
 
   $MAKE >stdout || { cat stdout; Exit 1; }
   cat stdout
+  # Avoid spurious failures with SunStudio Fortran compilers.
+  sed '/^NOTICE: *[Ii]nvoking.*-ftrap=%none/d' stdout > t
+  mv -f t stdout
+  cat stdout
 
   $EGREP ' (-c|-o)' stdout && Exit 1
   $EGREP '(mv|ylwrap) ' stdout && Exit 1
-- 
1.7.1


reply via email to

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