[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH] Modernize and improve test scripts `subdir*.test'.
From: |
Stefano Lattarini |
Subject: |
[PATCH] Modernize and improve test scripts `subdir*.test'. |
Date: |
Sat, 19 Jun 2010 22:15:58 +0200 |
User-agent: |
KMail/1.12.1 (Linux/2.6.30-2-686; KDE/4.3.4; i686; ; ) |
And yet another testsuite-tweaking patch.
Regards,
Stefano
-*-*-*-
Modernize and improve test scripts `subdir*.test'.
* tests/subdir.test: Enable `errexit' shell flag, and related
changes. Use the `configure.in' stub created by `./defs',
rather than writing one from scratch.
* tests/subdir2.test: Likewise.
* tests/subdir4.test: Likewise.
* tests/subdir3.test: Enable `errexit' shell flag, and related
changes. Do not create useless dummy source files.
* tests/subdir8.test: Prefer fgrep over grep. Add trailing `:'
command. Some minor changes to keep it more in sync with sister
test `subdir5.test'.
* tests/subdir5.test: Refactored and modified to minimize diffs
with sister test `subdir8.test'.
* tests/subdir6.test: Cosmetic change in spacing.
* tests/subdir9.test: Define and use new variable `$distdir'. Add
trailing `:' command.
* tests/subdir10.test: Cosmetic consistency-related change.
* tests/subdirbuiltsources.test: Cosmetic changes in spacings.
(configure.in): Use stub created by `./defs', rather than writing
it from scratch. Do not use obsoleted and/or deprecated forms of
autoconf/automake macros.
---
ChangeLog | 24 +++++++++++++++++++
tests/subdir.test | 16 ++++++++-----
tests/subdir10.test | 4 +-
tests/subdir2.test | 16 ++++++++-----
tests/subdir3.test | 15 +++++------
tests/subdir4.test | 17 +++++++------
tests/subdir5.test | 51 +++++++++++++++++++++-------------------
tests/subdir6.test | 3 +-
tests/subdir7.test | 10 +++++---
tests/subdir8.test | 27 +++++++++++++--------
tests/subdir9.test | 10 +++++--
tests/subdirbuiltsources.test | 13 ++++------
12 files changed, 126 insertions(+), 80 deletions(-)
From 5b76b5c3c9c2fddc29a4ae5ca702a03ac8e6bcaf Mon Sep 17 00:00:00 2001
From: Stefano Lattarini <address@hidden>
Date: Sat, 19 Jun 2010 14:55:10 +0200
Subject: [PATCH] Modernize and improve test scripts `subdir*.test'.
* tests/subdir.test: Enable `errexit' shell flag, and related
changes. Use the `configure.in' stub created by `./defs',
rather than writing one from scratch.
* tests/subdir2.test: Likewise.
* tests/subdir4.test: Likewise.
* tests/subdir3.test: Enable `errexit' shell flag, and related
changes. Do not create useless dummy source files.
* tests/subdir8.test: Prefer fgrep over grep. Add trailing `:'
command. Some minor changes to keep it more in sync with sister
test `subdir5.test'.
* tests/subdir5.test: Refactored and modified to minimize diffs
with sister test `subdir8.test'.
* tests/subdir6.test: Cosmetic change in spacing.
* tests/subdir9.test: Define and use new variable `$distdir'. Add
trailing `:' command.
* tests/subdir10.test: Cosmetic consistency-related change.
* tests/subdirbuiltsources.test: Cosmetic changes in spacings.
(configure.in): Use stub created by `./defs', rather than writing
it from scratch. Do not use obsoleted and/or deprecated forms of
autoconf/automake macros.
---
ChangeLog | 24 +++++++++++++++++++
tests/subdir.test | 16 ++++++++-----
tests/subdir10.test | 4 +-
tests/subdir2.test | 16 ++++++++-----
tests/subdir3.test | 15 +++++------
tests/subdir4.test | 17 +++++++------
tests/subdir5.test | 51 +++++++++++++++++++++-------------------
tests/subdir6.test | 3 +-
tests/subdir7.test | 10 +++++---
tests/subdir8.test | 27 +++++++++++++--------
tests/subdir9.test | 10 +++++--
tests/subdirbuiltsources.test | 13 ++++------
12 files changed, 126 insertions(+), 80 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index b5f1433..2a5b908 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,27 @@
+2010-06-19 Stefano Lattarini <address@hidden>
+
+ Modernize and improve test scripts `subdir*.test'.
+ * tests/subdir.test: Enable `errexit' shell flag, and related
+ changes. Use the `configure.in' stub created by `./defs',
+ rather than writing one from scratch.
+ * tests/subdir2.test: Likewise.
+ * tests/subdir4.test: Likewise.
+ * tests/subdir3.test: Enable `errexit' shell flag, and related
+ changes. Do not create useless dummy source files.
+ * tests/subdir8.test: Prefer fgrep over grep. Add trailing `:'
+ command. Some minor changes to keep it more in sync with sister
+ test `subdir5.test'.
+ * tests/subdir5.test: Refactored and modified to minimize diffs
+ with sister test `subdir8.test'.
+ * tests/subdir6.test: Cosmetic change in spacing.
+ * tests/subdir9.test: Define and use new variable `$distdir'. Add
+ trailing `:' command.
+ * tests/subdir10.test: Cosmetic consistency-related change.
+ * tests/subdirbuiltsources.test: Cosmetic changes in spacings.
+ (configure.in): Use stub created by `./defs', rather than writing
+ it from scratch. Do not use obsoleted and/or deprecated forms of
+ autoconf/automake macros.
+
2010-06-13 Stefano Lattarini <address@hidden>
Add useful comment in test script obsolete.test.
diff --git a/tests/subdir.test b/tests/subdir.test
index 85db059..edad4ca 100755
--- a/tests/subdir.test
+++ b/tests/subdir.test
@@ -1,5 +1,6 @@
#! /bin/sh
-# Copyright (C) 1996, 1998, 2000, 2001, 2002 Free Software Foundation, Inc.
+# Copyright (C) 1996, 1998, 2000, 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
@@ -19,12 +20,13 @@
. ./defs || Exit 1
+set -e
+
mkdir zot
-cat > configure.in << 'END'
-AC_INIT
-AM_INIT_AUTOMAKE(nonesuch, nonesuch)
-AC_OUTPUT(Makefile zot/Makefile)
+cat >> configure.in << 'END'
+AC_CONFIG_FILES([zot/Makefile])
+AC_OUTPUT
END
cat > Makefile.am << 'END'
@@ -35,5 +37,7 @@ cat > zot/Makefile.am << 'END'
pkgdata_DATA =
END
-$ACLOCAL || Exit 1
+$ACLOCAL
$AUTOMAKE
+
+:
diff --git a/tests/subdir10.test b/tests/subdir10.test
index c71216b..eabd1a9 100755
--- a/tests/subdir10.test
+++ b/tests/subdir10.test
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 2009 Free Software Foundation, Inc.
+# Copyright (C) 2009, 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
@@ -36,4 +36,4 @@ $AUTOMAKE
./configure
env fail=1 $MAKE all clean
-Exit 0
+:
diff --git a/tests/subdir2.test b/tests/subdir2.test
index aa83436..9412054 100755
--- a/tests/subdir2.test
+++ b/tests/subdir2.test
@@ -1,5 +1,6 @@
#! /bin/sh
-# Copyright (C) 1996, 1998, 2000, 2001, 2002 Free Software Foundation, Inc.
+# Copyright (C) 1996, 1998, 2000, 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,14 @@
. ./defs || Exit 1
+set -e
+
mkdir one
mkdir one/two
-cat > configure.in << 'END'
-AC_INIT
-AM_INIT_AUTOMAKE(nonesuch, nonesuch)
-AC_OUTPUT(Makefile one/Makefile one/two/Makefile)
+cat >> configure.in << 'END'
+AC_CONFIG_FILES([one/Makefile one/two/Makefile])
+AC_OUTPUT
END
# Files required because we are using `--gnu'.
@@ -47,5 +49,7 @@ cat > one/two/Makefile.am << 'END'
pkgdata_DATA =
END
-$ACLOCAL || Exit 1
+$ACLOCAL
$AUTOMAKE --gnu
+
+:
diff --git a/tests/subdir3.test b/tests/subdir3.test
index aa02be0..3da2cc8 100755
--- a/tests/subdir3.test
+++ b/tests/subdir3.test
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 1999, 2001, 2002 Free Software Foundation, Inc.
+# Copyright (C) 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,6 +18,8 @@
. ./defs || Exit 1
+set -e
+
cat > Makefile.am << 'END'
bin_PROGRAMS = zardoz widdershins
zardoz_SOURCES = y.c x/z.c
@@ -28,12 +30,9 @@ cat >> configure.in << 'END'
AC_PROG_CC
END
-mkdir x
-
-: > y.c
-: > x/z.c
-
-$ACLOCAL || Exit 1
-$AUTOMAKE || Exit 1
+$ACLOCAL
+$AUTOMAKE
grep '^z\.o: x/z\.c$' Makefile.in
+
+:
diff --git a/tests/subdir4.test b/tests/subdir4.test
index 2f85213..7ea10f8 100755
--- a/tests/subdir4.test
+++ b/tests/subdir4.test
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 2000, 2001, 2002 Free Software Foundation, Inc.
+# Copyright (C) 2000, 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
@@ -19,14 +19,15 @@
. ./defs || Exit 1
+set -e
+
mkdir lib src
-cat > configure.in << 'END'
-AC_INIT
-AM_INIT_AUTOMAKE(nonesuch, nonesuch)
+cat >> configure.in << 'END'
AC_PROG_RANLIB
AC_PROG_CC
-AC_OUTPUT(Makefile lib/Makefile src/Makefile)
+AC_CONFIG_FILES([lib/Makefile src/Makefile])
+AC_OUTPUT
END
# Files required because we are using `--gnu'.
@@ -55,8 +56,8 @@ cat > src/Makefile.am << 'END'
pkgdata_DATA =
END
-$ACLOCAL || Exit 1
-$AUTOMAKE --gnu || Exit 1
+$ACLOCAL
+$AUTOMAKE --gnu
# Make sure that depcomp is *not* included in the definition
# of DIST_COMMON in lib/Makefile.in. If you change this test
@@ -65,4 +66,4 @@ $AUTOMAKE --gnu || Exit 1
# continued line.
grep '^DIST_COMMON.*depcomp' lib/Makefile.in && Exit 1
-Exit 0
+:
diff --git a/tests/subdir5.test b/tests/subdir5.test
index 2f0113b..0709440 100755
--- a/tests/subdir5.test
+++ b/tests/subdir5.test
@@ -1,6 +1,6 @@
#! /bin/sh
-# Copyright (C) 2001, 2002, 2003, 2004, 2009 Free Software Foundation,
-# Inc.
+# Copyright (C) 2001, 2002, 2003, 2004, 2009, 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
@@ -27,14 +27,15 @@ required='GNUmake gcc'
set -e
-cat > configure.in << 'END'
-AC_INIT(maude, 1.0)
-AM_INIT_AUTOMAKE
+cat >> configure.in << 'END'
+AC_PROG_CC
AM_PROG_CC_C_O
-AC_CONFIG_FILES(Makefile)
+m4_include([confiles.m4])
AC_OUTPUT
END
+: > confiles.m4
+
cat > Makefile.am << 'END'
bin_PROGRAMS = wish
wish_SOURCES = a.c
@@ -55,47 +56,49 @@ $AUTOMAKE --include-deps --copy --add-missing
./configure
$MAKE
+# Now add a new directory.
+#
# We shouldn't need to $sleep here: configure ensures that files
# generated by it are newer than configure. Thus, even if
# Makefile.in is newer than configure but the updated Makefile.am
# below has the same timestamp as Makefile.in, the latter should
# be rebuilt due to its dependency on configure.in.
-# Now add a new directory.
-cat > configure.in << 'END'
-AC_INIT(maude, 1.0)
-AM_INIT_AUTOMAKE
-AC_PROG_CC
-AM_PROG_CC_C_O
-AC_CONFIG_FILES(Makefile maude/Makefile)
-m4_include([confile.m4])
-AC_OUTPUT
-END
+mkdir maude
-: > confile.m4
+# Update confiles.m4 *before* updating sub/Makefile.am.
+# (subdir8.test do it in the other way: it updates confiles.m4
+# after Makefile.am)
+cat >> confiles.m4 << 'END'
+AC_CONFIG_FILES([maude/Makefile])
+END
-mkdir maude
cat > maude/Makefile.am << 'END'
include_HEADERS = foo.h
END
-: > maude/foo.h
-
echo 'SUBDIRS = maude' >> Makefile.am
+: > maude/foo.h
+
# We want a simple rebuild to create maude/Makefile automatically.
$MAKE
test -f maude/Makefile
# Add yet another directory
mkdir maude2
-echo 'AC_CONFIG_FILES([maude2/Makefile])AC_SUBST([GREPME])' > confile.m4
+cat >> confiles.m4 << 'END'
+AC_CONFIG_FILES([maude2/Makefile])
+AC_SUBST([GREPME])
+END
: > maude2/Makefile.am
echo 'SUBDIRS += maude2' >> Makefile.am
# We want a simple rebuild to create maude2/Makefile and update
# all other Makefiles automatically.
$MAKE
-grep GREPME Makefile
-grep GREPME maude/Makefile
-grep GREPME maude2/Makefile
+$FGREP GREPME Makefile
+$FGREP GREPME maude/Makefile
+$FGREP GREPME maude2/Makefile
+
+:
diff --git a/tests/subdir6.test b/tests/subdir6.test
index 81221ff..f3a2107 100755
--- a/tests/subdir6.test
+++ b/tests/subdir6.test
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 2002 Free Software Foundation, Inc.
+# Copyright (C) 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
@@ -38,4 +38,5 @@ $MAKE clean
test -f sub/stamp-h1
$MAKE distclean
test -f sub/stamp-h1 && Exit 1
+
:
diff --git a/tests/subdir7.test b/tests/subdir7.test
index e72f489..b50b250 100755
--- a/tests/subdir7.test
+++ b/tests/subdir7.test
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
+# Copyright (C) 2002, 2003, 2004, 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
@@ -23,7 +23,7 @@ set -e
mkdir obj
cat >>configure.in << 'END'
-AC_CONFIG_FILES(obj/Makefile)
+AC_CONFIG_FILES([obj/Makefile])
AC_OUTPUT
END
@@ -35,11 +35,13 @@ $ACLOCAL
AUTOMAKE_fails
grep 'Makefile.am:1:.*obj.*BSD' stderr
-cat >Makefile.am <<'EOF'
+cat >Makefile.am <<'END'
SUBDIRS = @STH@
FOO = obj
DIST_SUBDIRS = $(FOO)
-EOF
+END
AUTOMAKE_fails
grep 'Makefile.am:2:.*obj.*BSD' stderr
+
+:
diff --git a/tests/subdir8.test b/tests/subdir8.test
index bc3043e..3a79946 100755
--- a/tests/subdir8.test
+++ b/tests/subdir8.test
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 2003, 2004, 2009 Free Software Foundation, Inc.
+# Copyright (C) 2003, 2004, 2009, 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
@@ -26,8 +26,6 @@ required='GNUmake gcc'
set -e
-echo 'AC_CONFIG_FILES([sub/Makefile])' >confiles.m4
-
cat >> configure.in << 'END'
AC_PROG_CC
AM_PROG_CC_C_O
@@ -36,6 +34,8 @@ MORE_DEFS
AC_OUTPUT
END
+echo 'AC_CONFIG_FILES([sub/Makefile])' > confiles.m4
+
cat > Makefile.am << 'END'
SUBDIRS = sub
ACLOCAL_AMFLAGS = -I m4
@@ -67,7 +67,12 @@ $AUTOMAKE --copy --add-missing
$MAKE
# Now add a new directory.
-# See subdir5.test for why we shouldn't need to $sleep here.
+#
+# We shouldn't need to $sleep here: configure ensures that files
+# generated by it are newer than configure. Thus, even if
+# Makefile.in is newer than configure but the updated Makefile.am
+# below has the same timestamp as Makefile.in, the latter should
+# be rebuilt due to its dependency on configure.in.
mkdir sub/maude
cat > sub/maude/Makefile.am << 'END'
@@ -81,8 +86,8 @@ echo 'SUBDIRS = maude' >> sub/Makefile.am
mkdir maude
: > maude/Makefile.am
-# Update confile.m4 *after* updating sub/Makefile.am.
-# (subdir5.test do it in the other way: it updates configure.in
+# Update confiles.m4 *after* updating sub/Makefile.am.
+# (subdir5.test do it in the other way: it updates confiles.m4
# before Makefile.am)
echo 'AC_CONFIG_FILES([maude/Makefile sub/maude/Makefile])' >> confiles.m4
@@ -98,7 +103,9 @@ test -f sub/maude/Makefile
# the top-level directory.
echo 'AC_DEFUN([MORE_DEFS], [AC_SUBST([GREPME])])' > m4/moredefs.m4
$MAKE
-grep GREPME Makefile
-grep GREPME maude/Makefile
-grep GREPME sub/Makefile
-grep GREPME sub/maude/Makefile
+$FGREP GREPME Makefile
+$FGREP GREPME maude/Makefile
+$FGREP GREPME sub/Makefile
+$FGREP GREPME sub/maude/Makefile
+
+:
diff --git a/tests/subdir9.test b/tests/subdir9.test
index 4346326..c73ca18 100755
--- a/tests/subdir9.test
+++ b/tests/subdir9.test
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 2004 Free Software Foundation, Inc.
+# Copyright (C) 2004, 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
@@ -43,13 +43,17 @@ cat >src/subdir2/Makefile.am <<'EOF'
EXTRA_DIST = foo
EOF
+distdir=$me-1.0
+
$ACLOCAL
$AUTOCONF
$AUTOMAKE --copy --add-missing
./configure
$MAKE distdir
-test -f subdir9-1.0/src/subdir/foo
-test -f subdir9-1.0/src/subdir2/foo
+test -f $distdir/src/subdir/foo
+test -f $distdir/src/subdir2/foo
$MAKE clean
$MAKE distclean
test ! -f src/subdir2/Makefile
+
+:
diff --git a/tests/subdirbuiltsources.test b/tests/subdirbuiltsources.test
index 8fe506a..a84f28e 100755
--- a/tests/subdirbuiltsources.test
+++ b/tests/subdirbuiltsources.test
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+# Copyright (C) 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
@@ -24,12 +24,11 @@ set -e
mkdir lib
-cat > configure.in << 'END'
-AC_INIT
-AM_INIT_AUTOMAKE(nonesuch, nonesuch)
+cat >> configure.in << 'END'
+AC_CONFIG_FILES([lib/Makefile])
AC_PROG_RANLIB
AC_PROG_CC
-AC_OUTPUT(Makefile lib/Makefile)
+AC_OUTPUT
END
# Files required because we are using `--gnu'.
@@ -60,9 +59,7 @@ END
$ACLOCAL
-
$AUTOCONF
-
$AUTOMAKE --include-deps --copy --force-missing --add-missing --gnu
./configure
@@ -71,4 +68,4 @@ $AUTOMAKE --include-deps --copy --force-missing --add-missing
--gnu
# $MAKE -C lib foo.h
$MAKE
-Exit 0
+:
--
1.6.5
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [PATCH] Modernize and improve test scripts `subdir*.test'.,
Stefano Lattarini <=