automake-commit
[Top][All Lists]
Advanced

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

[Automake-commit] [SCM] GNU Automake branch, maint, updated. v1.11-146-g


From: Stefano Lattarini
Subject: [Automake-commit] [SCM] GNU Automake branch, maint, updated. v1.11-146-g36fe4f3
Date: Sun, 18 Jul 2010 12:24:06 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Automake".

http://git.sv.gnu.org/gitweb/?p=automake.git;a=commitdiff;h=36fe4f389c0a835dfcdb0f58a8909eab43189af1

The branch, maint has been updated
       via  36fe4f389c0a835dfcdb0f58a8909eab43189af1 (commit)
      from  9b72d6688f5a1897db8f9d1fb85f3a9c77046bd8 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
-----------------------------------------------------------------------

Summary of changes:
 ChangeLog        |   14 ++++++++++++++
 tests/cond5.test |   47 ++++++++++++++++++++++++++++++-----------------
 2 files changed, 44 insertions(+), 17 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index a5efdc2..251ff2e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,17 @@
+2010-07-18  Stefano Lattarini  <address@hidden>
+
+       Improve and extend test cond5.test.
+       * tests/cond5.test: Do not blindly sleep 60 seconds before polling
+       the background automake process, but poll it every 10 seconds for
+       at most 30 times (this makes the test both faster on good machines,
+       and more resilient to spurious timeout-due failures when in low
+       priority or on havily-loaded systems).
+       Check also that automake writes the expected error messages on the
+       standard error.
+       Enable `errexit' flag, and related changes.
+       Rely on the `configure.in' stub created by `./defs', rather than
+       writing one from scratch.
+
 2010-06-26  Ralf Wildenhues  <address@hidden>
 
        Update program --help output to match current GCS.
diff --git a/tests/cond5.test b/tests/cond5.test
index 531cda8..84afdd0 100755
--- a/tests/cond5.test
+++ b/tests/cond5.test
@@ -1,5 +1,6 @@
 #! /bin/sh
-# Copyright (C) 1998, 1999, 2001, 2002  Free Software Foundation, Inc.
+# Copyright (C) 1998, 1999, 2001, 2002, 2010 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
@@ -18,13 +19,13 @@
 
 . ./defs || Exit 1
 
-cat > configure.in << 'END'
-AC_INIT
-AM_INIT_AUTOMAKE(nonesuch, nonesuch)
+set -e
+
+cat >> configure.in << 'END'
 AC_PROG_CC
-AM_CONDITIONAL(ONE, true)
-AM_CONDITIONAL(TWO, false)
-AC_OUTPUT(Makefile)
+AM_CONDITIONAL([ONE], [true])
+AM_CONDITIONAL([TWO], [false])
+AC_OUTPUT
 END
 
 cat > Makefile.am << 'END'
@@ -41,15 +42,27 @@ endif
 targ_SOURCES = main.c $(OPT_SRC)
 END
 
-# The bug is that automake hangs.  So we give it a few seconds and
-# then kill it.
-$ACLOCAL || Exit 1
-$AUTOMAKE &
+# The bug is that automake hangs.  So we give it an appropriate grace
+# time, then kill it if necessary.
+$ACLOCAL
+$AUTOMAKE 2>stderr &
 pid=$!
 
-sleep 60
-kill -0 $pid && {
-   kill $pid
-   Exit 1
-}
-Exit 0
+# Make at most 30 tries, one every 10 seconds (= 300 seconds = 5 min).
+try=1
+while test $try -le 30; do
+  if kill -0 $pid; then
+    : process $pid is still alive, wait and retry
+    sleep 10
+    try=`expr $try + 1`
+  else
+    cat stderr >&2
+    # Automake must fail with a proper error message.
+    grep 'variable.*OPT_SRC.*recursively defined' stderr
+    Exit 0
+  fi
+done
+# The automake process probably hung.  Kill it, and exit with failure.
+echo "$me: automake process $pid hung"
+kill $pid
+Exit 1


hooks/post-receive
-- 
GNU Automake



reply via email to

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