[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH] Modernize, improve and extend tests `subobj*.test'.
From: |
Stefano Lattarini |
Subject: |
[PATCH] Modernize, improve and extend tests `subobj*.test'. |
Date: |
Wed, 14 Jul 2010 15:41:14 +0200 |
User-agent: |
KMail/1.13.3 (Linux/2.6.30-2-686; KDE/4.4.4; i686; ; ) |
* tests/subobjname.test: Add trailing `:' command.
* tests/subobj.test: Make grepping of `Makefile.in' stricter.
Escape literal dots in grep regexps.
* tests/subobj2.test: Add trailing `:' command. Do not use the
unportable fgrep option `-e'. Make grepping of `Makefile.in'
stricter.
* tests/subobj3.test: Add trailing `:' command.
(configure.in): Use proper m4 quoting, and avoid obsolescent
constructs.
* tests/subobj8.test: Likewise. Also, enable `errexit' shell
flag, with related changes
* tests/subobj4.test: Likewise. Also, make grepping of
`Makefile.in' stricter.
* tests/subobj5.test: Add trailing `:' command. Move setting of
`errexit' shell flag earlier in the script (just after inclusion
of ./defs).
(configure.in): Use the stub created by `./defs', rather than
writing it from scratch, and avoid obsolescent constructs.
* tests/subobj6.test: Add trailing `:' command. Move setting of
`errexit' shell flag earlier in the script (just after inclusion
of ./defs). Do not create useless dummy ac-init file `f'.
* tests/subobj7.test: Do not create useless dummy ac-init file
`f'. Prefer fgrep over grep.
(configure.in): Use the stub created by `./defs', rather than
writing it from scratch, and avoid obsolescent constructs.
* tests/subobj9.test: Move setting of `errexit' shell flag earlier
in the script (just after inclusion of ./defs). Fail the test if
`make distcheck' fails. Ensure verbose printing of captured make
stdout.
(configure.in): Normalize the call to AC_INIT w.r.t. other tests.
(Makefile.am): Explicitly mark target "print" as phony.
* tests/subobj10.test: Removed duplicated call to `set -e'. Add
trailing `:' command.
(configure.in): Normalize the call to AC_INIT w.r.t. other tests.
---
ChangeLog | 38 ++++++++++++++++++++++++++++++++++++++
tests/subobj.test | 4 ++--
tests/subobj10.test | 8 ++++----
tests/subobj2.test | 8 +++++---
tests/subobj3.test | 17 ++++++++++-------
tests/subobj4.test | 15 ++++++++++-----
tests/subobj5.test | 17 ++++++++++-------
tests/subobj6.test | 12 ++++++------
tests/subobj7.test | 10 ++++------
tests/subobj8.test | 27 ++++++++++++++++-----------
tests/subobj9.test | 19 ++++++++++---------
tests/subobjname.test | 4 +++-
12 files changed, 118 insertions(+), 61 deletions(-)
From a7948f9bce1b252076a00d32720c106ea4092e87 Mon Sep 17 00:00:00 2001
From: Stefano Lattarini <address@hidden>
Date: Sun, 27 Jun 2010 16:34:42 +0200
Subject: [PATCH] Modernize, improve and extend tests `subobj*.test'.
* tests/subobjname.test: Add trailing `:' command.
* tests/subobj.test: Make grepping of `Makefile.in' stricter.
Escape literal dots in grep regexps.
* tests/subobj2.test: Add trailing `:' command. Do not use the
unportable fgrep option `-e'. Make grepping of `Makefile.in'
stricter.
* tests/subobj3.test: Add trailing `:' command.
(configure.in): Use proper m4 quoting, and avoid obsolescent
constructs.
* tests/subobj8.test: Likewise. Also, enable `errexit' shell
flag, with related changes
* tests/subobj4.test: Likewise. Also, make grepping of
`Makefile.in' stricter.
* tests/subobj5.test: Add trailing `:' command. Move setting of
`errexit' shell flag earlier in the script (just after inclusion
of ./defs).
(configure.in): Use the stub created by `./defs', rather than
writing it from scratch, and avoid obsolescent constructs.
* tests/subobj6.test: Add trailing `:' command. Move setting of
`errexit' shell flag earlier in the script (just after inclusion
of ./defs). Do not create useless dummy ac-init file `f'.
* tests/subobj7.test: Do not create useless dummy ac-init file
`f'. Prefer fgrep over grep.
(configure.in): Use the stub created by `./defs', rather than
writing it from scratch, and avoid obsolescent constructs.
* tests/subobj9.test: Move setting of `errexit' shell flag earlier
in the script (just after inclusion of ./defs). Fail the test if
`make distcheck' fails. Ensure verbose printing of captured make
stdout.
(configure.in): Normalize the call to AC_INIT w.r.t. other tests.
(Makefile.am): Explicitly mark target "print" as phony.
* tests/subobj10.test: Removed duplicated call to `set -e'. Add
trailing `:' command.
(configure.in): Normalize the call to AC_INIT w.r.t. other tests.
---
ChangeLog | 38 ++++++++++++++++++++++++++++++++++++++
tests/subobj.test | 4 ++--
tests/subobj10.test | 8 ++++----
tests/subobj2.test | 8 +++++---
tests/subobj3.test | 17 ++++++++++-------
tests/subobj4.test | 15 ++++++++++-----
tests/subobj5.test | 17 ++++++++++-------
tests/subobj6.test | 12 ++++++------
tests/subobj7.test | 10 ++++------
tests/subobj8.test | 27 ++++++++++++++++-----------
tests/subobj9.test | 19 ++++++++++---------
tests/subobjname.test | 4 +++-
12 files changed, 118 insertions(+), 61 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 4366381..222bdeb 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,41 @@
+2010-07-14 Stefano Lattarini <address@hidden>
+
+ Modernize, improve and extend tests `subobj*.test'.
+ * tests/subobjname.test: Add trailing `:' command.
+ * tests/subobj.test: Make grepping of `Makefile.in' stricter.
+ Escape literal dots in grep regexps.
+ * tests/subobj2.test: Add trailing `:' command. Do not use the
+ unportable fgrep option `-e'. Make grepping of `Makefile.in'
+ stricter.
+ * tests/subobj3.test: Add trailing `:' command.
+ (configure.in): Use proper m4 quoting, and avoid obsolescent
+ constructs.
+ * tests/subobj8.test: Likewise. Also, enable `errexit' shell
+ flag, with related changes
+ * tests/subobj4.test: Likewise. Also, make grepping of
+ `Makefile.in' stricter.
+ * tests/subobj5.test: Add trailing `:' command. Move setting of
+ `errexit' shell flag earlier in the script (just after inclusion
+ of ./defs).
+ (configure.in): Use the stub created by `./defs', rather than
+ writing it from scratch, and avoid obsolescent constructs.
+ * tests/subobj6.test: Add trailing `:' command. Move setting of
+ `errexit' shell flag earlier in the script (just after inclusion
+ of ./defs). Do not create useless dummy ac-init file `f'.
+ * tests/subobj7.test: Do not create useless dummy ac-init file
+ `f'. Prefer fgrep over grep.
+ (configure.in): Use the stub created by `./defs', rather than
+ writing it from scratch, and avoid obsolescent constructs.
+ * tests/subobj9.test: Move setting of `errexit' shell flag earlier
+ in the script (just after inclusion of ./defs). Fail the test if
+ `make distcheck' fails. Ensure verbose printing of captured make
+ stdout.
+ (configure.in): Normalize the call to AC_INIT w.r.t. other tests.
+ (Makefile.am): Explicitly mark target "print" as phony.
+ * tests/subobj10.test: Removed duplicated call to `set -e'. Add
+ trailing `:' command.
+ (configure.in): Normalize the call to AC_INIT w.r.t. other tests.
+
2010-06-26 Ralf Wildenhues <address@hidden>
Update program --help output to match current GCS.
diff --git a/tests/subobj.test b/tests/subobj.test
index 64edd0e..39dc1b9 100755
--- a/tests/subobj.test
+++ b/tests/subobj.test
@@ -39,10 +39,10 @@ cat stderr >&2
grep 'install.*compile' stderr
test -f compile
-$FGREP 'generic/a.$(OBJEXT)' Makefile.in
+grep '^generic/a\.\$(OBJEXT):' Makefile.in
grep '[^/]a\.\$(OBJEXT)' Makefile.in && Exit 1
# Opportunistically test for a different bug.
-grep '^generic/b.\$(OBJEXT):.*dirstamp' Makefile.in
+grep '^generic/b\.\$(OBJEXT):.*dirstamp' Makefile.in
:
diff --git a/tests/subobj10.test b/tests/subobj10.test
index a589e45..dbddf29 100755
--- a/tests/subobj10.test
+++ b/tests/subobj10.test
@@ -21,8 +21,8 @@ required=gcc # avoid compiler errors.
set -e
-cat > configure.in << 'END'
-AC_INIT(x, 0, x)
+cat > configure.in << END
+AC_INIT([$me], [1.0])
AM_INIT_AUTOMAKE([subdir-objects])
AM_PROG_AS
@@ -45,8 +45,6 @@ mkdir src
: >src/c.s
: >d.s
-set -e
-
$ACLOCAL
$AUTOCONF
$AUTOMAKE -a
@@ -54,3 +52,5 @@ $AUTOMAKE -a
./configure
$MAKE
$MAKE distcheck
+
+:
diff --git a/tests/subobj2.test b/tests/subobj2.test
index 1282f80..cdeafbe 100755
--- a/tests/subobj2.test
+++ b/tests/subobj2.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
@@ -33,6 +33,8 @@ END
$ACLOCAL
$AUTOMAKE
-$FGREP 'generic/a.$(OBJEXT)' Makefile.in
+grep '^generic/a\.\$(OBJEXT):' Makefile.in
grep '[^/]a\.\$(OBJEXT)' Makefile.in && Exit 1
-$FGREP -e '-c -o' Makefile.in
+grep '.*-c -o' Makefile.in
+
+:
diff --git a/tests/subobj3.test b/tests/subobj3.test
index a4ba765..4fe685c 100755
--- a/tests/subobj3.test
+++ b/tests/subobj3.test
@@ -1,6 +1,6 @@
#! /bin/sh
-# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2006 Free Software
-# Foundation, Inc.
+# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2006, 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
@@ -22,16 +22,17 @@ required=gcc
set -e
-cat > configure.in << 'END'
-AC_INIT(sub/hello.c)
+cat > configure.in << END
+AC_INIT([$me], [1.0])
dnl Prevent automake from looking in .. and ../..
-AC_CONFIG_AUX_DIR(.)
-AM_INIT_AUTOMAKE(hello,0.23)
+AC_CONFIG_AUX_DIR([.])
+AM_INIT_AUTOMAKE
AC_PROG_CC
AC_PROG_CC_STDC
AM_PROG_CC_C_O
AM_C_PROTOTYPES
-AC_OUTPUT(Makefile)
+AC_CONFIG_FILES([Makefile])
+AC_OUTPUT
END
cat > Makefile.am << 'END'
@@ -63,3 +64,5 @@ $AUTOMAKE -a
./configure
ANSI2KNR=./ansi2knr U=_ $MAKE -e
./hello
+
+:
diff --git a/tests/subobj4.test b/tests/subobj4.test
index f98ae5b..ead2305 100755
--- a/tests/subobj4.test
+++ b/tests/subobj4.test
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc.
+# Copyright (C) 2001, 2002, 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
@@ -19,11 +19,14 @@
. ./defs || Exit 1
+set -e
+
cat >> configure.in << 'END'
AC_PROG_CC
AM_PROG_CC_C_O
AC_PROG_CXX
-AC_OUTPUT(d1/Makefile d2/Makefile)
+AC_CONFIG_FILES([d1/Makefile d2/Makefile])
+AC_OUTPUT
END
mkdir d1 d2
@@ -43,7 +46,9 @@ END
: > compile
: > d2/z.c
-$ACLOCAL || Exit 1
-$AUTOMAKE || Exit 1
+$ACLOCAL
+$AUTOMAKE
+
+grep '\$(CC) .*\.\./d2/z\.c' d1/Makefile.in
-grep 'CC.*z' d1/Makefile.in
+:
diff --git a/tests/subobj5.test b/tests/subobj5.test
index 9c9568a..c857e73 100755
--- a/tests/subobj5.test
+++ b/tests/subobj5.test
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc.
+# Copyright (C) 2001, 2002, 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
@@ -19,12 +19,13 @@
. ./defs || Exit 1
-cat > configure.in << 'END'
-AC_INIT(generic/a.c)
-AM_INIT_AUTOMAKE(nonesuch, nonesuch)
+set -e
+
+cat >> configure.in << 'END'
+AC_CONFIG_FILES([generic/Makefile])
AC_PROG_CC
AM_PROG_CC_C_O
-AC_OUTPUT(Makefile generic/Makefile)
+AC_OUTPUT
END
cat > Makefile.am << 'END'
@@ -36,10 +37,12 @@ mkdir generic
: > generic/a.c
: > generic/Makefile.am
-set -e
-
$ACLOCAL
$AUTOCONF
$AUTOMAKE --include-deps --copy --add-missing
+
./configure
+
$MAKE dist
+
+:
diff --git a/tests/subobj6.test b/tests/subobj6.test
index 42b6e14..228a1e9 100755
--- a/tests/subobj6.test
+++ b/tests/subobj6.test
@@ -1,5 +1,6 @@
#! /bin/sh
-# Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
+# Copyright (C) 2001, 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
@@ -20,6 +21,8 @@
required=gcc
. ./defs || Exit 1
+set -e
+
cat >> configure.in << 'END'
AM_PROG_CC_C_O
AC_OUTPUT
@@ -38,9 +41,6 @@ test-distclean: distclean
test ! -f generic/$(am__dirstamp)
END
-# The ac-init file.
-: > f
-
mkdir generic
cat > generic/a.c << 'END'
#include <stdio.h>
@@ -51,8 +51,6 @@ int main ()
}
END
-set -e
-
$ACLOCAL
$AUTOCONF
$AUTOMAKE --include-deps --copy --add-missing
@@ -86,3 +84,5 @@ cd build2
../configure
$MAKE
$MAKE mostlyclean
+
+:
diff --git a/tests/subobj7.test b/tests/subobj7.test
index d77670c..12aa090 100755
--- a/tests/subobj7.test
+++ b/tests/subobj7.test
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc.
+# Copyright (C) 2001, 2002, 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
@@ -21,12 +21,10 @@
set -e
-cat > configure.in << 'END'
-AC_INIT(f)
-AM_INIT_AUTOMAKE(nonesuch, nonesuch)
+cat >> configure.in << 'END'
AC_PROG_CC
AM_PROG_CC_C_O
-AC_OUTPUT(Makefile)
+AC_OUTPUT
END
cat > Makefile.am << 'END'
@@ -37,6 +35,6 @@ END
$ACLOCAL
$AUTOMAKE --add-missing
-grep wish_CFLAGS Makefile.in && Exit 1
+$FGREP wish_CFLAGS Makefile.in && Exit 1
:
diff --git a/tests/subobj8.test b/tests/subobj8.test
index 63a02d1..ae9b09b 100755
--- a/tests/subobj8.test
+++ b/tests/subobj8.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
@@ -18,13 +18,16 @@
. ./defs || Exit 1
-cat > configure.in << 'END'
-AC_INIT(Makefile.am)
-AC_CONFIG_AUX_DIR(tools)
-AM_INIT_AUTOMAKE(nonesuch, nonesuch)
+set -e
+
+cat > configure.in << END
+AC_INIT([$me], [1.0])
+AC_CONFIG_AUX_DIR([tools])
+AM_INIT_AUTOMAKE
AC_PROG_CC
AM_PROG_CC_C_O
-AC_OUTPUT(Makefile foo/Makefile)
+AC_CONFIG_FILES([Makefile foo/Makefile])
+AC_OUTPUT
END
mkdir tools foo foo/bar
@@ -33,12 +36,14 @@ cat > Makefile.am << 'END'
SUBDIRS = foo
END
-cat > foo/Makefile.am << 'EOF'
+cat > foo/Makefile.am << 'END'
AUTOMAKE_OPTIONS = subdir-objects
bin_PROGRAMS = mumble
mumble_SOURCES = bar/a.c
-EOF
+END
+
+$ACLOCAL
+$AUTOMAKE --add-missing
+test -f tools/compile
-$ACLOCAL || Exit 1
-$AUTOMAKE --add-missing || Exit 1
-test -f tools/compile || Exit 1
+:
diff --git a/tests/subobj9.test b/tests/subobj9.test
index 2b331e0..9e84cc8 100755
--- a/tests/subobj9.test
+++ b/tests/subobj9.test
@@ -19,13 +19,13 @@
required='libtoolize g++'
. ./defs || Exit 1
-cat > configure.in << 'END'
-AC_INIT(x, 0, x)
-AM_INIT_AUTOMAKE([subdir-objects])
+set -e
+cat > configure.in << END
+AC_INIT([$me], [1.0])
+AM_INIT_AUTOMAKE([subdir-objects])
AC_PROG_CXX
AM_PROG_LIBTOOL
-
AC_CONFIG_FILES([Makefile])
AC_OUTPUT
END
@@ -33,7 +33,7 @@ END
cat > Makefile.am << 'END'
noinst_LTLIBRARIES = libfoo.la
libfoo_la_SOURCES = src/foo.cc .//src/bar.cc # the `.//' is meant.
-
+.PHONY: print
print:
@echo BEG1: "$(LTCXXCOMPILE)" :1END
@echo BEG2: "$(CXXLINK)" :2END
@@ -55,7 +55,6 @@ int doit2 (void)
}
END
-set -e
libtoolize --force
$ACLOCAL
@@ -65,17 +64,19 @@ $AUTOMAKE -a
# Skip this test on configure errors (e.g., broken C++ compilers).
./configure || Exit 77
-# opportunistically check that --tag=CXX is used when supported
+# Opportunistically check that --tag=CXX is used when supported.
if test -n "`./libtool --help | grep tag=TAG`"; then
- $MAKE print >stdout
+ $MAKE print >stdout || { cat stdout; Exit 1; }
cat stdout
grep 'BEG1: .*--tag=CXX.*--mode=compile.* :1END' stdout
grep 'BEG2: .*--tag=CXX.*--mode=link.* :2END' stdout
fi
$MAKE
-$MAKE distcheck 2>&1 | tee out
+$MAKE distcheck >out 2>&1 || { cat out; Exit 1; }
+cat out
# GNU Make used to complain that the Makefile contained two rules
# for `src/.dirstamp' and `.//src/.dirstamp'.
grep 'overriding commands' out && Exit 1
+
:
diff --git a/tests/subobjname.test b/tests/subobjname.test
index 79584cf..a8128bb 100755
--- a/tests/subobjname.test
+++ b/tests/subobjname.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
@@ -70,3 +70,5 @@ dobj=`sed -n '/^am_d_OBJECTS = / {
p
}' Makefile.in`
test "$cobj" = "$dobj"
+
+:
--
1.7.1
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [PATCH] Modernize, improve and extend tests `subobj*.test'.,
Stefano Lattarini <=