|
@@ -0,0 +1,72 @@
|
|
|
+From e7e341b7ba6fa9fb875718e8740b03c2041278e8 Mon Sep 17 00:00:00 2001
|
|
|
+From: Neal Frager <neal.frager@amd.com>
|
|
|
+Date: Mon, 2 Jun 2025 12:09:13 +0100
|
|
|
+Subject: [PATCH] bisonflex: Fix build on machines with modern flex
|
|
|
+
|
|
|
+With bootgen 2025.1, the directory structure was re-done. In the process of
|
|
|
+doing this, the source files in the bisonflex directory lost the fix below
|
|
|
+which had been applied on an earlier version of bootgen:
|
|
|
+
|
|
|
+Bootgen embeds an old version of flex, but uses the system include syntax
|
|
|
+(#include <>) to reference it, causing conflicts on systems with the
|
|
|
+development headers for a modern flex version installed, leading to build
|
|
|
+issues like:
|
|
|
+
|
|
|
+../bisonflex/bif.yy.cpp: In member function 'virtual int BIF::FlexScanner::yylex()':
|
|
|
+../bisonflex/bif.yy.cpp:1608:18: error: no match for 'operator=' (operand types are 'std::istream' {aka 'std::basic_istream'} and 'std::istream*' {aka 'std::basic_istream*'})
|
|
|
+
|
|
|
+Fix it by using normal local #include statements by:
|
|
|
+
|
|
|
+sed -i 's/<FlexLexer.h>/"FlexLexer.h"/g' *
|
|
|
+
|
|
|
+Upstream: submitted to AMD internal jira process
|
|
|
+
|
|
|
+Signed-off-by: Neal Frager <neal.frager@amd.com>
|
|
|
+---
|
|
|
+ bisonflex/bif.yy.cpp | 2 +-
|
|
|
+ bisonflex/cmdoptions.yy.cpp | 2 +-
|
|
|
+ bisonflex/reginit.yy.cpp | 2 +-
|
|
|
+ 3 files changed, 3 insertions(+), 3 deletions(-)
|
|
|
+
|
|
|
+diff --git a/bisonflex/bif.yy.cpp b/bisonflex/bif.yy.cpp
|
|
|
+index 8d4d364..35f0aa5 100755
|
|
|
+--- a/bisonflex/bif.yy.cpp
|
|
|
++++ b/bisonflex/bif.yy.cpp
|
|
|
+@@ -379,7 +379,7 @@ typedef unsigned char YY_CHAR;
|
|
|
+
|
|
|
+ #define yytext_ptr yytext
|
|
|
+
|
|
|
+-#include <FlexLexer.h>
|
|
|
++#include "FlexLexer.h"
|
|
|
+
|
|
|
+ int yyFlexLexer::yywrap() { return 1; }
|
|
|
+ int yyFlexLexer::yylex()
|
|
|
+diff --git a/bisonflex/cmdoptions.yy.cpp b/bisonflex/cmdoptions.yy.cpp
|
|
|
+index 661d7f3..a76ac81 100755
|
|
|
+--- a/bisonflex/cmdoptions.yy.cpp
|
|
|
++++ b/bisonflex/cmdoptions.yy.cpp
|
|
|
+@@ -379,7 +379,7 @@ typedef unsigned char YY_CHAR;
|
|
|
+
|
|
|
+ #define yytext_ptr yytext
|
|
|
+
|
|
|
+-#include <FlexLexer.h>
|
|
|
++#include "FlexLexer.h"
|
|
|
+
|
|
|
+ int yyFlexLexer::yywrap() { return 1; }
|
|
|
+ int yyFlexLexer::yylex()
|
|
|
+diff --git a/bisonflex/reginit.yy.cpp b/bisonflex/reginit.yy.cpp
|
|
|
+index d830734..dede473 100755
|
|
|
+--- a/bisonflex/reginit.yy.cpp
|
|
|
++++ b/bisonflex/reginit.yy.cpp
|
|
|
+@@ -379,7 +379,7 @@ typedef unsigned char YY_CHAR;
|
|
|
+
|
|
|
+ #define yytext_ptr yytext
|
|
|
+
|
|
|
+-#include <FlexLexer.h>
|
|
|
++#include "FlexLexer.h"
|
|
|
+
|
|
|
+ int yyFlexLexer::yywrap() { return 1; }
|
|
|
+ int yyFlexLexer::yylex()
|
|
|
+--
|
|
|
+2.25.1
|
|
|
+
|