|
641a5a4b
|
2012-02-16T10:46:23
|
|
maint: run "make update-copyright"
|
|
e6c40d4b
|
2012-02-12T15:06:17
|
|
Merge branch 'yacc-work' into yl-work-for-master
* yacc-work: (37 commits)
fixup: list of yacc/lex tests was botched
tests: work around bug#7884 in many yacc/lex tests
yacc/lex tests: remove an unneeded workaround for bug#8485
yacc/lex tests: avoid too much failures with FreeBSD make
yacc-dist-nobuild.test: add reference to bug#7884
yacc tests: fix bug in 'yacc-cxx.test'
lex tests: fix spurious link errors on Solaris
lex: "make clean" removes .c files from non-distributed .l
lex tests: make test on Lex dependency tracking more "semantic"
lex tests: remove erroneous check about ylwrap distribution
yacc tests: "make clean" removes C++ files from non-distributed .y
tests: add a workaround for automake bug#8485
tests: add a couple of inter-tests reference
lex tests: require just `lex' instead of `flex'
fix typo in ChangeLog (2011-05-04)
tests defs: use `skip_' for skipping yacc/lex related tests
lex/yacc tests: remove redundant $distdir definition
coverage: test lex-generated "#line" directives postprocessing
tests: minor improvements to a couple of yacc tests
tests: fix spurious failure in test 'yacc-d-cxx.test'
...
+ Extra non-trivial edits:
* tests/defs.in: Delete; the differences from maint has been
merged into 'tests/defs' and 'tests/defs-static.in'.
* tests/defs (yacc, lex): Use 'skip_all_', not 'skip_', to
skip the whole test case if yacc (resp. lex) is missing.
(bison): New, set up the environment so that 'bison -y' will
be used as the yacc program.
(useless_vpath_rebuild, yl_distcheck): Moved in from
'tests/defs.in'.
* tests/defs-static.in ($YACC, $LEX): Default to the values
determined at configure time, and allow them to be overridden
by the more namespace-safe variables '$AM_TESTSUITE_YACC' and
'$AM_TESTSUITE_LEX' respectively.
* tests/Makefile.am (do_subst): Also substitute '@YACC@' and
'@LEX@'.
* Several tests: Fix requirements declarations, by preferring
'lex' and 'yacc' over 'flex' and 'bison' whenever possible.
|
|
a9edac6c
|
2011-12-15T18:41:22
|
|
Merge branch 'maint' into 'yacc-work'
Extra edits:
* tests/silent-lex.test: Provide a dummy `yywrap()' function, to
avoid link errors on systems that doesn't provide a "lex library".
See also commit `v1.11-546-gca0ba5d'.
Commits merged from maint (34 commits):
readme: reference webpages for automake mailing lists
readme: update advice about testsuite execution
readme: don't reference the old homepage at sources.redhat.com
hacking: some more fixlets
* NEWS: Fix typo in 'make dist-bzip2' description.
release: don't run "make distcheck" automatically
hacking: update on-line documentation for stable releases only
hacking: described release procedure applies to beta releases too
readme: the documentation is production quality now
hacking: tell about platform-testers mailing list
hacking: we don't use sources.redhat.com anymore
hacking: miscellaneous minor fixes
dist-xz, dist-bzip2: don't hard-code -9, honor envvar settings
news: fix typos, grammaros and suboptimal wording
maint: sync auxiliary files from upstream
tests: fix spurious failures due to missing 'yywrap()' function
depcomp: spelling fix
tests: fix 'distcheck-override-infodir.test' on Cygwin
cosmetics: typofix in comments
coverage: undistributed '.am' and '.m4' files are diagnosed
coverage: required but missing '.am' and '.m4' files are diagnosed
coverage: expose automake bug#10111 in the testsuite
fix: regenerate doc/Makefile
texinfo: work around Solaris 10 xpg4 shell bug in install rules
configure: report perl version in config.log
tests: fix spurious failure with older install-info
maintcheck: fix spurious failure in 'color2.test'
tests: fix spurious error in 'uninstall-fail.test' on Solaris
tests: fix typo in 'uninstall-fail.test'
tests: avoid a spurious failure of 'ltinit.test' MinGW
tests: testsuite is now safe to run with dmake in parallel mode
tests: fix spurious failures w.r.t. parallel make and colorization
Merge branch 'fix-pr9579' into maint
tests: fix spurious failure in 'distcheck-override-infodir.test'
tests: avoid another failure of 'uninstall-fail.test' on Solaris
|
|
47587d15
|
2011-12-10T00:46:13
|
|
Merge branch 'maint'
Commits merged from maint:
dist-xz, dist-bzip2: don't hard-code -9, honor envvar settings
news: fix typos, grammaros and suboptimal wording
maint: sync auxiliary files from upstream
tests: fix spurious failures due to missing 'yywrap()' function
depcomp: spelling fix
tests: fix 'distcheck-override-infodir.test' on Cygwin
cosmetics: typofix in comments
coverage: undistributed '.am' and '.m4' files are diagnosed
coverage: required but missing '.am' and '.m4' files are diagnosed
coverage: expose automake bug#10111 in the testsuite
fix: regenerate doc/Makefile
texinfo: work around Solaris 10 xpg4 shell bug in install rules
configure: report perl version in config.log
tests: fix spurious failure with older install-info
maintcheck: fix spurious failure in 'color2.test'
tests: fix spurious error in 'uninstall-fail.test' on Solaris
tests: fix typo in 'uninstall-fail.test'
Extra edits:
* ChangeLog: Remove mention of commit 6da46f31 (2010-10-05), which
has been superseded by commit c8e01d58 (2011-12-09). Fix entry
relative to that commit, to adapt to differences between maint and
master.
|
|
ca0ba5df
|
2011-10-24T23:18:34
|
|
tests: fix spurious failures due to missing 'yywrap()' function
The AC_PROG_LEX Autoconf macro does not diagnose a failure to find
the "lex library" expected to provide a `yywrap' function (function
which is required to link most lex-generated programs). On the
contrary, when all the link attempts (i.e., with `-ll' and `-lfl')
fail, configure declares that no lex library is needed, and simply
proceeds with the configuration process -- only for the build to
possibly fail later, at make time.
This behaviour is intended; the Autoconf manual reads:
``You are encouraged to use Flex in your sources, since it is
both more pleasant to use than plain Lex and the C source it
produces is portable. In order to ensure portability, however,
you must either provide a function `yywrap' or, if you don't use
it (e.g., your scanner has no `#include'-like feature), simply
include a `%noyywrap' statement in the scanner's source.''
This AC_PROG_LEX behaviour is causing some spurious failures of
the Automake testsuite in environments which lack a proper library
providing `yywrap' (this happens for example on Fedora-based
systems). The proper workaround is to simply provide a fall-back
implementation of `yywrap' in our lexers.
* tests/cond35.test: Provide a dummy `yywrap' function.
* tests/lex3.test: Likewise.
* tests/silent-lex-generic.test: Likewise.
* tests/silent-lex-gcc.test: Likewise.
* tests/silent-many-generic.test: Likewise.
* tests/silent-many-gcc.test: Likewise.
Reported by Jim Meyering:
<http://lists.gnu.org/archive/html/automake-patches/2011-10/msg00092.html>
Cherry-picked (with some edits) from commits `v1.11-1085-gb5c3968'
(master) and `v1.11-871-geb147a1' (testsuite-work).
|
|
b1b5ea5c
|
2011-06-01T17:43:44
|
|
lex tests: avoid possible hang; fix and extend
* tests/lex3.test (foo.l:yywrap): Return 1, not 0, to avoid hangs.
Bug introduced in commit 'v1.11-871-geb147a1'.
(Makefile.am): Do not add `@LEXLIB@' to `$(LDADD)', as we define
our own `yywrap' function.
* tests/lex.test (tscan.l): In `yywrap', return 1, not 0, for
consistency with the default flex implementation.
* tests/lex-libobj.test (yywrap.c): Likewise.
* tests/lex-subobj-nodep.test (s1.l): Likewise.
* tests/lexvpath.test (foo.c): Likewise.
* tests/silent-lex-gcc (foo.l): Likewise.
* tests/silent-lex-generic (foo.l): Likewise.
* tests/silent-many-gcc (foo5.l): Likewise.
* tests/silent-many-generic (foo5.l): Likewise.
* tests/lex-lib.test (mu.c): Likewise.
Update heading comments, to refer to ...
* tests/lex-lib-external.test: ... this new test, which checks
that we can get use the `yywrap' function from a system-wide
library, if that's available.
|
|
eb147a19
|
2011-05-25T19:05:15
|
|
lex tests: avoid spurious failures when LEXLIB isn't found
The AC_PROG_LEX Autoconf macro does not diagnose a failure to find
the "lex library" expected to provide a `yywrap' function (function
which is required to link most lex-generated programs). On the
contrary, when all the link attempts (i.e., with `-ll' and `-lfl')
fail, configure declares that no lex library is needed, and simply
proceeds with the configuration process -- only for the build to
possibly fail later, at make time.
This behaviour might be (partly) intended; the Autoconf manual
reads:
``You are encouraged to use Flex in your sources, since it is
both more pleasant to use than plain Lex and the C source
it produces is portable. In order to ensure portability,
however, you must either provide a function `yywrap' or, if
you don't use it (e.g., your scanner has no `#include'-like
feature), simply include a `%noyywrap' statement in the
scanner's source.''
This AC_PROG_LEX behaviour is causing some spurious failures of the
Automake testsuite in environments which lack a proper library
providing `yywrap' (this happens for example in Linux->MinGW cross
compilations). But at this point is clear that a proper workaround
is to simply provide a fall-back implementation of `yywrap' in our
lexers.
* tests/cond35.test: Provide a dummy `yywrap' function.
* tests/lex3.test: Likewise.
* tests/lexvpath.test: Likewise.
* tests/silent-many-gcc.test: Likewise.
* tests/silent-many-generic.test: Likewise.
* tests/silent-lex-gcc.test: Likewise, and a dummy `main' too.
* tests/silent-lex-generic.test: Likewise.
* tests/lex-lib.test: New test.
* tests/lex-libobj.test: New test.
* tests/lex-nowrap.test: New test.
* tests/Makefile.am (TESTS): Update.
* THANKS: Update.
Thanks to Russ Allbery for the suggestion.
|
|
bfebbd11
|
2011-05-04T11:58:21
|
|
tests: 'silent-many-gcc.test' improved and made more robust
* tests/silent-many-gcc.test: Also force "fast" gcc depmode
for C++ compilations. Add sanity checks verifying that the
cache variables we force are really used by configure. Fix
typo in comments.
|
|
aa9a269b
|
2011-01-28T23:04:14
|
|
configure: look for a lex program to be used by the testsuite
This will allow the testcases requiring a 'lex' program to run also
with vendor/legacy lex implementations, not only with 'flex'.
* configure.ac: Look for a lex program, using AC_CHECK_PROGS.
* tests/defs.in: New required entry 'lex'.
($LEX): Let the user override the lex program to be used by the
testsuite.
* tests/cond35.test ($required): Require 'lex', not 'flex'.
* tests/cond36.test: Likewise.
* tests/lexv3.test: Likewise.
* tests/lexv3.test: Likewise.
* tests/silent-lex-gcc.test: Likewise.
* tests/silent-lex-generic.test: Likewise.
* tests/silent-many-gcc.test: Likewise.
* tests/silent-many-generic.test:likewise.
* tests/lexvpath.test: Likewise, and fix typo in comments.
|
|
0283a956
|
2011-01-20T01:11:51
|
|
tests: more coverage on yacc/lex silent-rules, plus minor cleanups
* tests/silent-yacc-gcc.test: Add sanity checks verifying that the
generated Makefile.in files really contains the non-generic rules
we expect. Do not redundantly manually remove files we know to be
already removed "make maintainer-clean".
(Makefile.am): Ensure we cover also non-generic yacc rules, by
setting target-specific YFLAGS.
(sub/Makefile.am): Likewise.
* tests/silent-yacc-generic.test: Likewise.
* tests/silent-lex-gcc.test: Likewise, but with LFLAGS instead of
YFLAGS.
* tests/silent-lex-generic.test: Likewise.
* tests/silent-many-gcc.test: Likewise, but with both LFLAGS and
YFLAGS. Also ...
(do_and_check_verbose_build): Remove redundant blank line.
* tests/silent-many-generic.test: Likewise.
* tests/silent-yacc-headers.test: New test.
* tests/Makefile.am (TESTS): Update.
|
|
06605440
|
2011-01-12T00:02:50
|
|
Merge branch 'yacc-work'
|
|
8b419dd7
|
2011-01-11T20:03:05
|
|
tests: do not force yacc-requiring tests to use bison
* tests/defs.in: New required entry 'yacc'. Remove old
required entry 'bison'.
* tests/cond35.test ($required): Require yacc, not bison.
* tests/cond36.test: Likewise.
* tests/pr204.test: Likewise.
* tests/silent-many-gcc.test: Likewise.
* tests/silent-many-generic.test: Likewise.
* tests/silent-yacc-gcc.test: Likewise.
* tests/silent-yacc-generic.test: Likewise.
* tests/subpkg.test: Likewise.
* tests/suffix10.test: Likewise.
* tests/yacc-basic.test: Likewise.
* tests/yacc-clean.test: Likewise.
* tests/yacc-d-basic.test: Likewise.
* tests/yacc-d-vpath.test: Likewise.
* tests/yacc-dist-nobuild.test: Likewise.
* tests/yacc-nodist.test: Likewise.
* tests/yacc4.test: Likewise.
* tests/yacc6.test: Likewise.
* tests/yacc7.test: Likewise.
* tests/yacc8.test: Likewise.
* tests/yaccdry.test: Likewise.
* tests/yaccvpath.test: Likewise.
|
|
79103003
|
2011-01-08T19:40:04
|
|
tests: enable 'errexit' shell flag by default.
* tests/defs: Enable `errexit' shell flag (near the end).
Removed redundant comment about the enabling of shell traces.
* tests/README (Writing test cases): Update, and use nicer
formatting in a couple of places.
* All tests: Adjusted by removing now-redundant calls to
'set -e'.
|
|
22ee3bdf
|
2010-11-25T22:06:14
|
|
Fix spurious silent*.test failures for $CC != gcc
In some tests on automake-produced silent rules, we forced the
use of gcc depmode to improve testsuite coverage; but this has
unsurprisingly led to spurious failures when some non-GNU C
compilers were used. So we are now careful to require GCC in
tests that force gcc depmode.
From reports by Ralf Wildenhues.
* silent5.test: Test removed, its content split into ...
* silent-many-generic.test, silent-many-gcc.test: ... these new
sister tests, the latter of which forces gcc depmode and lists
"gcc" in $required.
* silentlex.test: Test removed, its content split into ...
* silent-lex-generic.test, silent-lex-gcc.test: ... these new
sister tests, the latter of which forces gcc depmode and lists
"gcc" in $required.
* silentyacc.test: Test removed, its content split into ...
* silent-yacc-generic.test, silent-yacc-gcc.test: ... these new
sister tests, the latter of which forces gcc depmode and lists
"gcc" in $required.
* tests/Makefile.am (TESTS): Updated.
|