package/linux-backports: use flex and bison to generate kconfig parser
authorJulien Olivain <ju.o@free.fr>
Thu, 12 Nov 2020 12:01:54 +0000 (13:01 +0100)
committerYann E. MORIN <yann.morin.1998@free.fr>
Thu, 12 Nov 2020 21:18:45 +0000 (22:18 +0100)
commitec493ea4899f7be6500f495a32b4150feff355ef
treed201a86f0d3e11941e69d85ecb41c58aec231105
parent8b4b9289aac5b6d77a8c8e4644326dafe88bc335
package/linux-backports: use flex and bison to generate kconfig parser

Upstream backports package does not define the LEX/YACC Makefile
variables, contrary to the Kernel which is defining those in [1]. The
default "lex" and "yacc" are then used. On some systems, "yacc" is
Berkeley Yacc. Kconfig parser files are using non-Posix Bison
constructs.

Attempting to generate the parser with byacc fails with error:

    yacc: e - line 97 of "zconf.y", syntax error
    %destructor {
    ^

This patch defines the LEX and YACC Makefile variable to use flex and
bison, to fix this issue. The host-bison and host-flex dependencies are
added only if the host does not have them, following the same logic of
the Kernel.

[1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=73a4f6dbe70a1b93c11e2d1d6ca68f3522daf434

Signed-off-by: Julien Olivain <ju.o@free.fr>
Reviewed-by: Petr Vorel <petr.vorel@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
package/linux-backports/linux-backports.mk