util/cbfstool: Revise lex/yacc (bison) generation

Revise the Makefile.inc rules for generating FMD parser files.

- lex:  If --header-file is supported then the lex (usually flex) should
        also support '-o' so we don't need to do redirection (-t).

- yacc: Bison is already required by bincfg and sconfig so we
        can change the default parser compiler to Bison. That also
	allows us to use -o and --defines to override the output files.

- both: Line directives are only helpful when debugging the scanner and
        the parser, so we should remove them to get better git diff
	results  (-L for lex, -l for bison).

Also regenerated the shipped files with latest version of flex (2.6.4)
and bison (3.8.2).

Change-Id: I15b58ff65dcd9f3f3a6095aa004091ff733ffec3
Signed-off-by: Hung-Te Lin <hungte@chromium.org>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/75851
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Julius Werner <jwerner@chromium.org>
This commit is contained in:
Hung-Te Lin
2023-06-15 15:26:40 +08:00
committed by Martin L Roth
parent a421ae99fb
commit 8cb45aadf7
5 changed files with 772 additions and 913 deletions

View File

@@ -1,8 +1,9 @@
/* A Bison parser, made by GNU Bison 3.0.4. */
/* A Bison parser, made by GNU Bison 3.8.2. */
/* Bison interface for Yacc-like parsers in C
Copyright (C) 1984, 1989-1990, 2000-2015 Free Software Foundation, Inc.
Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2021 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
@@ -15,7 +16,7 @@
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/>. */
along with this program. If not, see <https://www.gnu.org/licenses/>. */
/* As a special exception, you may create a larger work that contains
part or all of the Bison parser skeleton and distribute that work
@@ -30,8 +31,12 @@
This special exception was added by the Free Software Foundation in
version 2.2 of Bison. */
#ifndef YY_YY_Y_TAB_H_INCLUDED
# define YY_YY_Y_TAB_H_INCLUDED
/* DO NOT RELY ON FEATURES THAT ARE NOT DOCUMENTED in the manual,
especially those whose name start with YY_ or yy_. They are
private implementation details that can be changed or removed. */
#ifndef YY_YY_V_CROS_COREBOOT_UTIL_CBFSTOOL_FMD_PARSER_H_SHIPPED_INCLUDED
# define YY_YY_V_CROS_COREBOOT_UTIL_CBFSTOOL_FMD_PARSER_H_SHIPPED_INCLUDED
/* Debug traces. */
#ifndef YYDEBUG
# define YYDEBUG 0
@@ -40,7 +45,6 @@
extern int yydebug;
#endif
/* "%code requires" blocks. */
#line 34 "fmd_parser.y" /* yacc.c:1909 */
#include "fmd.h"
#include "option.h"
@@ -65,33 +69,29 @@ struct flashmap_descriptor *parse_descriptor(
struct unsigned_option size, struct descriptor_list children);
void yyerror(const char *s);
#line 69 "y.tab.h" /* yacc.c:1909 */
/* Token type. */
/* Token kinds. */
#ifndef YYTOKENTYPE
# define YYTOKENTYPE
enum yytokentype
{
INTEGER = 258,
OCTAL = 259,
STRING = 260,
FLAG_CBFS = 261,
FLAG_PRESERVE = 262
YYEMPTY = -2,
YYEOF = 0, /* "end of file" */
YYerror = 256, /* error */
YYUNDEF = 257, /* "invalid token" */
INTEGER = 258, /* INTEGER */
OCTAL = 259, /* OCTAL */
STRING = 260, /* STRING */
FLAG_CBFS = 261, /* FLAG_CBFS */
FLAG_PRESERVE = 262 /* FLAG_PRESERVE */
};
typedef enum yytokentype yytoken_kind_t;
#endif
/* Tokens. */
#define INTEGER 258
#define OCTAL 259
#define STRING 260
#define FLAG_CBFS 261
#define FLAG_PRESERVE 262
/* Value type. */
#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
union YYSTYPE
{
#line 25 "fmd_parser.y" /* yacc.c:1909 */
unsigned intval;
char *strval;
@@ -100,9 +100,8 @@ union YYSTYPE
union flashmap_flags flags;
struct descriptor_list region_listhdr;
#line 104 "y.tab.h" /* yacc.c:1909 */
};
};
typedef union YYSTYPE YYSTYPE;
# define YYSTYPE_IS_TRIVIAL 1
# define YYSTYPE_IS_DECLARED 1
@@ -111,6 +110,8 @@ typedef union YYSTYPE YYSTYPE;
extern YYSTYPE yylval;
int yyparse (void);
#endif /* !YY_YY_Y_TAB_H_INCLUDED */
#endif /* !YY_YY_V_CROS_COREBOOT_UTIL_CBFSTOOL_FMD_PARSER_H_SHIPPED_INCLUDED */