<div dir="ltr">This is breaking number of recipes as discussed in acpica thread:<div><a href="http://lists.openembedded.org/pipermail/openembedded-core/2017-January/131555.html">http://lists.openembedded.org/pipermail/openembedded-core/2017-January/131555.html</a></div><div><br></div><div>in by builds I also see failures in qtwebkit, upstart, libpbnjson, ...<div><br></div><div>I&#39;ve tried to upgrade to 2.6.3 as suggested in:</div></div><div><a href="https://github.com/westes/flex/issues/164">https://github.com/westes/flex/issues/164</a><br></div><div><br></div><div>but that brings different set of undefined yy* symbols (e.g. yywrap in yylex function when building binutils-crosssdk and in the end it doesn&#39;t help at all, because even binutils, binutils-cross, dtc-native fail much sooner.</div><div><br></div><div>Is someone working on flex upgrade or can we revert this 2.6.2 upgrade until these issues are resolved?</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Dec 26, 2016 at 9:10 AM, Chen Qi <span dir="ltr">&lt;<a href="mailto:Qi.Chen@windriver.com" target="_blank">Qi.Chen@windriver.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Upgrade flex to 2.6.2.<br>
<br>
The following two patches are removed as they have been merged.<br>
  0002-avoid-c-comments-in-c-<wbr>code-fails-with-gcc-6.patch<br>
  CVE-2016-6354.patch<br>
<br>
do_not_create_pdf_doc.patch is removed as it&#39;s not suitable for the new<br>
version.<br>
<br>
0001-use-stage1flex-from-flex-<wbr>native-to-fix-cross-compili.<wbr>patch is added<br>
to fix cross compiling problem.<br>
<br>
Signed-off-by: Chen Qi &lt;<a href="mailto:Qi.Chen@windriver.com">Qi.Chen@windriver.com</a>&gt;<br>
---<br>
 ...lex-from-flex-native-to-<wbr>fix-cross-compili.patch | 51 +++++++++++++++++<br>
 ...oid-c-comments-in-c-code-<wbr>fails-with-gcc-6.patch | 64 ----------------------<br>
 .../recipes-devtools/flex/<wbr>flex/CVE-2016-6354.patch | 59 --------------------<br>
 .../flex/flex/do_not_create_<wbr>pdf_doc.patch          | 17 ------<br>
 .../flex/{<a href="http://flex_2.6.0.bb" rel="noreferrer" target="_blank">flex_2.6.0.bb</a> =&gt; <a href="http://flex_2.6.2.bb" rel="noreferrer" target="_blank">flex_2.6.2.bb</a>}          | 16 +++---<br>
 5 files changed, 60 insertions(+), 147 deletions(-)<br>
 create mode 100644 meta/recipes-devtools/flex/<wbr>flex/0001-use-stage1flex-from-<wbr>flex-native-to-fix-cross-<wbr>compili.patch<br>
 delete mode 100644 meta/recipes-devtools/flex/<wbr>flex/0002-avoid-c-comments-in-<wbr>c-code-fails-with-gcc-6.patch<br>
 delete mode 100644 meta/recipes-devtools/flex/<wbr>flex/CVE-2016-6354.patch<br>
 delete mode 100644 meta/recipes-devtools/flex/<wbr>flex/do_not_create_pdf_doc.<wbr>patch<br>
 rename meta/recipes-devtools/flex/{<a href="http://flex_2.6.0.bb" rel="noreferrer" target="_blank">fl<wbr>ex_2.6.0.bb</a> =&gt; <a href="http://flex_2.6.2.bb" rel="noreferrer" target="_blank">flex_2.6.2.bb</a>} (79%)<br>
