diff options
author | Stefano Lattarini <stefano.lattarini@gmail.com> | 2010-06-19 14:55:10 +0200 |
---|---|---|
committer | Stefano Lattarini <stefano.lattarini@gmail.com> | 2010-07-26 19:22:10 +0200 |
commit | ee9fe91c5b01466e9e60757dd1fa673675ec6809 (patch) | |
tree | ba92de4db0cc2fe9350fdd563620032512f319d9 /tests/subdir8.test | |
parent | 4deaab9eaef915d4bef78e27e8e2d64d4629d01a (diff) | |
download | automake-ee9fe91c5b01466e9e60757dd1fa673675ec6809.tar.gz |
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/subdir5.test: Make grepping of Makefile.in (in topdir
and in subdirs) stricter. Some minor changes to keep it more
in sync with the related test `subdir8.test'.
* tests/subdir8.test: Likewise (but with the related test being
`subdir5.test' here).
* 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.
Diffstat (limited to 'tests/subdir8.test')
-rwxr-xr-x | tests/subdir8.test | 37 |
1 files changed, 25 insertions, 12 deletions
diff --git a/tests/subdir8.test b/tests/subdir8.test index bc3043e09..093fac8e8 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 @@ -21,13 +21,12 @@ # This test assumes that the `make' utility is able to start # over and reload Makefiles which have been remade (a non-POSIX feature). +# See also the related test subdir5.test. required='GNUmake gcc' . ./defs || Exit 1 set -e -echo 'AC_CONFIG_FILES([sub/Makefile])' >confiles.m4 - cat >> configure.in << 'END' AC_PROG_CC AM_PROG_CC_C_O @@ -36,6 +35,8 @@ MORE_DEFS AC_OUTPUT END +echo 'AC_CONFIG_FILES([sub/Makefile])' > confiles.m4 + cat > Makefile.am << 'END' SUBDIRS = sub ACLOCAL_AMFLAGS = -I m4 @@ -66,8 +67,18 @@ $AUTOMAKE --copy --add-missing ./configure $MAKE -# Now add a new directory. -# See subdir5.test for why we shouldn't need to $sleep here. +# Now add new directories. +# +# 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. + +# The first step users typically do when adding a new subdir is +# editing configure.in. That is already tested by subdir5.test, +# though, so here we try to just edit a file that is included by +# configure.in, without touching configure.in itself. mkdir sub/maude cat > sub/maude/Makefile.am << 'END' @@ -81,9 +92,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 -# before Makefile.am) +# Update confiles.m4 *after* updating sub/Makefile.am; subdir5.test do +# it in the other way: it updates configure.in before Makefile.am. echo 'AC_CONFIG_FILES([maude/Makefile sub/maude/Makefile])' >> confiles.m4 # We want a simple rebuild from sub/ to create sub/maude/Makefile @@ -98,7 +108,10 @@ 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 + +grep '^GREPME =' Makefile +grep '^GREPME =' maude/Makefile +grep '^GREPME =' sub/Makefile +grep '^GREPME =' sub/maude/Makefile + +: |