* Gary V. Vaughan wrote on Sun, Sep 12, 2010 at 12:58:23PM CEST:
> On 12 Sep 2010, at 17:47, Ralf Wildenhues wrote:
> > <0001-Try-out-new-testsuite-with-old-Autoconf-and-Automake.patch>
> 
> You forgot to `git add tests/old-autoconf.at' before you generated the
> patch though...

D'oh.  That's what you get trying to get something done on the run for
lunch ... thanks for checking.

Cheers,
Ralf
>From b6c48292197a756cd0411dcb6635120272665711 Mon Sep 17 00:00:00 2001
From: Ralf Wildenhues <ralf.wildenh...@gmx.de>
Date: Sun, 12 Sep 2010 12:45:44 +0200
Subject: [PATCH] Try out new testsuite with old Autoconf and Automake versions.

* tests/old-autotools.at (old autoconf and automake): New file,
new test.
* Makefile.am (TESTSUITE_AT): Update.
* doc/libtool.texi (Test descriptions): Document new Autotest
keywords `expensive' and `net-access'.
* HACKING: Likewise; also document `interactive'.
Suggested by Gary V. Vaughan.

Signed-off-by: Ralf Wildenhues <ralf.wildenh...@gmx.de>
---
 ChangeLog              |   11 ++++++
 HACKING                |    7 +++-
 Makefile.am            |    1 +
 doc/libtool.texi       |    9 +++++
 tests/old-autotools.at |   81 ++++++++++++++++++++++++++++++++++++++++++++++++
 5 files changed, 107 insertions(+), 2 deletions(-)
 create mode 100644 tests/old-autotools.at

diff --git a/ChangeLog b/ChangeLog
index 4584882..d6fb995 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2010-09-12  Ralf Wildenhues  <ralf.wildenh...@gmx.de>
+
+       Try out new testsuite with old Autoconf and Automake versions.
+       * tests/old-autotools.at (old autoconf and automake): New file,
+       new test.
+       * Makefile.am (TESTSUITE_AT): Update.
+       * doc/libtool.texi (Test descriptions): Document new Autotest
+       keywords `expensive' and `net-access'.
+       * HACKING: Likewise; also document `interactive'.
+       Suggested by Gary V. Vaughan.
+
 2010-09-12  Jürgen Reuter  <juergen.reu...@physik.uni-freiburg.de>  (tiny 
change)
            Ralf Wildenhues  <ralf.wildenh...@gmx.de>
 
diff --git a/HACKING b/HACKING
index b462c98..277a011 100644
--- a/HACKING
+++ b/HACKING
@@ -65,11 +65,14 @@ and is not part of a release distribution.
 * The new Autotest testsuite uses keywords to denote test features:
     autoconf           needs Autoconf
     automake           needs Automake
+    expensive          very expensive test (only enabled if the environment
+                       variable RUN_EXPENSIVE_TESTS is set)
+    interactive                might cause popup windows from the system
     libltdl            exercises the `libltdl' library
     libtool            exercises the `libtool' script
     libtoolize         exercises the `libtoolize' script
-    recursive          runs the suite recursively, with a modified
-                       `libtool' script and with `-k libtool'
+    net-access         might download files from the GNU website
+    recursive          runs the suite recursively
     CXX F77 FC GCJ     exercises a language other than C
 
 
diff --git a/Makefile.am b/Makefile.am
index dcd0876..ff8a225 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -499,6 +499,7 @@ TESTSUITE_AT        = tests/testsuite.at \
                  tests/stresstest.at \
                  tests/cmdline_wrap.at \
                  tests/pic_flag.at \
+                 tests/old-autotools.at \
                  tests/darwin.at \
                  tests/deplibs-mingw.at \
                  tests/sysroot.at
diff --git a/doc/libtool.texi b/doc/libtool.texi
index 9314612..91f98e8 100644
--- a/doc/libtool.texi
+++ b/doc/libtool.texi
@@ -5463,6 +5463,11 @@ by the test group.  The tests are typically skipped if 
the program is
 not installed.  The @samp{automake} keyword may also denote use of the
 @command{aclocal} program.
 
+...@item expensive
+This test group is very expensive, and skipped unless the environment
+variable @env{RUN_EXPENSIVE_TESTS} is also set.  Do not do this unless
+you know what you are doing!
+
 @item interactive
 This test group may require user interaction on some systems.  Typically,
 this means closing a popup window about a DLL load error on Windows.
