]> git.pld-linux.org Git - packages/gtk-webkit4.git/commitdiff
- added bison2.6 patch (from svn; fixes build with bison >= 2.6)
authorJakub Bogusz <qboosh@pld-linux.org>
Mon, 27 Aug 2012 18:02:37 +0000 (20:02 +0200)
committerJakub Bogusz <qboosh@pld-linux.org>
Mon, 27 Aug 2012 18:02:37 +0000 (20:02 +0200)
gtk-webkit3-bison2.6.patch [new file with mode: 0644]
gtk-webkit3.spec

diff --git a/gtk-webkit3-bison2.6.patch b/gtk-webkit3-bison2.6.patch
new file mode 100644 (file)
index 0000000..95898ad
--- /dev/null
@@ -0,0 +1,515 @@
+Index: /trunk/Source/WebCore/ChangeLog\r
+===================================================================\r
+--- /trunk/Source/WebCore/ChangeLog    (revision 124098)\r
++++ /trunk/Source/WebCore/ChangeLog    (revision 124099)\r
+@@ -1,2 +1,27 @@\r
++2012-07-30  Alexis Menard  <alexis.menard@openbossa.org>\r
++\r
++        Build fix with newer bison 2.6.\r
++        https://bugs.webkit.org/show_bug.cgi?id=92264\r
++\r
++        Reviewed by Adam Barth.\r
++\r
++        As stated in http://www.gnu.org/software/bison/manual/html_node/Table-of-Symbols.html\r
++        YYLEX_PARAM and YYPARSE_PARAM are depecreated since version 1.875. So far all Mac OS\r
++        version I had access to as well as recent Linux runs at least version 2.3 so it's safe\r
++        to use the replacement of these deprecated macros in favor of %lex-param and %parse-param.\r
++        As announced http://lists.gnu.org/archive/html/info-gnu/2012-07/msg00011.html with the release\r
++        of version 2.6 YYLEX_PARAM and YYPARSE_PARAM are not supported anymore.\r
++\r
++        No new tests : build fix and the patch should not trigger any regressions\r
++\r
++        * css/CSSGrammar.y:\r
++        * css/CSSParser.cpp:\r
++        * xml/XPathGrammar.y: Refactored a bit to not use an intermediate PARSER define.\r
++        * xml/XPathParser.cpp: bison 2.6 declare xpathyyparse in the .h file now, i.e. XPathGrammar.h\r
++        therefore including this file within the namespace {} declarations leads to xpathyyparse being\r
++        defined part of WebCore::XPath namespaces but the actual implementation of xpathyyparse is in XPathGrammar.cpp\r
++        (generated) and not implemented within the WebCore::XPath so it lead to linking issues. Last, XPathGrammar.h needs \r
++        to be included after the other includes as it uses some XPath types. It breaks the style but CSSParser.cpp is doing the same.\r
++\r
+ 2012-07-30  Sadrul Habib Chowdhury  <sadrul@chromium.org>\r
\r
+Index: /trunk/Source/WebCore/css/CSSParser.cpp\r
+===================================================================\r
+--- /trunk/Source/WebCore/css/CSSParser.cpp    (revision 124098)\r
++++ /trunk/Source/WebCore/css/CSSParser.cpp    (revision 124099)\r
+@@ -115,5 +115,5 @@\r
+ #endif\r
\r
+-extern int cssyyparse(void* parser);\r
++extern int cssyyparse(WebCore::CSSParser*);\r
\r
+ using namespace std;\r
+Index: /trunk/Source/WebCore/css/CSSGrammar.y\r
+===================================================================\r
+--- /trunk/Source/WebCore/css/CSSGrammar.y     (revision 124098)\r
++++ /trunk/Source/WebCore/css/CSSGrammar.y     (revision 124099)\r
+@@ -54,11 +54,10 @@\r
+ #define YYDEBUG 0\r
\r
+-// FIXME: Replace with %parse-param { CSSParser* parser } once we can depend on bison 2.x\r
+-#define YYPARSE_PARAM parser\r
+-#define YYLEX_PARAM parser\r
+-\r
+ %}\r
\r
+ %pure_parser\r
++\r
++%parse-param { CSSParser* parser }\r
++%lex-param { CSSParser* parser }\r
\r
+ %union {\r
+@@ -90,5 +89,5 @@\r
+ %{\r
\r
+-static inline int cssyyerror(const char*)\r
++static inline int cssyyerror(void*, const char*)\r
+ {\r
+     return 1;\r
+Index: /trunk/Source/WebCore/xml/XPathParser.cpp\r
+===================================================================\r
+--- /trunk/Source/WebCore/xml/XPathParser.cpp  (revision 124098)\r
++++ /trunk/Source/WebCore/xml/XPathParser.cpp  (revision 124099)\r
+@@ -33,22 +33,19 @@\r
+ #include "XPathException.h"\r
+ #include "XPathNSResolver.h"\r
++#include "XPathPath.h"\r
+ #include "XPathStep.h"\r
+ #include <wtf/StdLibExtras.h>\r
+ #include <wtf/text/StringHash.h>\r
\r
+-int xpathyyparse(void*);\r
+-\r
++using namespace WebCore;\r
+ using namespace WTF;\r
+ using namespace Unicode;\r
+-\r
+-namespace WebCore {\r
+-namespace XPath {\r
+-\r
+-class LocationPath;\r
+-\r
+-#include "XPathGrammar.h"    \r
++using namespace XPath;\r
++\r
++extern int xpathyyparse(WebCore::XPath::Parser*);\r
++#include "XPathGrammar.h"\r
\r
+ Parser* Parser::currentParser = 0;\r
+-    \r
++\r
+ enum XMLCat { NameStart, NameCont, NotPartOfName };\r
\r
+@@ -631,4 +628,2 @@\r
+ }\r
\r
+-}\r
+-}\r
+Index: /trunk/Source/WebCore/xml/XPathGrammar.y\r
+===================================================================\r
+--- /trunk/Source/WebCore/xml/XPathGrammar.y   (revision 124098)\r
++++ /trunk/Source/WebCore/xml/XPathGrammar.y   (revision 124099)\r
+@@ -35,4 +35,5 @@\r
+ #include "XPathPath.h"\r
+ #include "XPathPredicate.h"\r
++#include "XPathStep.h"\r
+ #include "XPathVariableReference.h"\r
+ #include <wtf/FastMalloc.h>\r
+@@ -45,6 +46,4 @@\r
+ #define YYDEBUG 0\r
+ #define YYMAXDEPTH 10000\r
+-#define YYPARSE_PARAM parserParameter\r
+-#define PARSER static_cast<Parser*>(parserParameter)\r
\r
+ using namespace WebCore;\r
+@@ -54,4 +53,5 @@\r
\r
+ %pure_parser\r
++%parse-param { WebCore::XPath::Parser* parser }\r
\r
+ %union\r
+@@ -72,5 +72,5 @@\r
\r
+ static int xpathyylex(YYSTYPE* yylval) { return Parser::current()->lex(yylval); }\r
+-static void xpathyyerror(const char*) { }\r
++static void xpathyyerror(void*, const char*) { }\r
+     \r
+ %}\r
+@@ -119,5 +119,5 @@\r
+     OrExpr\r
+     {\r
+-        PARSER->m_topExpr = $1;\r
++        parser->m_topExpr = $1;\r
+     }\r
+     ;\r
+@@ -139,5 +139,5 @@\r
+     {\r
+         $$ = new LocationPath;\r
+-        PARSER->registerParseNode($$);\r
++        parser->registerParseNode($$);\r
+     }\r
+     |\r
+@@ -151,5 +151,5 @@\r
+         $$ = $2;\r
+         $$->insertFirstStep($1);\r
+-        PARSER->unregisterParseNode($1);\r
++        parser->unregisterParseNode($1);\r
+     }\r
+     ;\r
+@@ -160,6 +160,6 @@\r
+         $$ = new LocationPath;\r
+         $$->appendStep($1);\r
+-        PARSER->unregisterParseNode($1);\r
+-        PARSER->registerParseNode($$);\r
++        parser->unregisterParseNode($1);\r
++        parser->registerParseNode($$);\r
+     }\r
+     |\r
+@@ -167,5 +167,5 @@\r
+     {\r
+         $$->appendStep($3);\r
+-        PARSER->unregisterParseNode($3);\r
++        parser->unregisterParseNode($3);\r
+     }\r
+     |\r
+@@ -174,6 +174,6 @@\r
+         $$->appendStep($2);\r
+         $$->appendStep($3);\r
+-        PARSER->unregisterParseNode($2);\r
+-        PARSER->unregisterParseNode($3);\r
++        parser->unregisterParseNode($2);\r
++        parser->unregisterParseNode($3);\r
+     }\r
+     ;\r
+@@ -184,9 +184,9 @@\r
+         if ($2) {\r
+             $$ = new Step(Step::ChildAxis, *$1, *$2);\r
+-            PARSER->deletePredicateVector($2);\r
++            parser->deletePredicateVector($2);\r
+         } else\r
+             $$ = new Step(Step::ChildAxis, *$1);\r
+-        PARSER->deleteNodeTest($1);\r
+-        PARSER->registerParseNode($$);\r
++        parser->deleteNodeTest($1);\r
++        parser->registerParseNode($$);\r
+     }\r
+     |\r
+@@ -195,6 +195,6 @@\r
+         String localName;\r
+         String namespaceURI;\r
+-        if (!PARSER->expandQName(*$1, localName, namespaceURI)) {\r
+-            PARSER->m_gotNamespaceError = true;\r
++        if (!parser->expandQName(*$1, localName, namespaceURI)) {\r
++            parser->m_gotNamespaceError = true;\r
+             YYABORT;\r
+         }\r
+@@ -202,9 +202,9 @@\r
+         if ($2) {\r
+             $$ = new Step(Step::ChildAxis, Step::NodeTest(Step::NodeTest::NameTest, localName, namespaceURI), *$2);\r
+-            PARSER->deletePredicateVector($2);\r
++            parser->deletePredicateVector($2);\r
+         } else\r
+             $$ = new Step(Step::ChildAxis, Step::NodeTest(Step::NodeTest::NameTest, localName, namespaceURI));\r
+-        PARSER->deleteString($1);\r
+-        PARSER->registerParseNode($$);\r
++        parser->deleteString($1);\r
++        parser->registerParseNode($$);\r
+     }\r
+     |\r
+@@ -213,9 +213,9 @@\r
+         if ($3) {\r
+             $$ = new Step($1, *$2, *$3);\r
+-            PARSER->deletePredicateVector($3);\r
++            parser->deletePredicateVector($3);\r
+         } else\r
+             $$ = new Step($1, *$2);\r
+-        PARSER->deleteNodeTest($2);\r
+-        PARSER->registerParseNode($$);\r
++        parser->deleteNodeTest($2);\r
++        parser->registerParseNode($$);\r
+     }\r
+     |\r
+@@ -224,6 +224,6 @@\r
+         String localName;\r
+         String namespaceURI;\r
+-        if (!PARSER->expandQName(*$2, localName, namespaceURI)) {\r
+-            PARSER->m_gotNamespaceError = true;\r
++        if (!parser->expandQName(*$2, localName, namespaceURI)) {\r
++            parser->m_gotNamespaceError = true;\r
+             YYABORT;\r
+         }\r
+@@ -231,9 +231,9 @@\r
+         if ($3) {\r
+             $$ = new Step($1, Step::NodeTest(Step::NodeTest::NameTest, localName, namespaceURI), *$3);\r
+-            PARSER->deletePredicateVector($3);\r
++            parser->deletePredicateVector($3);\r
+         } else\r
+             $$ = new Step($1, Step::NodeTest(Step::NodeTest::NameTest, localName, namespaceURI));\r
+-        PARSER->deleteString($2);\r
+-        PARSER->registerParseNode($$);\r
++        parser->deleteString($2);\r
++        parser->registerParseNode($$);\r
+     }\r
+     |\r
+@@ -260,6 +260,6 @@\r
+             $$ = new Step::NodeTest(Step::NodeTest::CommentNodeTest);\r
\r
+-        PARSER->deleteString($1);\r
+-        PARSER->registerNodeTest($$);\r
++        parser->deleteString($1);\r
++        parser->registerNodeTest($$);\r
+     }\r
+     |\r
+@@ -267,6 +267,6 @@\r
+     {\r
+         $$ = new Step::NodeTest(Step::NodeTest::ProcessingInstructionNodeTest);\r
+-        PARSER->deleteString($1);        \r
+-        PARSER->registerNodeTest($$);\r
++        parser->deleteString($1);\r
++        parser->registerNodeTest($$);\r
+     }\r
+     |\r
+@@ -274,7 +274,7 @@\r
+     {\r
+         $$ = new Step::NodeTest(Step::NodeTest::ProcessingInstructionNodeTest, $3->stripWhiteSpace());\r
+-        PARSER->deleteString($1);        \r
+-        PARSER->deleteString($3);\r
+-        PARSER->registerNodeTest($$);\r
++        parser->deleteString($1);\r
++        parser->deleteString($3);\r
++        parser->registerNodeTest($$);\r
+     }\r
+     ;\r
+@@ -294,6 +294,6 @@\r
+         $$ = new Vector<Predicate*>;\r
+         $$->append(new Predicate($1));\r
+-        PARSER->unregisterParseNode($1);\r
+-        PARSER->registerPredicateVector($$);\r
++        parser->unregisterParseNode($1);\r
++        parser->registerPredicateVector($$);\r
+     }\r
+     |\r
+@@ -301,5 +301,5 @@\r
+     {\r
+         $$->append(new Predicate($2));\r
+-        PARSER->unregisterParseNode($2);\r
++        parser->unregisterParseNode($2);\r
+     }\r
+     ;\r
+@@ -316,5 +316,5 @@\r
+     {\r
+         $$ = new Step(Step::DescendantOrSelfAxis, Step::NodeTest(Step::NodeTest::AnyNodeTest));\r
+-        PARSER->registerParseNode($$);\r
++        parser->registerParseNode($$);\r
+     }\r
+     ;\r
+@@ -324,5 +324,5 @@\r
+     {\r
+         $$ = new Step(Step::SelfAxis, Step::NodeTest(Step::NodeTest::AnyNodeTest));\r
+-        PARSER->registerParseNode($$);\r
++        parser->registerParseNode($$);\r
+     }\r
+     |\r
+@@ -330,5 +330,5 @@\r
+     {\r
+         $$ = new Step(Step::ParentAxis, Step::NodeTest(Step::NodeTest::AnyNodeTest));\r
+-        PARSER->registerParseNode($$);\r
++        parser->registerParseNode($$);\r
+     }\r
+     ;\r
+@@ -338,6 +338,6 @@\r
+     {\r
+         $$ = new VariableReference(*$1);\r
+-        PARSER->deleteString($1);\r
+-        PARSER->registerParseNode($$);\r
++        parser->deleteString($1);\r
++        parser->registerParseNode($$);\r
+     }\r
+     |\r
+@@ -350,6 +350,6 @@\r
+     {\r
+         $$ = new StringExpression(*$1);\r
+-        PARSER->deleteString($1);\r
+-        PARSER->registerParseNode($$);\r
++        parser->deleteString($1);\r
++        parser->registerParseNode($$);\r
+     }\r
+     |\r
+@@ -357,6 +357,6 @@\r
+     {\r
+         $$ = new Number($1->toDouble());\r
+-        PARSER->deleteString($1);\r
+-        PARSER->registerParseNode($$);\r
++        parser->deleteString($1);\r
++        parser->registerParseNode($$);\r
+     }\r
+     |\r
+@@ -370,6 +370,6 @@\r
+         if (!$$)\r
+             YYABORT;\r
+-        PARSER->deleteString($1);\r
+-        PARSER->registerParseNode($$);\r
++        parser->deleteString($1);\r
++        parser->registerParseNode($$);\r
+     }\r
+     |\r
+@@ -379,7 +379,7 @@\r
+         if (!$$)\r
+             YYABORT;\r
+-        PARSER->deleteString($1);\r
+-        PARSER->deleteExpressionVector($3);\r
+-        PARSER->registerParseNode($$);\r
++        parser->deleteString($1);\r
++        parser->deleteExpressionVector($3);\r
++        parser->registerParseNode($$);\r
+     }\r
+     ;\r
+@@ -390,6 +390,6 @@\r
+         $$ = new Vector<Expression*>;\r
+         $$->append($1);\r
+-        PARSER->unregisterParseNode($1);\r
+-        PARSER->registerExpressionVector($$);\r
++        parser->unregisterParseNode($1);\r
++        parser->registerExpressionVector($$);\r
+     }\r
+     |\r
+@@ -397,5 +397,5 @@\r
+     {\r
+         $$->append($3);\r
+-        PARSER->unregisterParseNode($3);\r
++        parser->unregisterParseNode($3);\r
+     }\r
+     ;\r
+@@ -413,7 +413,7 @@\r
+         $$->addSubExpression($1);\r
+         $$->addSubExpression($3);\r
+-        PARSER->unregisterParseNode($1);\r
+-        PARSER->unregisterParseNode($3);\r
+-        PARSER->registerParseNode($$);\r
++        parser->unregisterParseNode($1);\r
++        parser->unregisterParseNode($3);\r
++        parser->registerParseNode($$);\r
+     }\r
+     ;\r
+@@ -431,7 +431,7 @@\r
+         $3->setAbsolute(true);\r
+         $$ = new Path(static_cast<Filter*>($1), $3);\r
+-        PARSER->unregisterParseNode($1);\r
+-        PARSER->unregisterParseNode($3);\r
+-        PARSER->registerParseNode($$);\r
++        parser->unregisterParseNode($1);\r
++        parser->unregisterParseNode($3);\r
++        parser->registerParseNode($$);\r
+     }\r
+     |\r
+@@ -441,8 +441,8 @@\r
+         $3->setAbsolute(true);\r
+         $$ = new Path(static_cast<Filter*>($1), $3);\r
+-        PARSER->unregisterParseNode($1);\r
+-        PARSER->unregisterParseNode($2);\r
+-        PARSER->unregisterParseNode($3);\r
+-        PARSER->registerParseNode($$);\r
++        parser->unregisterParseNode($1);\r
++        parser->unregisterParseNode($2);\r
++        parser->unregisterParseNode($3);\r
++        parser->registerParseNode($$);\r
+     }\r
+     ;\r
+@@ -454,7 +454,7 @@\r
+     {\r
+         $$ = new Filter($1, *$2);\r
+-        PARSER->unregisterParseNode($1);\r
+-        PARSER->deletePredicateVector($2);\r
+-        PARSER->registerParseNode($$);\r
++        parser->unregisterParseNode($1);\r
++        parser->deletePredicateVector($2);\r
++        parser->registerParseNode($$);\r
+     }\r
+     ;\r
+@@ -466,7 +466,7 @@\r
+     {\r
+         $$ = new LogicalOp(LogicalOp::OP_Or, $1, $3);\r
+-        PARSER->unregisterParseNode($1);\r
+-        PARSER->unregisterParseNode($3);\r
+-        PARSER->registerParseNode($$);\r
++        parser->unregisterParseNode($1);\r
++        parser->unregisterParseNode($3);\r
++        parser->registerParseNode($$);\r
+     }\r
+     ;\r
+@@ -478,7 +478,7 @@\r
+     {\r
+         $$ = new LogicalOp(LogicalOp::OP_And, $1, $3);\r
+-        PARSER->unregisterParseNode($1);\r
+-        PARSER->unregisterParseNode($3);\r
+-        PARSER->registerParseNode($$);\r
++        parser->unregisterParseNode($1);\r
++        parser->unregisterParseNode($3);\r
++        parser->registerParseNode($$);\r
+     }\r
+     ;\r
+@@ -490,7 +490,7 @@\r
+     {\r
+         $$ = new EqTestOp($2, $1, $3);\r
+-        PARSER->unregisterParseNode($1);\r
+-        PARSER->unregisterParseNode($3);\r
+-        PARSER->registerParseNode($$);\r
++        parser->unregisterParseNode($1);\r
++        parser->unregisterParseNode($3);\r
++        parser->registerParseNode($$);\r
+     }\r
+     ;\r
+@@ -502,7 +502,7 @@\r
+     {\r
+         $$ = new EqTestOp($2, $1, $3);\r
+-        PARSER->unregisterParseNode($1);\r
+-        PARSER->unregisterParseNode($3);\r
+-        PARSER->registerParseNode($$);\r
++        parser->unregisterParseNode($1);\r
++        parser->unregisterParseNode($3);\r
++        parser->registerParseNode($$);\r
+     }\r
+     ;\r
+@@ -514,7 +514,7 @@\r
+     {\r
+         $$ = new NumericOp(NumericOp::OP_Add, $1, $3);\r
+-        PARSER->unregisterParseNode($1);\r
+-        PARSER->unregisterParseNode($3);\r
+-        PARSER->registerParseNode($$);\r
++        parser->unregisterParseNode($1);\r
++        parser->unregisterParseNode($3);\r
++        parser->registerParseNode($$);\r
+     }\r
+     |\r
+@@ -522,7 +522,7 @@\r
+     {\r
+         $$ = new NumericOp(NumericOp::OP_Sub, $1, $3);\r
+-        PARSER->unregisterParseNode($1);\r
+-        PARSER->unregisterParseNode($3);\r
+-        PARSER->registerParseNode($$);\r
++        parser->unregisterParseNode($1);\r
++        parser->unregisterParseNode($3);\r
++        parser->registerParseNode($$);\r
+     }\r
+     ;\r
+@@ -534,7 +534,7 @@\r
+     {\r
+         $$ = new NumericOp($2, $1, $3);\r
+-        PARSER->unregisterParseNode($1);\r
+-        PARSER->unregisterParseNode($3);\r
+-        PARSER->registerParseNode($$);\r
++        parser->unregisterParseNode($1);\r
++        parser->unregisterParseNode($3);\r
++        parser->registerParseNode($$);\r
+     }\r
+     ;\r
+@@ -547,6 +547,6 @@\r
+         $$ = new Negative;\r
+         $$->addSubExpression($2);\r
+-        PARSER->unregisterParseNode($2);\r
+-        PARSER->registerParseNode($$);\r
++        parser->unregisterParseNode($2);\r
++        parser->registerParseNode($$);\r
+     }\r
+     ;\r
index 9ed91736c31e00563e79bc61e1be9564907e2f4b..f558721e78dabf45f20d7f0d492bcd330a54c6b0 100644 (file)
@@ -17,11 +17,12 @@ License:    BSD-like
 Group:         X11/Libraries
 Source0:       http://webkitgtk.org/releases/webkit-%{version}.tar.xz
 # Source0-md5: f7bd0bd4f323039f15e19c82a9a8313c
+Patch0:                %{name}-bison2.6.patch
 URL:           http://webkitgtk.org/
 BuildRequires: OpenGL-GLU-devel
 BuildRequires: autoconf >= 2.59
 BuildRequires: automake
-BuildRequires: bison
+BuildRequires: bison >= 1.875
 BuildRequires: cairo-devel >= 1.10
 BuildRequires: enchant-devel >= 0.22
 BuildRequires: flex >= 2.5.33
@@ -99,6 +100,7 @@ Dokumentacja API WebKita.
 
 %prep
 %setup -q -n webkit-%{version}
+%patch0 -p2
 
 %build
 %{__gtkdocize}
This page took 0.178617 seconds and 4 git commands to generate.