<br>
diff --git a/meta/recipes-devtools/flex/<wbr>flex/0001-use-stage1flex-from-<wbr>flex-native-to-fix-cross-<wbr>compili.patch b/meta/recipes-devtools/flex/<wbr>flex/0001-use-stage1flex-from-<wbr>flex-native-to-fix-cross-<wbr>compili.patch<br>
new file mode 100644<br>
index 0000000..08f7688<br>
--- /dev/null<br>
+++ b/meta/recipes-devtools/flex/<wbr>flex/0001-use-stage1flex-from-<wbr>flex-native-to-fix-cross-<wbr>compili.patch<br>
@@ -0,0 +1,51 @@<br>
+Subject: use stage1flex from flex-native to fix cross compiling<br>
+<br>
+When cross compiling, we would have failure because stage1flex cannot run on host.<br>
+Use stage1flex from flex-native to fix this problem.<br>
+<br>
+This patch is OE specific as upstream may have other way to fix this cross compilation<br>
+problem.<br>
+<br>
+Upstream-Status: Inappropriate [OE specific]<br>
+<br>
+Signed-off-by: Chen Qi &lt;<a href="mailto:Qi.Chen@windriver.com">Qi.Chen@windriver.com</a>&gt;<br>
+---<br>
+ src/Makefile.am | 11 ++---------<br>
+ 1 file changed, 2 insertions(+), 9 deletions(-)<br>
+<br>
+diff --git a/src/Makefile.am b/src/Makefile.am<br>
+index 77ddf4b..09ffddb 100644<br>
+--- a/src/Makefile.am<br>
++++ b/src/Makefile.am<br>
+@@ -6,17 +6,10 @@ LIBS = @LIBS@<br>
+ m4 = @M4@<br>
+<br>
+ bin_PROGRAMS = flex<br>
+-noinst_PROGRAMS = stage1flex<br>
+ lib_LTLIBRARIES = \<br>
+       <a href="http://libfl.la" rel="noreferrer" target="_blank">libfl.la</a> \<br>
+       <a href="http://libfl_pic.la" rel="noreferrer" target="_blank">libfl_pic.la</a><br>
+<br>
+-stage1flex_SOURCES = \<br>
+-      scan.l \<br>
+-      $(COMMON_SOURCES)<br>
+-<br>
+-stage1flex_CFLAGS = $(AM_CFLAGS)<br>
+-<br>
+ flex_SOURCES = \<br>
+       $(COMMON_SOURCES)<br>
+<br>
+@@ -89,8 +82,8 @@ skel.c: flex.skl mkskel.sh flexint.h tables_shared.h tables_shared.c<br>
+         $(SHELL) $(srcdir)/mkskel.sh &gt; $@.tmp<br>
+       mv $@.tmp $@<br>
+<br>
+-stage1scan.c: scan.l stage1flex$(EXEEXT)<br>
+-      ./stage1flex$(EXEEXT) -o $@ $&lt;<br>
++stage1scan.c: scan.l<br>
++      stage1flex$(EXEEXT) -o $@ $&lt;<br>
+<br>
+ # make needs to be told to make parse.h so that parallelized runs will<br>
+ # not fail.<br>
+--<br>
+2.1.0<br>
+<br>
diff --git a/meta/recipes-devtools/flex/<wbr>flex/0002-avoid-c-comments-in-<wbr>c-code-fails-with-gcc-6.patch b/meta/recipes-devtools/flex/<wbr>flex/0002-avoid-c-comments-in-<wbr>c-code-fails-with-gcc-6.patch<br>
deleted file mode 100644<br>
index 438ca5f..0000000<br>
--- a/meta/recipes-devtools/flex/<wbr>flex/0002-avoid-c-comments-in-<wbr>c-code-fails-with-gcc-6.patch<br>
+++ /dev/null<br>
@@ -1,64 +0,0 @@<br>
-From 7072befe1397af4eb01c3ff7edf99f<wbr>0cd5076089 Mon Sep 17 00:00:00 2001<br>
-From: =?UTF-8?q?Andreas=20M=C3=<wbr>BCller?= &lt;<a href="mailto:schnitzeltony@googlemail.com">schnitzeltony@googlemail.com</a>&gt;<br>
-Date: Tue, 30 Aug 2016 14:25:32 +0200<br>
-Subject: [PATCH] avoid c++ comments in c-code - fails with gcc-6<br>
-MIME-Version: 1.0<br>
-Content-Type: text/plain; charset=UTF-8<br>
-Content-Transfer-Encoding: 8bit<br>
-<br>
-fixes:<br>
-<br>
-| error: C++ style comments are not allowed in ISO C90<br>
-| num_to_alloc = 1; // After all that talk, this was set to 1 anyways...<br>
-<br>
-Upstream-Status: Pending<br>
-<br>
-Signed-off-by: Andreas Müller &lt;<a href="mailto:schnitzeltony@googlemail.com">schnitzeltony@googlemail.com</a>&gt;<br>
----<br>
- src/flex.skl | 2 +-<br>
- src/scan.c   | 2 +-<br>
- src/skel.c   | 2 +-<br>
- 3 files changed, 3 insertions(+), 3 deletions(-)<br>
-<br>
-diff --git a/src/flex.skl b/src/flex.skl<br>
-index 73a0b9e..ed71627 100644<br>
---- a/src/flex.skl<br>
-+++ b/src/flex.skl<br>
-@@ -2350,7 +2350,7 @@ void yyFlexLexer::yyensure_buffer_<wbr>stack(void)<br>
-                * scanner will even need a stack. We use 2 instead of 1 to avoid an<br>
-                * immediate realloc on the next call.<br>
-          */<br>
--              num_to_alloc = 1; // After all that talk, this was set to 1 anyways...<br>
-+              num_to_alloc = 1; /* After all that talk, this was set to 1 anyways... */<br>
-               YY_G(yy_buffer_stack) = (struct yy_buffer_state**)yyalloc<br>
-                                                               (num_to_alloc * sizeof(struct yy_buffer_state*)<br>
-                                                               M4_YY_CALL_LAST_ARG);<br>
-diff --git a/src/scan.c b/src/scan.c<br>
-index b55df2d..f1dce75 100644<br>
---- a/src/scan.c<br>
-+++ b/src/scan.c<br>
-@@ -4672,7 +4672,7 @@ static void yyensure_buffer_stack (void)<br>
-                * scanner will even need a stack. We use 2 instead of 1 to avoid an<br>
-                * immediate realloc on the next call.<br>
-          */<br>
--              num_to_alloc = 1; // After all that talk, this was set to 1 anyways...<br>
-+              num_to_alloc = 1; /* After all that talk, this was set to 1 anyways...*/<br>
-               (yy_buffer_stack) = (struct yy_buffer_state**)yyalloc<br>
-                                                               (num_to_alloc * sizeof(struct yy_buffer_state*)<br>
-                                                               );<br>
-diff --git a/src/skel.c b/src/skel.c<br>
-index ef657d3..26cc889 100644<br>
---- a/src/skel.c<br>
-+++ b/src/skel.c<br>
-@@ -2561,7 +2561,7 @@ const char *skel[] = {<br>
-   &quot;            * scanner will even need a stack. We use 2 instead of 1 to avoid an&quot;,<br>
-   &quot;            * immediate realloc on the next call.&quot;,<br>
-   &quot;         */&quot;,<br>
--  &quot;           num_to_alloc = 1; // After all that talk, this was set to 1 anyways...&quot;,<br>
-+  &quot;           num_to_alloc = 1; /* After all that talk, this was set to 1 anyways... */&quot;,<br>
-   &quot;           YY_G(yy_buffer_stack) = (struct yy_buffer_state**)yyalloc&quot;,<br>
-   &quot;                                                           (num_to_alloc * sizeof(struct yy_buffer_state*)&quot;,<br>
-   &quot;                                                           M4_YY_CALL_LAST_ARG);&quot;,<br>
---<br>
-2.5.5<br>
-<br>
diff --git a/meta/recipes-devtools/flex/<wbr>flex/CVE-2016-6354.patch b/meta/recipes-devtools/flex/<wbr>flex/CVE-2016-6354.patch<br>
deleted file mode 100644<br>
index 216ac7a..0000000<br>
--- a/meta/recipes-devtools/flex/<wbr>flex/CVE-2016-6354.patch<br>
+++ /dev/null<br>
@@ -1,59 +0,0 @@<br>
-From 3939eccdff598f47e5b37b05d58bf1<wbr>b44d3796e7 Mon Sep 17 00:00:00 2001<br>
-From: Jussi Kukkonen &lt;<a href="mailto:jussi.kukkonen@intel.com">jussi.kukkonen@intel.com</a>&gt;<br>
-Date: Fri, 7 Oct 2016 14:15:38 +0300<br>
-Subject: [PATCH] Prevent buffer overflow in yy_get_next_buffer<br>
-<br>
-This is upstream commit a5cbe929ac3255d371e698f62dc256<wbr>afe7006466<br>
-with some additional backporting to make binutils build again.<br>
-<br>
-Upstream-Status: Backport<br>
-CVE: CVE-2016-6354<br>
-Signed-off-by: Jussi Kukkonen &lt;<a href="mailto:jussi.kukkonen@intel.com">jussi.kukkonen@intel.com</a>&gt;<br>
----<br>
- src/flex.skl | 2 +-<br>
- src/scan.c   | 2 +-<br>
- src/skel.c   | 2 +-<br>
- 3 files changed, 3 insertions(+), 3 deletions(-)<br>
-<br>
-diff --git a/src/flex.skl b/src/flex.skl<br>
-index ed71627..814d562 100644<br>
---- a/src/flex.skl<br>
-+++ b/src/flex.skl<br>
-@@ -1718,7 +1718,7 @@ int yyFlexLexer::yy_get_next_<wbr>buffer()<br>
-<br>
-       else<br>
-               {<br>
--                      yy_size_t num_to_read =<br>
-+                      int num_to_read =<br>
-                       YY_CURRENT_BUFFER_LVALUE-&gt;yy_<wbr>buf_size - number_to_move - 1;<br>
-<br>
-               while ( num_to_read &lt;= 0 )<br>
-diff --git a/src/scan.c b/src/scan.c<br>
-index f1dce75..1949872 100644<br>
---- a/src/scan.c<br>
-+++ b/src/scan.c<br>
-@@ -4181,7 +4181,7 @@ static int yy_get_next_buffer (void)<br>
-<br>
-       else<br>
-               {<br>
--                      yy_size_t num_to_read =<br>
-+                      int num_to_read =<br>
-                       YY_CURRENT_BUFFER_LVALUE-&gt;yy_<wbr>buf_size - number_to_move - 1;<br>
-<br>
-               while ( num_to_read &lt;= 0 )<br>
-diff --git a/src/skel.c b/src/skel.c<br>
-index 26cc889..0344d18 100644<br>
---- a/src/skel.c<br>
-+++ b/src/skel.c<br>
-@@ -1929,7 +1929,7 @@ const char *skel[] = {<br>
-   &quot;&quot;,<br>
-   &quot;   else&quot;,<br>
-   &quot;           {&quot;,<br>
--  &quot;                   yy_size_t num_to_read =&quot;,<br>
-+  &quot;                   int num_to_read =&quot;,<br>
-   &quot;                   YY_CURRENT_BUFFER_LVALUE-&gt;yy_<wbr>buf_size - number_to_move - 1;&quot;,<br>
-   &quot;&quot;,<br>
-   &quot;           while ( num_to_read &lt;= 0 )&quot;,<br>
---<br>
-2.1.4<br>
-<br>
diff --git a/meta/recipes-devtools/flex/<wbr>flex/do_not_create_pdf_doc.<wbr>patch b/meta/recipes-devtools/flex/<wbr>flex/do_not_create_pdf_doc.<wbr>patch<br>
deleted file mode 100644<br>
index 032833ae..0000000<br>
--- a/meta/recipes-devtools/flex/<wbr>flex/do_not_create_pdf_doc.<wbr>patch<br>
+++ /dev/null<br>
@@ -1,17 +0,0 @@<br>
-Upstream-Status: Inappropriate (embedded specific)<br>
-<br>
-Signed-off-by: Laurentiu Palcu &lt;<a href="mailto:laurentiu.palcu@intel.com">laurentiu.palcu@intel.com</a>&gt;<br>
-<br>
-Index: flex-2.5.37/doc/Makefile.am<br>
-=============================<wbr>==============================<wbr>========<br>
---- flex-2.5.37.orig/doc/Makefile.<wbr>am   2012-07-21 04:18:27.000000000 +0300<br>
-+++ flex-2.5.37/doc/Makefile.am        2013-07-30 17:57:09.834834531 +0300<br>
-@@ -2,7 +2,7 @@<br>
-<br>
- info_TEXINFOS =       flex.texi<br>
- dist_man_MANS = flex.1<br>
--dist_doc_DATA= flex.pdf<br>
-+EXTRA_DIST= flex.pdf<br>
-<br>
- CLEANFILES = \<br>
-       flex.hks \<br>
diff --git a/meta/recipes-devtools/flex/<a href="http://flex_2.6.0.bb" rel="noreferrer" target="_blank">f<wbr>lex_2.6.0.bb</a> b/meta/recipes-devtools/flex/<a href="http://flex_2.6.2.bb" rel="noreferrer" target="_blank">f<wbr>lex_2.6.2.bb</a><br>
similarity index 79%<br>
rename from meta/recipes-devtools/flex/<a href="http://flex_2.6.0.bb" rel="noreferrer" target="_blank">fle<wbr>x_2.6.0.bb</a><br>
rename to meta/recipes-devtools/flex/<a href="http://flex_2.6.2.bb" rel="noreferrer" target="_blank">fle<wbr>x_2.6.2.bb</a><br>
index ab35b09..e723124 100644<br>
--- a/meta/recipes-devtools/flex/<a href="http://flex_2.6.0.bb" rel="noreferrer" target="_blank">f<wbr>lex_2.6.0.bb</a><br>
+++ b/meta/recipes-devtools/flex/<a href="http://flex_2.6.2.bb" rel="noreferrer" target="_blank">f<wbr>lex_2.6.2.bb</a><br>
@@ -5,22 +5,23 @@ HOMEPAGE = &quot;<a href="http://sourceforge.net/projects/flex/" rel="noreferrer" target="_blank">http://sourceforge.net/<wbr>projects/flex/</a>&quot;<br>
 SECTION = &quot;devel&quot;<br>
 LICENSE = &quot;BSD&quot;<br>
<br>
-DEPENDS = &quot;${@bb.utils.contains(&#39;PTEST_<wbr>ENABLED&#39;, &#39;1&#39;, &#39;bison-native flex-native&#39;, &#39;&#39;, d)}&quot;<br>
+DEPENDS = &quot;flex-native ${@bb.utils.contains(&#39;PTEST_<wbr>ENABLED&#39;, &#39;1&#39;, &#39;bison-native&#39;, &#39;&#39;, d)}&quot;<br>
 BBCLASSEXTEND = &quot;native nativesdk&quot;<br>
<br>
 LIC_FILES_CHKSUM = &quot;file://COPYING;md5=<wbr>e4742cf92e89040b39486a6219b680<wbr>67&quot;<br>
<br>
-SRC_URI = &quot;${SOURCEFORGE_MIRROR}/flex/<wbr>flex-${PV}.tar.bz2 \<br>
+SRC_URI = &quot;<a href="https://github.com/westes/flex/releases/download/v${PV}/flex-${PV}.tar.gz" rel="noreferrer" target="_blank">https://github.com/westes/<wbr>flex/releases/download/v${PV}/<wbr>flex-${PV}.tar.gz</a> \<br>
            file://run-ptest \<br>
-           file://do_not_create_pdf_doc.<wbr>patch \<br>
            file://0001-tests-add-a-<wbr>target-for-building-tests-<wbr>without-runnin.patch \<br>
-           file://0002-avoid-c-comments-<wbr>in-c-code-fails-with-gcc-6.<wbr>patch \<br>
-           file://CVE-2016-6354.patch \<br>
            ${@bb.utils.contains(&#39;PTEST_<wbr>ENABLED&#39;, &#39;1&#39;, &#39;&#39;, &#39;file://disable-tests.patch&#39;, d)} \<br>
            &quot;<br>
<br>
-SRC_URI[md5sum] = &quot;<wbr>266270f13c48ed043d95648075084d<wbr>59&quot;<br>
-SRC_URI[sha256sum] = &quot;<wbr>24e611ef5a4703a191012f80c1027d<wbr>c9d12555183ce0ecd46f3636e587e9<wbr>b8e9&quot;<br>
+SRC_URI_append_class-target = &quot; \<br>
+           file://0001-use-stage1flex-<wbr>from-flex-native-to-fix-cross-<wbr>compili.patch \<br>
+           &quot;<br>
+<br>
+SRC_URI[md5sum] = &quot;<wbr>cc6d76c333db7653d5caf423a33352<wbr>39&quot;<br>
+SRC_URI[sha256sum] = &quot;<wbr>9a01437a1155c799b7dc2508620564<wbr>ef806ba66250c36bf5f9034b1c207c<wbr>b2c9&quot;<br>
<br>
 # Flex has moved to github from 2.6.1 onwards<br>
 UPSTREAM_CHECK_URI = &quot;<a href="https://github.com/westes/flex/releases" rel="noreferrer" target="_blank">https://github.com/westes/<wbr>flex/releases</a>&quot;<br>
@@ -37,6 +38,7 @@ EXTRA_OEMAKE += &quot;${@bb.utils.contains(&#39;PTEST_<wbr>ENABLED&#39;, &#39;1&#39;, &#39;FLEX=${STAGING_BIND<br>
<br>
 do_install_append_class-<wbr>native() {<br>
        create_wrapper ${D}/${bindir}/flex M4=${M4}<br>
+       cp ${B}/src/stage1flex ${D}/${bindir}<br>
 }<br>
<br>
 do_install_append_class-<wbr>nativesdk() {<br>
<span class="HOEnZb"><font color="#888888">--<br>
1.9.1<br>
<br>
--<br>
______________________________<wbr>_________________<br>
Openembedded-core mailing list<br>
<a href="mailto:Openembedded-core@lists.openembedded.org">Openembedded-core@lists.<wbr>openembedded.org</a><br>
<a href="http://lists.openembedded.org/mailman/listinfo/openembedded-core" rel="noreferrer" target="_blank">http://lists.openembedded.org/<wbr>mailman/listinfo/openembedded-<wbr>core</a><br>
</font></span></blockquote></div><br></div>