diff options
author | Stefano Lattarini <stefano.lattarini@gmail.com> | 2012-11-18 01:38:09 +0100 |
---|---|---|
committer | Stefano Lattarini <stefano.lattarini@gmail.com> | 2012-11-19 12:34:55 +0100 |
commit | ab49d2bc115ba121b00ac06229d4044a004f67e9 (patch) | |
tree | c18633c26f80a1d9555b4c79dd68bbb2605a0baf /t/aclocal-no-force.sh | |
parent | 3e6643af3c1d4ae729c59ed6d2b803767a03e3c3 (diff) | |
download | automake-ab49d2bc115ba121b00ac06229d4044a004f67e9.tar.gz |
tests: more explicative names for few aclocal tests
* t/aclocal3.sh: Rename ...
* t/aclocal-missing-macros.sh: ... like this.
* t/aclocal4.sh: Rename ...
* t/aclocal-deps.sh: ... like this.
* t/aclocal5.sh: Rename ...
* t/aclocal-deps-subdir.sh: ... like this.
* t/aclocal6.sh: Rename ...
* t/aclocal-remake-misc.sh: ... like this.
* t/aclocal7.sh: Rename ...
* t/aclocal-no-force.sh: ... like this.
* t/acloca8.sh: Rename ...
* t/aclocal-no-unused-required.sh: ... like this.
* t/acloca9.sh: Rename ...
* t/aclocal-I-order-1.sh: ... like this.
* t/acloca11.sh: Rename ...
* t/aclocal-I-order-2.sh: ... like this, and update heading comments.
* t/acloca12.sh: Rename ...
* t/aclocal-I-order-3.sh: ... like this, and update heading comments.
* t/acloca13.sh: Rename ...
* t/aclocal-m4-sinclude.sh: ... like this, and update heading comments.
* t/acloca14.sh: Rename ...
* t/aclocal-m4-include-are-scanned.sh: ... like this.
* t/acloca14.sh: Rename ...
* t/aclocal-m4-include-are-scanned-aclocal-amflags.sh: ... like this,
and update heading comments.
* t/acloca15.sh: Rename ...
* t/aclocal-scan-configure-ac-pr319.sh: ... like this.
* t/acloca16.sh: Rename ...
* t/aclocal-no-extra-scan.sh: ... like this, and enhance slightly.
* t/acloca18.sh: Rename ...
* t/aclocal-serial.sh: ... like this.
* t/acloca19.sh: Rename ...
* t/aclocal-pr450.sh: ... like this.
* t/acloca20.sh: Rename ...
* t/aclocal-no-symlinked-overwrite.sh: ... like this.
* t/acloca21.sh: Rename ...
* t/aclocal-comments-respected.sh: ... like this.
* t/acloca22.sh: Rename ...
* t/aclocal-deleted-header.sh: ... like this.
* t/acloca22b.sh: Rename ...
* t/aclocal-deleted-header-aclocal-amflags.sh: ... like this.
* t/acloca23.sh: Rename ...
* t/aclocal-underquoted-defun.sh: ... like this.
* t/list-of-tests.mk: Update.
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
Diffstat (limited to 't/aclocal-no-force.sh')
-rwxr-xr-x | t/aclocal-no-force.sh | 117 |
1 files changed, 117 insertions, 0 deletions
diff --git a/t/aclocal-no-force.sh b/t/aclocal-no-force.sh new file mode 100755 index 000000000..9f246143e --- /dev/null +++ b/t/aclocal-no-force.sh @@ -0,0 +1,117 @@ +#! /bin/sh +# Copyright (C) 2003-2012 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 +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This program 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 this program. If not, see <http://www.gnu.org/licenses/>. + +# Make sure aclocal does not overwrite aclocal.m4 needlessly. +# Also make sure automake --no-force does not overwrite Makefile.in needlessly. + +. test-init.sh + +cat >> configure.ac << 'END' +SOME_DEFS +AC_CONFIG_FILES([sub/Makefile]) +END + +mkdir sub +: > sub/Makefile.am + +cat >> Makefile.am << 'END' +SUBDIRS = sub +include fragment.inc +END + +: > fragment.inc + +mkdir m4 +echo 'AC_DEFUN([SOME_DEFS], [])' > m4/somedefs.m4 + +# Automake will take aclocal.m4 to be newer if it has the same timestamp +# as Makefile.in. Avoid the confusing by sleeping. +AUTOMAKE_after_aclocal () +{ + $sleep + $AUTOMAKE --no-force +} + +# aclocal will rewrite aclocal.m4 unless the input files are all older than the +# existing aclocal.m4 -- sleep to ensure somedefs.m4 has an older timestamp +# than the aclocal.m4 that the next aclocal call will generate. +$sleep + +$ACLOCAL -I m4 +AUTOMAKE_after_aclocal + +touch foo +$sleep +$ACLOCAL -I m4 +AUTOMAKE_after_aclocal +# aclocal.m4 and Makefile.in should not have been updated, so 'foo' +# should be younger +is_newest foo aclocal.m4 Makefile.in sub/Makefile.in + +$sleep +$ACLOCAL -I m4 --force +is_newest aclocal.m4 foo +# We still use --no-force for automake, but since aclocal.m4 has +# changed all Makefile.ins should be updated. +AUTOMAKE_after_aclocal +is_newest Makefile.in aclocal.m4 foo +is_newest sub/Makefile.in aclocal.m4 foo + +$sleep +touch m4/somedefs.m4 +$sleep +$ACLOCAL -I m4 +AUTOMAKE_after_aclocal +# aclocal.m4 should have been updated, although its contents haven't +# changed. +is_newest aclocal.m4 m4/somedefs.m4 +is_newest Makefile.in m4/somedefs.m4 +is_newest sub/Makefile.in m4/somedefs.m4 + +$sleep +touch fragment.inc +$sleep +$ACLOCAL -I m4 +AUTOMAKE_after_aclocal +# Only ./Makefile.in should change. +is_newest Makefile.in fragment.inc +is_newest fragment.inc aclocal.m4 +is_newest fragment.inc sub/Makefile.in + +grep README Makefile.in && exit 1 + +$sleep +: > README +$sleep +$AUTOMAKE --no-force +# Even if no dependency change, the content changed. +is_newest Makefile.in README +is_newest README sub/Makefile.in + +grep README Makefile.in + +: > sub/Makefile.in +$sleep +touch foo +$sleep +$ACLOCAL -I m4 +$AUTOMAKE --no-force +# Only sub/Makefile.in should change. +is_newest foo aclocal.m4 +is_newest foo Makefile.in +is_newest sub/Makefile.in foo + +: |