]> sourceware.org Git - automake.git/commitdiff
* tests/yaccvpath.test: Add a delay to make parse.c really out
authorPavel Roskin <proski@gnu.org>
Sat, 3 Mar 2001 07:13:04 +0000 (07:13 +0000)
committerPavel Roskin <proski@gnu.org>
Sat, 3 Mar 2001 07:13:04 +0000 (07:13 +0000)
of date. Detect the problem earlier, after `make distdir'. Drop
dependency on flex. Always use the `-y' flag for bison. Comment
changes.
* tests/Makefile.am: Add yaccvpath.test to XFAIL_TESTS.

ChangeLog
tests/Makefile.am
tests/Makefile.in
tests/yaccvpath.test

index c53a4bb371304afadbaf7583672dbc834051a203..574ef68b74f6f55ec08c24ac916bcfa8b0e88ab6 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2001-02-27  Pavel Roskin  <proski@gnu.org>
+
+       * tests/yaccvpath.test: Add a delay to make parse.c really out
+       of date. Detect the problem earlier, after `make distdir'. Drop
+       dependency on flex. Always use the `-y' flag for bison. Comment
+       changes.
+       * tests/Makefile.am: Add yaccvpath.test to XFAIL_TESTS.
+
 2001-03-02  Jens Krüger <jens_krueger@physik.tu-muenchen.de>
 
        * depend2.am (?!GENERIC??LIBTOOL?%LTOBJ%): Add `%' to fix typo.
index 7d47a7c68661ace1a88832c80399cd06302a77ef..59954ec8ab902df8a904bd475a57e5650dde6ae0 100644 (file)
@@ -2,7 +2,7 @@
 
 AUTOMAKE_OPTIONS = gnits
 
-XFAIL_TESTS =
+XFAIL_TESTS = yaccvpath.test
 TESTS =        \
 acinclude.test \
 aclocal.test \
index c207baecbc89fad55a16a4806ffe8698fac2f6f3..1288ef8393106f3ccb0485a4c957c7da55608bcc 100644 (file)
@@ -78,7 +78,7 @@ install_sh = @install_sh@
 
 AUTOMAKE_OPTIONS = gnits
 
-XFAIL_TESTS = 
+XFAIL_TESTS = yaccvpath.test
 TESTS = \
 acinclude.test \
 aclocal.test \
index f2fe93e64a35e3cd6ae312e6d4f29fd647242cc0..9d90f202f997d4a84a7211c889c3126c48d452d0 100755 (executable)
@@ -1,12 +1,19 @@
 #! /bin/sh
 
-# This attempts to `make distcheck' from a separate directory
-# (i.e. builddir!=srcdir).  Before doing `make distcheck' a parser
-# definition is updated in the srcdir in order to check whether the
-# archived perser is up-to-date or not.
+# This test checks that dependent files are updated before including
+# in the distribution. `parse.c' depends on `parce.y'. The later is
+# updated so that `parse.c' should be rebuild. Then we are running
+# `make' and `make distdir' and check whether the version of `parse.c'
+# to be distributed is up to date.
 
 . $srcdir/defs || exit 1
 
+# Fail gracefully if no autoconf.
+$needs_autoconf
+# Likewise for some other tools.
+(gcc -v) > /dev/null 2>&1 || exit 77
+(bison -V) > /dev/null 2>&1 || exit 77
+
 cat > configure.in << 'END'
 AC_INIT
 AC_CONFIG_AUX_DIR([.])
@@ -19,10 +26,11 @@ AC_OUTPUT(Makefile)
 END
 
 cat > Makefile.am << 'END'
-bin_PROGRAMS= foo
-foo_SOURCES= parse.y foo.c
+bin_PROGRAMS = foo
+foo_SOURCES = parse.y foo.c
 END
 
+# Original parser, with `foobar'
 cat > parse.y << 'END'
 %{
 int yylex () {return 0;}
@@ -36,16 +44,8 @@ cat > foo.c << 'END'
 int main () { return 0; }
 END
 
-# Fail gracefully if no autoconf.
-$needs_autoconf
-# Likewise for some other tools.
-(gcc -v) > /dev/null 2>&1 || exit 77
-(flex -V) > /dev/null 2>&1 || exit 77
-(bison -V) > /dev/null 2>&1 || exit 77
-
-LEX=flex
-export LEX
-YACC=bison
+# We are not checking Autoconf, so we pick $YACC for it.
+YACC="bison -y"
 export YACC
 
 # Remove some files installed by defs.
@@ -58,15 +58,27 @@ $ACLOCAL
 $AUTOCONF
 $AUTOMAKE -a
 
-bison -y parse.y
+$YACC parse.y
 mv y.tab.c parse.c
 
-cat >> parse.y << 'END'
-fubar : 'f' foobar {};
-END
-
 mkdir sub
 cd sub
 ../configure
+
+# A delay is needed to make sure that the new parse.y is indeed newer
+# than parse.c, i.e. the they don't have the same timestamp.
+sleep 2
+
+# New parser, with `fubar'
+cat > parse.y << 'END'
+%{
+int yylex () {return 0;}
+void yyerror (char *s) {}
+%}
+%%
+fubar : 'f' 'o' 'o' 'b' 'a' 'r' {};
+END
+
 $MAKE
-$MAKE distcheck
+$MAKE distdir
+grep fubar foo-0.1/parse.c
This page took 0.035007 seconds and 5 git commands to generate.