@@ -5475,6 +5480,10 @@ Denote that the @file{libltdl} library is exercised by 
the test group.
 Denote that the @command{libtool} or @command{libtoolize} scripts are
 exercised by the test group, respectively.
 
+...@item net-access
+This test group might access the internet to download files from GNU
+servers.
+
 @item recursive
 Denote that this test group may recursively re-invoke the test suite
 itself, with changed settings and maybe a changed @command{libtool}
diff --git a/tests/old-autotools.at b/tests/old-autotools.at
new file mode 100644
index 0000000..f0aa5ce
--- /dev/null
+++ b/tests/old-autotools.at
@@ -0,0 +1,81 @@
+# old-autotools.at -- try running with old Autoconf and Automake -*- Autotest 
-*-
+
+#   Copyright (C) 2010 Free Software Foundation, Inc.
+#
+#   This file is part of GNU Libtool.
+#
+# GNU Libtool is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2 of
+# the License, or (at your option) any later version.
+#
+# GNU Libtool is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with GNU Libtool; see the file COPYING.  If not, a copy
+# can be downloaded from  http://www.gnu.org/licenses/gpl.html,
+# or obtained by writing to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+####
+
+AT_SETUP([old autoconf and automake])
+AT_KEYWORDS([expensive recursive net-access])
+m4_ifdef([AT_CAPTURE_FILE],
+[AT_CAPTURE_FILE([testsuite.log])])
+
+# Try running the new testsuite with the oldest tool versions we support.
+ACVERSION=2.59
+AMVERSION=1.9.6
+inst=`pwd`/inst
+PATH=$inst/bin:$PATH
+: ${WGET=wget}
+: ${MAKE=make}
+FTP_GNU=http://ftp.gnu.org/gnu/
+
+# You have to set RUN_EXPENSIVE_TESTS to run this test.
+AT_CHECK([test -n "$RUN_EXPENSIVE_TESTS" || exit 77])
+# We need a VPATH build.
+AT_CHECK([test "$at_srcdir" != . || exit 77])
+
+# If versions are not as desired, we need wget or curl (both understand -o).
+AT_CHECK([$AUTOCONF --version | grep "$ACVERSION$"], [], [ignore], [ignore],
+  [AT_CHECK([$WGET --version || exit 77], [], [ignore], [ignore])
+   AT_CHECK([$WGET -o autoconf.tar.gz 
$FTP_GNU/autoconf/autoconf-$ACVERSION.tar.gz || exit 77],
+            [], [ignore], [ignore])
+   AT_CHECK([gzip -dc autoconf-$ACVERSION.tar.gz | tar xf - || exit 77])
+   AT_CHECK([cd autoconf-$ACVERSION && ./configure --prefix="$inst" && $MAKE 
all install || exit 77],
+           [], [ignore], [ignore])
+  ])
+
+AT_CHECK([$AUTOMAKE --version | grep "$AMVERSION$"], [], [ignore], [ignore],
+  [AT_CHECK([$WGET --version || exit 77], [], [ignore], [ignore])
+   AT_CHECK([$WGET -o automake.tar.gz 
$FTP_GNU/automake/automake-$AMVERSION.tar.gz || exit 77],
+            [], [ignore], [ignore])
+   AT_CHECK([gzip -dc automake-$AMVERSION.tar.gz | tar xf - || exit 77])
+   AT_CHECK([cd automake-$AMVERSION && ./configure --prefix="$inst" && $MAKE 
all install || exit 77],
+           [], [ignore], [ignore])
+  ])
+
+for var in AUTOCONF AUTOM4TE AUTOHEADER; do
+  if eval \$$var --version | grep "$ACVERSION$"; then :; else
+    unset $var
+    AT_CHECK([$var --version | grep "$ACVERSION$" || exit 77], [], [ignore])
+  fi
+done
+for var in AUTOMAKE ACLOCAL; do
+  if eval \$$var --version | grep "$AMVERSION$"; then :; else
+    unset $var
+    AT_CHECK([$var --version | grep "$AMVERSION$" || exit 77], [], [ignore])
+  fi
+done
+
+unset RUN_EXPENSIVE_TESTS TESTSUITEFLAGS
+INNER_TESTSUITEFLAGS="$INNER_TESTSUITEFLAGS abs_top_srcdir=$abs_top_srcdir \
+  abs_builddir=$abs_builddir"
+AT_CHECK([$CONFIG_SHELL $abs_srcdir/testsuite -k 
autoconf$INNER_TESTSUITEFLAGS],
+        [], [ignore], [ignore])
+
+AT_CLEANUP
-- 
1.7.2.1.222.g9988

Reply via email to