tests: truly use Lex and Yacc selected by configure
authorStefano Lattarini <stefano.lattarini@gmail.com>
Tue, 14 Feb 2012 09:11:02 +0000 (10:11 +0100)
committerStefano Lattarini <stefano.lattarini@gmail.com>
Tue, 14 Feb 2012 09:11:02 +0000 (10:11 +0100)
commitb42514b48a5104785737cb4459e177b98d023ed7
treeab8ea4d45c086c75a1b7807cfe0417ed9d6c060f
parentee29b576923c240a951b7f0d93b7cb5d6a33face
tests: truly use Lex and Yacc selected by configure

When 'yacc-work' was merged into 'yl-work-for-master' in commit
v1.11-1910-ge6c40d4 (12-02-2012), the values for $YACC and $LEX
stopped being substituted directly by config.status, and started
being substituted by a Makefile rule using the contents of the
$(YACC) and $(LEX) makefile variables.

Unfortunately, our configure.ac was calling AM_SUBST_NOTMAKE on
'YACC' and 'LEX' (see commit v1.11-284-g34ca92b of 29-01-2011,
"tests: don't define YACC and LEX in the Makefiles", for a
rationale), so that the $(YACC) and $(LEX) in the Makefile simply
hold the default make-provided values (that is, "yacc" and "lex"
respectively), independently of what yacc and lex programs were
defined at configure time.

Apart from reducing coverage and creating confusion, this behaviour
also caused spurious failures on systems lacking a yacc and/or lex
programs.

Problem reported by Peter Rosin.  References:
 <http://lists.gnu.org/archive/html/automake-patches/2012-02/msg00131.html>
 <http://lists.gnu.org/archive/html/automake-patches/2012-02/msg00132.html>

* configure.ac (AM_SUBST_NOTMAKE): Don't call anymore on 'YACC' nor
on 'LEX'.
configure.ac