bison: update to 3.0.2
cover bison: update to 3.0.2
The following changes since commit edaeb8940813b620090a0797ad3b6a076897512d:
bitbake: cooker.py: fix loginfo op being set to an invalid value (2014-11-12 17:04:50 +0000)
are available in the git repository at:
git://git.pokylinux.org/poky-contrib chonglu/bison
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=chonglu/bison
Chong Lu (3):
bison: update to 3.0.2
gstreamer: change priv_gst_parse_yylex arguments
webkit-gtk: ANGLE doesn't build with bison 3
.../bison/bison-do-not-try-to-generate-docs.patch | 37 ++++++++++++++++++++++
.../bison/bison/dont-depend-on-help2man.patch | 32 -------------------
.../bison/bison/fix_cross_manpage_building.patch | 19 -----------
.../bison/{bison_2.7.1.bb => bison_3.0.2.bb} | 21 ++++++------
...mer-change-priv_gst_parse_yylex-arguments.patch | 33 +++++++++++++++++++
.../gstreamer/gstreamer_0.10.36.bb | 1 +
...bkit-gtk-ANGLE-doesn-t-build-with-bison-3.patch | 26 +++++++++++++++
meta/recipes-sato/webkit/webkit-gtk_1.8.3.bb | 1 +
8 files changed, 108 insertions(+), 62 deletions(-)
create mode 100644 meta/recipes-devtools/bison/bison/bison-do-not-try-to-generate-docs.patch
delete mode 100644 meta/recipes-devtools/bison/bison/dont-depend-on-help2man.patch
delete mode 100644 meta/recipes-devtools/bison/bison/fix_cross_manpage_building.patch
rename meta/recipes-devtools/bison/{bison_2.7.1.bb => bison_3.0.2.bb} (70%)
create mode 100644 meta/recipes-multimedia/gstreamer/gstreamer-0.10.36/gstreamer-change-priv_gst_parse_yylex-arguments.patch
create mode 100644 meta/recipes-sato/webkit/files/webkit-gtk-ANGLE-doesn-t-build-with-bison-3.patchSignature · 1 line
1.9.1
PATCH 1/3 bison: update to 3.0.2
Upgrade bison to 3.0.2.
Don't try to generate docs when cross-compiling. Remove unneeded patches: dont-depend-on-help2man.patch and fix_cross_manpage_building.patch
---
.../bison/bison-do-not-try-to-generate-docs.patch | 37 ++++++++++++++++++++++
.../bison/bison/dont-depend-on-help2man.patch | 32 -------------------
.../bison/bison/fix_cross_manpage_building.patch | 19 -----------
.../bison/{bison_2.7.1.bb => bison_3.0.2.bb} | 21 ++++++------
4 files changed, 47 insertions(+), 62 deletions(-)
create mode 100644 meta/recipes-devtools/bison/bison/bison-do-not-try-to-generate-docs.patch
delete mode 100644 meta/recipes-devtools/bison/bison/dont-depend-on-help2man.patch
delete mode 100644 meta/recipes-devtools/bison/bison/fix_cross_manpage_building.patch
rename meta/recipes-devtools/bison/{bison_2.7.1.bb => bison_3.0.2.bb} (70%)meta/recipes-devtools/bison/bison/bison-do-not-try-to-generate-docs.patch new file +37 -0
@@ -0,0 +1,37 @@ +bison: don't try to generate docs + +We usually cannot run the just created binaries when cross-compiling, +so in that case ignore the documentation dependencies. + +Upstream-Status: Inappropriate + +Signed-off-by: Chong Lu <[email protected]> +--- + doc/local.mk | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/doc/local.mk b/doc/local.mk +index 4fe0859..27e3cc2 100644 +--- a/doc/local.mk ++++ b/doc/local.mk +@@ -86,7 +86,7 @@ doc/refcard.pdf: doc/refcard.tex + + EXTRA_DIST += $(top_srcdir)/doc/bison.help + MAINTAINERCLEANFILES += $(top_srcdir)/doc/bison.help +-$(top_srcdir)/doc/bison.help: src/bison$(EXEEXT) ++$(top_srcdir)/doc/bison.help: + $(AM_V_GEN)src/bison$(EXEEXT) --version >doc/bison.help.tmp + $(AM_V_at) src/bison$(EXEEXT) --help >>doc/bison.help.tmp + $(AM_V_at)$(top_srcdir)/build-aux/move-if-change doc/bison.help.tmp $@ +@@ -106,7 +106,7 @@ remove_time_stamp = \ + sed 's/^\(\.TH[^"]*"[^"]*"[^"]*\)"[^"]*"/\1/' + + # Depend on configure to get version number changes. +-$(top_srcdir)/doc/bison.1: doc/bison.help doc/bison.x $(top_srcdir)/configure ++$(top_srcdir)/doc/bison.1: + $(AM_V_GEN)$(HELP2MAN) \ + --include=$(top_srcdir)/doc/bison.x \ + [email protected] src/bison$(EXEEXT) +-- +1.7.9.5 +
meta/recipes-devtools/bison/bison/dont-depend-on-help2man.patch deleted +0 -32
@@ -1,32 +0,0 @@ -Upstream-Status: Inappropriate - -Signed-off-by: Marko Lindqvist <[email protected]> -diff -Nurd bison-2.7/doc/Makefile.am bison-2.7/doc/Makefile.am ---- bison-2.7/doc/Makefile.am 2012-12-09 17:51:03.000000000 +0200 -+++ bison-2.7/doc/Makefile.am 2013-01-02 06:49:50.804894071 +0200 -@@ -52,15 +52,11 @@ - ## Man Pages. ## - ## ----------- ## - --dist_man_MANS = $(srcdir)/bison.1 -- --EXTRA_DIST += $(dist_man_MANS:.1=.x) common.x --MAINTAINERCLEANFILES += $(dist_man_MANS) -+EXTRA_DIST += bison.x common.x - - # Depend on configure to get version number changes. - common_dep = $(top_srcdir)/configure $(srcdir)/common.x - srcsrcdir = $(top_srcdir)/bin --$(srcdir)/bison.1: $(common_dep) $(top_srcdir)/src/getargs.c - - # Differences to ignore when comparing the man page (the date). - remove_time_stamp = \ -@@ -94,8 +90,6 @@ - fi - $(AM_V_at)rm -f $@*.t - --nodist_man_MANS = yacc.1 -- - ## ------------------------------ ## - ## Graphviz examples generation. ## - ## ------------------------------ ##
meta/recipes-devtools/bison/bison/fix_cross_manpage_building.patch deleted +0 -19
@@ -1,19 +0,0 @@ -Upstream-Status: Inappropriate [embedded specific] - -help2man is looking at the generated binary for help output. This does not work for cross compilations. So taking out the local PREPATH (../src) directory from path so that help2 man can find the native version of the bison in the native sysroot directory. - -Date: 2010/06/28 -Signed-Off-By: Nitin A Kamble <[email protected]> - -diff --git a/doc/Makefile.am b/doc/Makefile.am -index c7f2755..af9453a 100644 ---- a/doc/Makefile.am -+++ b/doc/Makefile.am -@@ -80,7 +80,6 @@ PREPATH = $(top_builddir)/src - echo cd $$dir '&&' $(MAKE) $(AM_MAKEFLAGS) $$program && \ - (cd $$dir && $(MAKE) $(AM_MAKEFLAGS) $$program) || exit; \ - done -- $(AM_V_at)PATH="$(PREPATH)$(PATH_SEPARATOR)$$PATH"; \ - export PATH; \ - $(HELP2MAN) \ - --include=$*.x \
meta/recipes-devtools/bison/bison_3.0.2.bb renamed from meta/recipes-devtools/bison/bison_2.7.1.bb +10 -11
@@ -9,28 +9,27 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" SECTION = "devel" DEPENDS = "bison-native flex-native" -BASE_SRC_URI = "${GNU_MIRROR}/bison/bison-${PV}.tar.xz \ - file://m4.patch \ - file://dont-depend-on-help2man.patch \ - " +SRC_URI = "${GNU_MIRROR}/bison/bison-${PV}.tar.xz \ + file://m4.patch \ + file://bison-do-not-try-to-generate-docs.patch \ +" # No point in hardcoding path to m4, just use PATH EXTRA_OECONF += "M4=m4" -SRC_URI = "${BASE_SRC_URI} \ - file://fix_cross_manpage_building.patch \ - " - -SRC_URI[md5sum] = "7be02eb973eccf388f1ae750fc09eed0" -SRC_URI[sha256sum] = "b409adcbf245baadb68d2f66accf6fdca5e282cafec1b865f4b5e963ba8ea7fb" +SRC_URI[md5sum] = "146be9ff9fbd27497f0bf2286a5a2082" +SRC_URI[sha256sum] = "a2c3e8528bdb50567d6fa26deeb493dc5ccd7e277b865251608a9e43ac928f3c" LDFLAGS_prepend_libc-uclibc = " -lrt " DEPENDS_class-native = "gettext-minimal-native" -SRC_URI_class-native = "${BASE_SRC_URI}" inherit autotools gettext texinfo acpaths = "-I ${S}/m4" +do_compile_prepend() { + for i in mfcalc calc++ rpcalc; do mkdir -p ${B}/examples/$i; done +} + do_install_append_class-native() { create_wrapper ${D}/${bindir}/bison \ BISON_PKGDATADIR=${STAGING_DATADIR_NATIVE}/bison
Signature · 1 line
1.9.1
Quoted 2 lines · Chong Lu
Upgrade bison to 3.0.2.
In testing glibc fails to build on some arches and this patch may be the cause:
| plural.c: In function '__gettextparse': | plural.c:64:25: error: too few arguments to function '__gettextlex' | #define yylex __gettextlex | ^ | plural.c:1296:16: note: in expansion of macro 'yylex' | yychar = yylex (&yylval); | ^ | plural.c:64:25: note: declared here | #define yylex __gettextlex | ^ | plural.y:69:12: note: in expansion of macro 'yylex' | static int yylex PARAMS ((YYSTYPE *lval, const char **pexp)); | ^ | plural.y:178:29: error: 'arg' undeclared (first use in this function) | ((struct parse_args *) arg)->res = $1;
Does that look like something that bison 3 broke? If so we need to fix glibc.
Ross
Quoted 24 lines · Ross
On 18 November 2014 07:22, Chong Lu <[email protected] <mailto:[email protected]>> wrote:
Upgrade bison to 3.0.2.In testing glibc fails to build on some arches and this patch may be the cause:
| plural.c: In function '__gettextparse': | plural.c:64:25: error: too few arguments to function '__gettextlex' | #define yylex __gettextlex | ^ | plural.c:1296:16: note: in expansion of macro 'yylex' | yychar = yylex (&yylval); | ^ | plural.c:64:25: note: declared here | #define yylex __gettextlex | ^ | plural.y:69:12: note: in expansion of macro 'yylex' | static int yylex PARAMS ((YYSTYPE *lval, const char **pexp)); | ^ | plural.y:178:29: error: 'arg' undeclared (first use in this function) | ((struct parse_args *) arg)->res = $1;
Quoted 3 lines
Does that look like something that bison 3 broke? If so we need to fix glibc.
Ross
Hi Ross,
After I upgrade bison, I test world on qemuppc and qemux86, that's ok. Can you tell me, which arch will build failure or how to reproduce this failure? I will try to fix it.
Best Regards
Chong
Quoted 5 lines · Chong Lu
After I upgrade bison, I test world on qemuppc and qemux86, that's ok. Can you tell me, which arch will build failure or how to reproduce this failure?
I will try to fix it.
That's PPC with poky-lsb. It may be unrelated but the failures involve bison. I see that glibc doesn't depend on bison-native so if it is running the tool at build time there could be problems with bison being replaced during a build.
Ross
Quoted 9 lines · Ross
On 24 November 2014 at 05:19, Chong Lu <[email protected] <mailto:[email protected]>> wrote:
After I upgrade bison, I test world on qemuppc and qemux86, that's ok. Can you tell me, which arch will build failure or how to reproduce this failure?
I will try to fix it.
Quoted 5 lines
That's PPC with poky-lsb. It may be unrelated but the failures involve bison. I see that glibc doesn't depend on bison-native so if it is running the tool at build time there could be problems with bison being replaced during a build.
Ross
Hi Ross,
I try to reproduce this issue in my environment. But I can't get build failure about glibc. glibc depends on bison-native:
"glibc" -> "kconfig-frontends-native" -> "bison-native"
I checked glibc source code. In intl/plural.c file, The bison version is defined:
#define YYBISON_VERSION "2.7"
Does this issue related with sstate?
I build world on some arch, no build failure appear.:-)
Best Regards
Chong
PATCH 2/3 gstreamer: change priv_gst_parse_yylex arguments
In reply to Chong LuChange priv_gst_parse_yylex to fit new bison version, else we will get following error:
| grammar.tab.c: In function 'priv_gst_parse_yyparse': | grammar.tab.c:67:25: error: too few arguments to function 'priv_gst_parse_yylex' | #define yylex priv_gst_parse_yylex | ^
--- ...mer-change-priv_gst_parse_yylex-arguments.patch | 33 ++++++++++++++++++++++ .../gstreamer/gstreamer_0.10.36.bb | 1 + 2 files changed, 34 insertions(+) create mode 100644 meta/recipes-multimedia/gstreamer/gstreamer-0.10.36/gstreamer-change-priv_gst_parse_yylex-arguments.patch
meta/recipes-multimedia/gstreamer/gstreamer-0.10.36/gstreamer-change-priv_gst_parse_yylex-arguments.patch new file +33 -0
@@ -0,0 +1,33 @@ +gstreamer: change priv_gst_parse_yylex arguments + +Change priv_gst_parse_yylex to fit new bison version, else we will +get following error: + +| grammar.tab.c: In function 'priv_gst_parse_yyparse': +| grammar.tab.c:67:25: error: too few arguments to function 'priv_gst_parse_yylex' +| #define yylex priv_gst_parse_yylex +| ^ + +Upstream-Status: Pending + +Signed-off-by: Chong Lu <[email protected]> +--- + gst/parse/grammar.y | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/gst/parse/grammar.y b/gst/parse/grammar.y +index 24fc87b..24fe906 100644 +--- a/gst/parse/grammar.y ++++ b/gst/parse/grammar.y +@@ -36,7 +36,7 @@ + + typedef void* yyscan_t; + +-int priv_gst_parse_yylex (void * yylval_param , yyscan_t yyscanner); ++int priv_gst_parse_yylex (yyscan_t yyscanner); + int priv_gst_parse_yylex_init (yyscan_t scanner); + int priv_gst_parse_yylex_destroy (yyscan_t scanner); + struct yy_buffer_state * priv_gst_parse_yy_scan_string (char* , yyscan_t); +-- +1.9.1 +
meta/recipes-multimedia/gstreamer/gstreamer_0.10.36.bb +1 -0
@@ -15,6 +15,7 @@ SRC_URI = "http://gstreamer.freedesktop.org/src/gstreamer/gstreamer-${PV}.tar.bz file://check_fix.patch \ file://gst-inspect-check-error.patch \ file://0001-baseparse-Fix-self-comparison-always-evaluates-to-tr.patch \ + file://gstreamer-change-priv_gst_parse_yylex-arguments.patch \ " SRC_URI[md5sum] = "a0cf7d6877f694a1a2ad2b4d1ecb890b"
Signature · 1 line
1.9.1
PATCH 3/3 webkit-gtk: ANGLE doesn't build with bison 3
In reply to Chong LuUse %lex-param to set YYLEX_PARAM.
--- ...bkit-gtk-ANGLE-doesn-t-build-with-bison-3.patch | 26 ++++++++++++++++++++++ meta/recipes-sato/webkit/webkit-gtk_1.8.3.bb | 1 + 2 files changed, 27 insertions(+) create mode 100644 meta/recipes-sato/webkit/files/webkit-gtk-ANGLE-doesn-t-build-with-bison-3.patch
meta/recipes-sato/webkit/files/webkit-gtk-ANGLE-doesn-t-build-with-bison-3.patch new file +26 -0
@@ -0,0 +1,26 @@ +webkit-gtk: ANGLE doesn't build with bison 3 + +Use %lex-param to set YYLEX_PARAM. + +Upstream-Status: Pending + +Signed-off-by: Chong Lu <[email protected]> +--- + Source/ThirdParty/ANGLE/src/compiler/glslang.y | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/Source/ThirdParty/ANGLE/src/compiler/glslang.y b/Source/ThirdParty/ANGLE/src/compiler/glslang.y +index ec1a85c..15723cc 100644 +--- a/Source/ThirdParty/ANGLE/src/compiler/glslang.y ++++ b/Source/ThirdParty/ANGLE/src/compiler/glslang.y +@@ -32,6 +32,7 @@ WHICH GENERATES THE GLSL ES PARSER (glslang_tab.cpp AND glslang_tab.h). + %expect 1 /* One shift reduce conflict because of if | else */ + %pure-parser + %parse-param {TParseContext* context} ++%lex-param {YYLEX_PARAM} + + %union { + struct { +-- +1.9.1 +
meta/recipes-sato/webkit/webkit-gtk_1.8.3.bb +1 -0
@@ -26,6 +26,7 @@ SRC_URI = "\ file://obsolete_automake_macros.patch \ file://0001-Enable-mips64-build.patch \ file://aarch64.patch \ + file://webkit-gtk-ANGLE-doesn-t-build-with-bison-3.patch \ " SRC_URI[md5sum] = "dcbf9d5e2e6391f857c29a57528b32a6"
Signature · 1 line
1.9.1