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>
		
	
		
			
				
	
	
		
			118 lines
		
	
	
		
			3.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			118 lines
		
	
	
		
			3.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| /* 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, 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
 | |
|    the Free Software Foundation, either version 3 of the License, or
 | |
|    (at your option) any later version.
 | |
| 
 | |
|    This program is distributed in the hope that it will be useful,
 | |
|    but WITHOUT ANY WARRANTY; without even the implied warranty of
 | |
|    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | |
|    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 <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
 | |
|    under terms of your choice, so long as that work isn't itself a
 | |
|    parser generator using the skeleton or a modified version thereof
 | |
|    as a parser skeleton.  Alternatively, if you modify or redistribute
 | |
|    the parser skeleton itself, you may (at your option) remove this
 | |
|    special exception, which will cause the skeleton and the resulting
 | |
|    Bison output files to be licensed under the GNU General Public
 | |
|    License without this special exception.
 | |
| 
 | |
|    This special exception was added by the Free Software Foundation in
 | |
|    version 2.2 of Bison.  */
 | |
| 
 | |
| /* 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
 | |
| #endif
 | |
| #if YYDEBUG
 | |
| extern int yydebug;
 | |
| #endif
 | |
| /* "%code requires" blocks.  */
 | |
| 
 | |
| #include "fmd.h"
 | |
| #include "option.h"
 | |
| 
 | |
| #include <stdbool.h>
 | |
| 
 | |
| struct descriptor_node {
 | |
| 	struct flashmap_descriptor *val;
 | |
| 	struct descriptor_node *next;
 | |
| };
 | |
| 
 | |
| struct descriptor_list {
 | |
| 	size_t len;
 | |
| 	struct descriptor_node *head;
 | |
| 	struct descriptor_node *tail;
 | |
| };
 | |
| 
 | |
| extern struct flashmap_descriptor *res;
 | |
| 
 | |
| struct flashmap_descriptor *parse_descriptor(
 | |
| 	char *name, union flashmap_flags flags, struct unsigned_option offset,
 | |
| 	struct unsigned_option size, struct descriptor_list children);
 | |
| void yyerror(const char *s);
 | |
| 
 | |
| 
 | |
| /* Token kinds.  */
 | |
| #ifndef YYTOKENTYPE
 | |
| # define YYTOKENTYPE
 | |
|   enum yytokentype
 | |
|   {
 | |
|     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
 | |
| 
 | |
| /* Value type.  */
 | |
| #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
 | |
| union YYSTYPE
 | |
| {
 | |
| 
 | |
| 	unsigned intval;
 | |
| 	char *strval;
 | |
| 	struct unsigned_option maybe_intval;
 | |
| 	struct flashmap_descriptor *region_ptr;
 | |
| 	union flashmap_flags flags;
 | |
| 	struct descriptor_list region_listhdr;
 | |
| 
 | |
| 
 | |
| };
 | |
| typedef union YYSTYPE YYSTYPE;
 | |
| # define YYSTYPE_IS_TRIVIAL 1
 | |
| # define YYSTYPE_IS_DECLARED 1
 | |
| #endif
 | |
| 
 | |
| 
 | |
| extern YYSTYPE yylval;
 | |
| 
 | |
| 
 | |
| int yyparse (void);
 | |
| 
 | |
| 
 | |
| #endif /* !YY_YY_V_CROS_COREBOOT_UTIL_CBFSTOOL_FMD_PARSER_H_SHIPPED_INCLUDED  */
 |