From 1a8025f21b095e2102fe99848f188c1a61a60fe7 Mon Sep 17 00:00:00 2001 From: Juan RP Date: Sat, 18 Aug 2012 12:24:04 +0200 Subject: [PATCH] chromium: update to 21.0.1180.79. --- .../chromium-20.0.1132.57-bison-2.6-fix.patch | 554 ++++++++++++++++++ ...20.0.1132.57-glib-2.16-use-siginfo_t.patch | 35 ++ ...21.0.1180.57-fix-crash-in-task-queue.patch | 27 + srcpkgs/chromium/patches/chromium-gcc47.patch | 52 -- .../chromium/patches/chromium-ppapi-r0.patch | 11 + ....3-fix-out-of-scope-memory-reference.patch | 26 - srcpkgs/chromium/template | 62 +- 7 files changed, 655 insertions(+), 112 deletions(-) create mode 100644 srcpkgs/chromium/patches/chromium-20.0.1132.57-bison-2.6-fix.patch create mode 100644 srcpkgs/chromium/patches/chromium-20.0.1132.57-glib-2.16-use-siginfo_t.patch create mode 100644 srcpkgs/chromium/patches/chromium-21.0.1180.57-fix-crash-in-task-queue.patch delete mode 100644 srcpkgs/chromium/patches/chromium-gcc47.patch create mode 100644 srcpkgs/chromium/patches/chromium-ppapi-r0.patch delete mode 100644 srcpkgs/chromium/patches/sqlite-3.7.6.3-fix-out-of-scope-memory-reference.patch diff --git a/srcpkgs/chromium/patches/chromium-20.0.1132.57-bison-2.6-fix.patch b/srcpkgs/chromium/patches/chromium-20.0.1132.57-bison-2.6-fix.patch new file mode 100644 index 0000000000..079ea2a65e --- /dev/null +++ b/srcpkgs/chromium/patches/chromium-20.0.1132.57-bison-2.6-fix.patch @@ -0,0 +1,554 @@ +diff --git a/Source/WebCore/css/CSSGrammar.y b/Source/WebCore/css/CSSGrammar.y +index c7c10b541cd46ad4febc6efe289e81b2cfb0861e..1c604e76b4da4cc65f395bc4a73b112561bd5c84 100644 +--- chromium-21.0.1180.79/third_party/WebKit/Source/WebCore/css/CSSGrammar.y ++++ chromium-21.0.1180.79/third_party/WebKit/Source/WebCore/css/CSSGrammar.y +@@ -53,14 +53,13 @@ using namespace HTMLNames; + #define YYMAXDEPTH 10000 + #define YYDEBUG 0 + +-// FIXME: Replace with %parse-param { CSSParser* parser } once we can depend on bison 2.x +-#define YYPARSE_PARAM parser +-#define YYLEX_PARAM parser +- + %} + + %pure_parser + ++%parse-param { CSSParser* parser } ++%lex-param { CSSParser* parser } ++ + %union { + bool boolean; + char character; +@@ -89,7 +88,7 @@ using namespace HTMLNames; + + %{ + +-static inline int cssyyerror(const char*) ++static inline int cssyyerror(void*, const char*) + { + return 1; + } +diff --git a/Source/WebCore/css/CSSParser.cpp b/Source/WebCore/css/CSSParser.cpp +index 650844060477cfc6ea6fdeaf11ec63b34ac646e7..8369549dbff25537cf93a11237a9bbbac4fe50f2 100644 +--- chromium-21.0.1180.79/third_party/WebKit/Source/WebCore/css/CSSParser.cpp ++++ chromium-21.0.1180.79/third_party/WebKit/Source/WebCore/css/CSSParser.cpp +@@ -114,7 +114,7 @@ + extern int cssyydebug; + #endif + +-extern int cssyyparse(void* parser); ++extern int cssyyparse(WebCore::CSSParser*); + + using namespace std; + using namespace WTF; +diff --git a/Source/WebCore/xml/XPathGrammar.y b/Source/WebCore/xml/XPathGrammar.y +index 2eba5b35bd2338272a0f4ec756d137e47d2d59c8..d558211db2d89ea13716762a51397755560f66f3 100644 +--- chromium-21.0.1180.79/third_party/WebKit/Source/WebCore/xml/XPathGrammar.y ++++ chromium-21.0.1180.79/third_party/WebKit/Source/WebCore/xml/XPathGrammar.y +@@ -34,6 +34,7 @@ + #include "XPathParser.h" + #include "XPathPath.h" + #include "XPathPredicate.h" ++#include "XPathStep.h" + #include "XPathVariableReference.h" + #include + +@@ -44,8 +45,6 @@ + #define YYLTYPE_IS_TRIVIAL 1 + #define YYDEBUG 0 + #define YYMAXDEPTH 10000 +-#define YYPARSE_PARAM parserParameter +-#define PARSER static_cast(parserParameter) + + using namespace WebCore; + using namespace XPath; +@@ -53,6 +52,7 @@ using namespace XPath; + %} + + %pure_parser ++%parse-param { WebCore::XPath::Parser* parser } + + %union + { +@@ -71,7 +71,7 @@ using namespace XPath; + %{ + + static int xpathyylex(YYSTYPE* yylval) { return Parser::current()->lex(yylval); } +-static void xpathyyerror(const char*) { } ++static void xpathyyerror(void*, const char*) { } + + %} + +@@ -118,7 +118,7 @@ static void xpathyyerror(const char*) { } + Expr: + OrExpr + { +- PARSER->m_topExpr = $1; ++ parser->m_topExpr = $1; + } + ; + +@@ -138,7 +138,7 @@ AbsoluteLocationPath: + '/' + { + $$ = new LocationPath; +- PARSER->registerParseNode($$); ++ parser->registerParseNode($$); + } + | + '/' RelativeLocationPath +@@ -150,7 +150,7 @@ AbsoluteLocationPath: + { + $$ = $2; + $$->insertFirstStep($1); +- PARSER->unregisterParseNode($1); ++ parser->unregisterParseNode($1); + } + ; + +@@ -159,22 +159,22 @@ RelativeLocationPath: + { + $$ = new LocationPath; + $$->appendStep($1); +- PARSER->unregisterParseNode($1); +- PARSER->registerParseNode($$); ++ parser->unregisterParseNode($1); ++ parser->registerParseNode($$); + } + | + RelativeLocationPath '/' Step + { + $$->appendStep($3); +- PARSER->unregisterParseNode($3); ++ parser->unregisterParseNode($3); + } + | + RelativeLocationPath DescendantOrSelf Step + { + $$->appendStep($2); + $$->appendStep($3); +- PARSER->unregisterParseNode($2); +- PARSER->unregisterParseNode($3); ++ parser->unregisterParseNode($2); ++ parser->unregisterParseNode($3); + } + ; + +@@ -183,58 +183,58 @@ Step: + { + if ($2) { + $$ = new Step(Step::ChildAxis, *$1, *$2); +- PARSER->deletePredicateVector($2); ++ parser->deletePredicateVector($2); + } else + $$ = new Step(Step::ChildAxis, *$1); +- PARSER->deleteNodeTest($1); +- PARSER->registerParseNode($$); ++ parser->deleteNodeTest($1); ++ parser->registerParseNode($$); + } + | + NAMETEST OptionalPredicateList + { + String localName; + String namespaceURI; +- if (!PARSER->expandQName(*$1, localName, namespaceURI)) { +- PARSER->m_gotNamespaceError = true; ++ if (!parser->expandQName(*$1, localName, namespaceURI)) { ++ parser->m_gotNamespaceError = true; + YYABORT; + } + + if ($2) { + $$ = new Step(Step::ChildAxis, Step::NodeTest(Step::NodeTest::NameTest, localName, namespaceURI), *$2); +- PARSER->deletePredicateVector($2); ++ parser->deletePredicateVector($2); + } else + $$ = new Step(Step::ChildAxis, Step::NodeTest(Step::NodeTest::NameTest, localName, namespaceURI)); +- PARSER->deleteString($1); +- PARSER->registerParseNode($$); ++ parser->deleteString($1); ++ parser->registerParseNode($$); + } + | + AxisSpecifier NodeTest OptionalPredicateList + { + if ($3) { + $$ = new Step($1, *$2, *$3); +- PARSER->deletePredicateVector($3); ++ parser->deletePredicateVector($3); + } else + $$ = new Step($1, *$2); +- PARSER->deleteNodeTest($2); +- PARSER->registerParseNode($$); ++ parser->deleteNodeTest($2); ++ parser->registerParseNode($$); + } + | + AxisSpecifier NAMETEST OptionalPredicateList + { + String localName; + String namespaceURI; +- if (!PARSER->expandQName(*$2, localName, namespaceURI)) { +- PARSER->m_gotNamespaceError = true; ++ if (!parser->expandQName(*$2, localName, namespaceURI)) { ++ parser->m_gotNamespaceError = true; + YYABORT; + } + + if ($3) { + $$ = new Step($1, Step::NodeTest(Step::NodeTest::NameTest, localName, namespaceURI), *$3); +- PARSER->deletePredicateVector($3); ++ parser->deletePredicateVector($3); + } else + $$ = new Step($1, Step::NodeTest(Step::NodeTest::NameTest, localName, namespaceURI)); +- PARSER->deleteString($2); +- PARSER->registerParseNode($$); ++ parser->deleteString($2); ++ parser->registerParseNode($$); + } + | + AbbreviatedStep +@@ -259,23 +259,23 @@ NodeTest: + else if (*$1 == "comment") + $$ = new Step::NodeTest(Step::NodeTest::CommentNodeTest); + +- PARSER->deleteString($1); +- PARSER->registerNodeTest($$); ++ parser->deleteString($1); ++ parser->registerNodeTest($$); + } + | + PI '(' ')' + { + $$ = new Step::NodeTest(Step::NodeTest::ProcessingInstructionNodeTest); +- PARSER->deleteString($1); +- PARSER->registerNodeTest($$); ++ parser->deleteString($1); ++ parser->registerNodeTest($$); + } + | + PI '(' LITERAL ')' + { + $$ = new Step::NodeTest(Step::NodeTest::ProcessingInstructionNodeTest, $3->stripWhiteSpace()); +- PARSER->deleteString($1); +- PARSER->deleteString($3); +- PARSER->registerNodeTest($$); ++ parser->deleteString($1); ++ parser->deleteString($3); ++ parser->registerNodeTest($$); + } + ; + +@@ -293,14 +293,14 @@ PredicateList: + { + $$ = new Vector; + $$->append(new Predicate($1)); +- PARSER->unregisterParseNode($1); +- PARSER->registerPredicateVector($$); ++ parser->unregisterParseNode($1); ++ parser->registerPredicateVector($$); + } + | + PredicateList Predicate + { + $$->append(new Predicate($2)); +- PARSER->unregisterParseNode($2); ++ parser->unregisterParseNode($2); + } + ; + +@@ -315,7 +315,7 @@ DescendantOrSelf: + SLASHSLASH + { + $$ = new Step(Step::DescendantOrSelfAxis, Step::NodeTest(Step::NodeTest::AnyNodeTest)); +- PARSER->registerParseNode($$); ++ parser->registerParseNode($$); + } + ; + +@@ -323,13 +323,13 @@ AbbreviatedStep: + '.' + { + $$ = new Step(Step::SelfAxis, Step::NodeTest(Step::NodeTest::AnyNodeTest)); +- PARSER->registerParseNode($$); ++ parser->registerParseNode($$); + } + | + DOTDOT + { + $$ = new Step(Step::ParentAxis, Step::NodeTest(Step::NodeTest::AnyNodeTest)); +- PARSER->registerParseNode($$); ++ parser->registerParseNode($$); + } + ; + +@@ -337,8 +337,8 @@ PrimaryExpr: + VARIABLEREFERENCE + { + $$ = new VariableReference(*$1); +- PARSER->deleteString($1); +- PARSER->registerParseNode($$); ++ parser->deleteString($1); ++ parser->registerParseNode($$); + } + | + '(' Expr ')' +@@ -349,15 +349,15 @@ PrimaryExpr: + LITERAL + { + $$ = new StringExpression(*$1); +- PARSER->deleteString($1); +- PARSER->registerParseNode($$); ++ parser->deleteString($1); ++ parser->registerParseNode($$); + } + | + NUMBER + { + $$ = new Number($1->toDouble()); +- PARSER->deleteString($1); +- PARSER->registerParseNode($$); ++ parser->deleteString($1); ++ parser->registerParseNode($$); + } + | + FunctionCall +@@ -369,8 +369,8 @@ FunctionCall: + $$ = createFunction(*$1); + if (!$$) + YYABORT; +- PARSER->deleteString($1); +- PARSER->registerParseNode($$); ++ parser->deleteString($1); ++ parser->registerParseNode($$); + } + | + FUNCTIONNAME '(' ArgumentList ')' +@@ -378,9 +378,9 @@ FunctionCall: + $$ = createFunction(*$1, *$3); + if (!$$) + YYABORT; +- PARSER->deleteString($1); +- PARSER->deleteExpressionVector($3); +- PARSER->registerParseNode($$); ++ parser->deleteString($1); ++ parser->deleteExpressionVector($3); ++ parser->registerParseNode($$); + } + ; + +@@ -389,14 +389,14 @@ ArgumentList: + { + $$ = new Vector; + $$->append($1); +- PARSER->unregisterParseNode($1); +- PARSER->registerExpressionVector($$); ++ parser->unregisterParseNode($1); ++ parser->registerExpressionVector($$); + } + | + ArgumentList ',' Argument + { + $$->append($3); +- PARSER->unregisterParseNode($3); ++ parser->unregisterParseNode($3); + } + ; + +@@ -412,9 +412,9 @@ UnionExpr: + $$ = new Union; + $$->addSubExpression($1); + $$->addSubExpression($3); +- PARSER->unregisterParseNode($1); +- PARSER->unregisterParseNode($3); +- PARSER->registerParseNode($$); ++ parser->unregisterParseNode($1); ++ parser->unregisterParseNode($3); ++ parser->registerParseNode($$); + } + ; + +@@ -430,9 +430,9 @@ PathExpr: + { + $3->setAbsolute(true); + $$ = new Path(static_cast($1), $3); +- PARSER->unregisterParseNode($1); +- PARSER->unregisterParseNode($3); +- PARSER->registerParseNode($$); ++ parser->unregisterParseNode($1); ++ parser->unregisterParseNode($3); ++ parser->registerParseNode($$); + } + | + FilterExpr DescendantOrSelf RelativeLocationPath +@@ -440,10 +440,10 @@ PathExpr: + $3->insertFirstStep($2); + $3->setAbsolute(true); + $$ = new Path(static_cast($1), $3); +- PARSER->unregisterParseNode($1); +- PARSER->unregisterParseNode($2); +- PARSER->unregisterParseNode($3); +- PARSER->registerParseNode($$); ++ parser->unregisterParseNode($1); ++ parser->unregisterParseNode($2); ++ parser->unregisterParseNode($3); ++ parser->registerParseNode($$); + } + ; + +@@ -453,9 +453,9 @@ FilterExpr: + PrimaryExpr PredicateList + { + $$ = new Filter($1, *$2); +- PARSER->unregisterParseNode($1); +- PARSER->deletePredicateVector($2); +- PARSER->registerParseNode($$); ++ parser->unregisterParseNode($1); ++ parser->deletePredicateVector($2); ++ parser->registerParseNode($$); + } + ; + +@@ -465,9 +465,9 @@ OrExpr: + OrExpr OR AndExpr + { + $$ = new LogicalOp(LogicalOp::OP_Or, $1, $3); +- PARSER->unregisterParseNode($1); +- PARSER->unregisterParseNode($3); +- PARSER->registerParseNode($$); ++ parser->unregisterParseNode($1); ++ parser->unregisterParseNode($3); ++ parser->registerParseNode($$); + } + ; + +@@ -477,9 +477,9 @@ AndExpr: + AndExpr AND EqualityExpr + { + $$ = new LogicalOp(LogicalOp::OP_And, $1, $3); +- PARSER->unregisterParseNode($1); +- PARSER->unregisterParseNode($3); +- PARSER->registerParseNode($$); ++ parser->unregisterParseNode($1); ++ parser->unregisterParseNode($3); ++ parser->registerParseNode($$); + } + ; + +@@ -489,9 +489,9 @@ EqualityExpr: + EqualityExpr EQOP RelationalExpr + { + $$ = new EqTestOp($2, $1, $3); +- PARSER->unregisterParseNode($1); +- PARSER->unregisterParseNode($3); +- PARSER->registerParseNode($$); ++ parser->unregisterParseNode($1); ++ parser->unregisterParseNode($3); ++ parser->registerParseNode($$); + } + ; + +@@ -501,9 +501,9 @@ RelationalExpr: + RelationalExpr RELOP AdditiveExpr + { + $$ = new EqTestOp($2, $1, $3); +- PARSER->unregisterParseNode($1); +- PARSER->unregisterParseNode($3); +- PARSER->registerParseNode($$); ++ parser->unregisterParseNode($1); ++ parser->unregisterParseNode($3); ++ parser->registerParseNode($$); + } + ; + +@@ -513,17 +513,17 @@ AdditiveExpr: + AdditiveExpr PLUS MultiplicativeExpr + { + $$ = new NumericOp(NumericOp::OP_Add, $1, $3); +- PARSER->unregisterParseNode($1); +- PARSER->unregisterParseNode($3); +- PARSER->registerParseNode($$); ++ parser->unregisterParseNode($1); ++ parser->unregisterParseNode($3); ++ parser->registerParseNode($$); + } + | + AdditiveExpr MINUS MultiplicativeExpr + { + $$ = new NumericOp(NumericOp::OP_Sub, $1, $3); +- PARSER->unregisterParseNode($1); +- PARSER->unregisterParseNode($3); +- PARSER->registerParseNode($$); ++ parser->unregisterParseNode($1); ++ parser->unregisterParseNode($3); ++ parser->registerParseNode($$); + } + ; + +@@ -533,9 +533,9 @@ MultiplicativeExpr: + MultiplicativeExpr MULOP UnaryExpr + { + $$ = new NumericOp($2, $1, $3); +- PARSER->unregisterParseNode($1); +- PARSER->unregisterParseNode($3); +- PARSER->registerParseNode($$); ++ parser->unregisterParseNode($1); ++ parser->unregisterParseNode($3); ++ parser->registerParseNode($$); + } + ; + +@@ -546,8 +546,8 @@ UnaryExpr: + { + $$ = new Negative; + $$->addSubExpression($2); +- PARSER->unregisterParseNode($2); +- PARSER->registerParseNode($$); ++ parser->unregisterParseNode($2); ++ parser->registerParseNode($$); + } + ; + +diff --git a/Source/WebCore/xml/XPathParser.cpp b/Source/WebCore/xml/XPathParser.cpp +index 62d8ee37fd6ebb74a580a00c59beb6cd40c5a8b7..b5e6a9237593b4aaa2a243f2ff9d86e57f930a97 100644 +--- chromium-21.0.1180.79/third_party/WebKit/Source/WebCore/xml/XPathParser.cpp ++++ chromium-21.0.1180.79/third_party/WebKit/Source/WebCore/xml/XPathParser.cpp +@@ -32,24 +32,21 @@ + #include "XPathEvaluator.h" + #include "XPathException.h" + #include "XPathNSResolver.h" ++#include "XPathPath.h" + #include "XPathStep.h" + #include + #include + +-int xpathyyparse(void*); +- ++using namespace WebCore; + using namespace WTF; + using namespace Unicode; ++using namespace XPath; + +-namespace WebCore { +-namespace XPath { +- +-class LocationPath; +- +-#include "XPathGrammar.h" ++extern int xpathyyparse(WebCore::XPath::Parser*); ++#include "XPathGrammar.h" + + Parser* Parser::currentParser = 0; +- ++ + enum XMLCat { NameStart, NameCont, NotPartOfName }; + + typedef HashMap AxisNamesMap; +@@ -630,5 +627,3 @@ void Parser::deleteNodeTest(Step::NodeTest* t) + delete t; + } + +-} +-} diff --git a/srcpkgs/chromium/patches/chromium-20.0.1132.57-glib-2.16-use-siginfo_t.patch b/srcpkgs/chromium/patches/chromium-20.0.1132.57-glib-2.16-use-siginfo_t.patch new file mode 100644 index 0000000000..707850afae --- /dev/null +++ b/srcpkgs/chromium/patches/chromium-20.0.1132.57-glib-2.16-use-siginfo_t.patch @@ -0,0 +1,35 @@ +diff -upr chromium-20.0.1132.57.orig/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h chromium-20.0.1132.57/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h +--- chromium-21.0.1180.79/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h 2012-07-10 10:48:31.000000000 +0300 ++++ chromium-21.0.1180.79/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h 2012-07-11 23:44:11.000000000 +0300 +@@ -243,14 +243,13 @@ struct kernel_rusage { + long ru_nivcsw; + }; + +-struct siginfo; + #if defined(__i386__) || defined(__arm__) || defined(__PPC__) + + /* include/asm-{arm,i386,mips,ppc}/signal.h */ + struct kernel_old_sigaction { + union { + void (*sa_handler_)(int); +- void (*sa_sigaction_)(int, struct siginfo *, void *); ++ void (*sa_sigaction_)(int, siginfo_t *, void *); + }; + unsigned long sa_mask; + unsigned long sa_flags; +@@ -287,13 +286,13 @@ struct kernel_sigaction { + unsigned long sa_flags; + union { + void (*sa_handler_)(int); +- void (*sa_sigaction_)(int, struct siginfo *, void *); ++ void (*sa_sigaction_)(int, siginfo_t *, void *); + }; + struct kernel_sigset_t sa_mask; + #else + union { + void (*sa_handler_)(int); +- void (*sa_sigaction_)(int, struct siginfo *, void *); ++ void (*sa_sigaction_)(int, siginfo_t *, void *); + }; + unsigned long sa_flags; + void (*sa_restorer)(void); diff --git a/srcpkgs/chromium/patches/chromium-21.0.1180.57-fix-crash-in-task-queue.patch b/srcpkgs/chromium/patches/chromium-21.0.1180.57-fix-crash-in-task-queue.patch new file mode 100644 index 0000000000..8945e8408d --- /dev/null +++ b/srcpkgs/chromium/patches/chromium-21.0.1180.57-fix-crash-in-task-queue.patch @@ -0,0 +1,27 @@ +Index: chrome/browser/extensions/lazy_background_task_queue.cc +diff --git a/chrome/browser/extensions/lazy_background_task_queue.cc b/chrome/browser/extensions/lazy_background_task_queue.cc +index b98d44626be848a3a2db04c60ac4cb11ea981243..49bc2229325ce5ba975de4d76347a388a598e86d 100644 +--- chromium-21.0.1180.79/chrome/browser/extensions/lazy_background_task_queue.cc ++++ chromium-21.0.1180.79/chrome/browser/extensions/lazy_background_task_queue.cc +@@ -115,14 +115,16 @@ void LazyBackgroundTaskQueue::ProcessPendingTasks( + return; + } + +- PendingTasksList* tasks = map_it->second.get(); +- for (PendingTasksList::const_iterator it = tasks->begin(); +- it != tasks->end(); ++it) { ++ // Swap the pending tasks to a temporary, to avoid problems if the task ++ // list is modified during processing. ++ PendingTasksList tasks; ++ tasks.swap(*map_it->second); ++ for (PendingTasksList::const_iterator it = tasks.begin(); ++ it != tasks.end(); ++it) { + it->Run(host); + } + +- tasks->clear(); +- pending_tasks_.erase(map_it); ++ pending_tasks_.erase(key); + + // Balance the keepalive in AddPendingTask. Note we don't do this on a + // failure to load, because the keepalive count is reset in that case. diff --git a/srcpkgs/chromium/patches/chromium-gcc47.patch b/srcpkgs/chromium/patches/chromium-gcc47.patch deleted file mode 100644 index 8ac220c58f..0000000000 --- a/srcpkgs/chromium/patches/chromium-gcc47.patch +++ /dev/null @@ -1,52 +0,0 @@ ---- chromium-20.0.1132.47/base/message_pump_libevent.cc.gcc47 2012-02-17 14:52:00.527217354 -0500 -+++ chromium-20.0.1132.47/base/message_pump_libevent.cc 2012-02-17 14:52:10.172135400 -0500 -@@ -6,6 +6,7 @@ - - #include - #include -+#include - - #include "base/auto_reset.h" - #include "base/compiler_specific.h" ---- chromium-20.0.1132.47/chrome/browser/policy/policy_path_parser_linux.cc.gcc47 2012-02-17 15:26:32.086746278 -0500 -+++ chromium-20.0.1132.47/chrome/browser/policy/policy_path_parser_linux.cc 2012-02-17 15:26:53.039544290 -0500 -@@ -3,6 +3,7 @@ - // found in the LICENSE file. - - #include -+#include - - #include "chrome/browser/policy/policy_path_parser.h" - ---- chromium-20.0.1132.47/ipc/ipc_channel.h.gcc47 2012-01-27 03:02:07.000000000 -0500 -+++ chromium-20.0.1132.47/ipc/ipc_channel.h 2012-02-17 14:46:31.821010460 -0500 -@@ -9,6 +9,7 @@ - #include "base/process.h" - #include "ipc/ipc_channel_handle.h" - #include "ipc/ipc_message.h" -+#include - - namespace IPC { - ---- chromium-20.0.1132.47/ipc/ipc_platform_file.cc.gcc47 2012-01-27 03:02:07.000000000 -0500 -+++ chromium-20.0.1132.47/ipc/ipc_platform_file.cc 2012-02-17 14:46:31.824010435 -0500 -@@ -3,10 +3,7 @@ - // found in the LICENSE file. - - #include "ipc/ipc_platform_file.h" -- --#if defined(OS_ANDROID) - #include --#endif - - namespace IPC { - ---- chromium-20.0.1132.47/seccompsandbox/library.h.gcc47 2012-01-27 03:03:35.000000000 -0500 -+++ chromium-20.0.1132.47/seccompsandbox/library.h 2012-02-17 14:46:31.826010418 -0500 -@@ -12,6 +12,7 @@ - #include - #include - #include -+#include - - #include "maps.h" diff --git a/srcpkgs/chromium/patches/chromium-ppapi-r0.patch b/srcpkgs/chromium/patches/chromium-ppapi-r0.patch new file mode 100644 index 0000000000..1a76443dbc --- /dev/null +++ b/srcpkgs/chromium/patches/chromium-ppapi-r0.patch @@ -0,0 +1,11 @@ +--- chromium-21.0.1180.79/ppapi/ppapi_untrusted.gyp.orig 2012-06-12 10:20:16.000000000 +0200 ++++ chromium-21.0.1180.79/ppapi/ppapi_untrusted.gyp 2012-06-12 10:20:52.000000000 +0200 +@@ -80,7 +80,7 @@ + ], + }, + 'conditions': [ +- ['target_arch!="arm"', { ++ ['target_arch!="arm" and disable_glibc==0', { + 'variables': { + 'build_glibc': 1, + # NOTE: Use /lib, not /lib64 here; it is a symbolic link which diff --git a/srcpkgs/chromium/patches/sqlite-3.7.6.3-fix-out-of-scope-memory-reference.patch b/srcpkgs/chromium/patches/sqlite-3.7.6.3-fix-out-of-scope-memory-reference.patch deleted file mode 100644 index d082e6b58e..0000000000 --- a/srcpkgs/chromium/patches/sqlite-3.7.6.3-fix-out-of-scope-memory-reference.patch +++ /dev/null @@ -1,26 +0,0 @@ ---- chromium-20.0.1132.47/third_party/sqlite/src/ext/fts3/fts3_write.c.orig 2012-05-08 21:05:03.000000000 +0300 -+++ chromium-20.0.1132.47/third_party/sqlite/src/ext/fts3/fts3_write.c 2012-05-08 21:07:08.000000000 +0300 -@@ -1238,13 +1238,13 @@ int sqlite3Fts3SegReaderPending( - Fts3SegReader **ppReader /* OUT: SegReader for pending-terms */ - ){ - Fts3SegReader *pReader = 0; /* Fts3SegReader object to return */ -+ Fts3HashElem *pE; /* Iterator variable */ - Fts3HashElem **aElem = 0; /* Array of term hash entries to scan */ - int nElem = 0; /* Size of array at aElem */ - int rc = SQLITE_OK; /* Return Code */ - - if( isPrefix ){ - int nAlloc = 0; /* Size of allocated array at aElem */ -- Fts3HashElem *pE = 0; /* Iterator variable */ - - for(pE=fts3HashFirst(&p->pendingTerms); pE; pE=fts3HashNext(pE)){ - char *zKey = (char *)fts3HashKey(pE); -@@ -1276,7 +1276,7 @@ int sqlite3Fts3SegReaderPending( - } - - }else{ -- Fts3HashElem *pE = fts3HashFindElem(&p->pendingTerms, zTerm, nTerm); -+ pE = fts3HashFindElem(&p->pendingTerms, zTerm, nTerm); - if( pE ){ - aElem = &pE; - nElem = 1; diff --git a/srcpkgs/chromium/template b/srcpkgs/chromium/template index 0b7d9cebc0..97615c98b6 100644 --- a/srcpkgs/chromium/template +++ b/srcpkgs/chromium/template @@ -1,11 +1,11 @@ # Template file for 'chromium' pkgname=chromium -version=20.0.1132.47 -revision=4 +version=21.0.1180.79 +_naclsdkver=20.0.1132.47 +revision=1 wrksrc=$pkgname create_wrksrc=yes create_srcdir=yes -build_requires=27 build_wrksrc=${pkgname}-${version} depends="desktop-file-utils hicolor-icon-theme" makedepends="pkg-config which unzip yasm flex gperf perl python @@ -26,9 +26,9 @@ license="BSD" _url_base="http://commondatastorage.googleapis.com" distfiles=" ${_url_base}/chromium-browser-official/$pkgname-$version.tar.bz2 -${_url_base}/nativeclient-mirror/nacl/nacl_sdk/$version/naclsdk_linux.bz2" +${_url_base}/nativeclient-mirror/nacl/nacl_sdk/${_naclsdkver}/naclsdk_linux.bz2" checksum=" -a34e87ae916c1146b506090d30ac901dbfa88a55db90f8b2250eb29eaca3a1e5 +880971f3958fc586be5ed8ddaa3a8308731c1ae84c3623d9c5fe0ab057bc4ccb ac371e9e8312f01856e892b29c788acfa03cbb79aaabe0b5a3ae0cd2f8399a91" long_desc=" Chromium is an open-source browser project that aims to build a safer, @@ -44,21 +44,14 @@ pre_configure() { # http://code.google.com/p/chromium/issues/detail?id=109527 sed -i 's|glib/gutils.h|glib.h|' ui/base/l10n/l10n_util.cc - #XXX: nacl enabled only for x86_64 (can't build it on i686) - if [ "$XBPS_MACHINE" = "x86_64" ]; then - # Unpack nacl, its a POSIX tar archive compressed with bzip2. - tar xf $wrksrc/naclsdk_linux -C $wrksrc + # Unpack nacl, its a POSIX tar archive compressed with bzip2. + tar xf ${wrksrc}/naclsdk_linux -C ${wrksrc} - ln -s $wrksrc/pepper_${version%%.*}/toolchain/linux_x86_newlib \ - native_client/toolchain/linux_x86_newlib - fi + ln -s ${wrksrc}/pepper_${_naclsdkver%%.*}/toolchain/linux_x86_newlib \ + native_client/toolchain/linux_x86_newlib } do_configure() { - local _nonacl - if [ "$XBPS_MACHINE" = "i686" ]; then - _nonacl="-Ddisable_nacl=1" - fi build/gyp_chromium -f make build/all.gyp --depth=. \ -Dwerror= -Dlinux_sandbox_path=/usr/lib/chromium/chromium-sandbox \ -Drelease_extra_cflags="$CFLAGS" -Dlinux_use_gold_binary=0 \ @@ -70,7 +63,8 @@ do_configure() { -Duse_system_libevent=1 -Duse_system_ssl=0 \ -Duse_system_xdg_utils=1 -Duse_system_vpx=1 \ -Duse_system_speex=1 -Duse_system_libwebp=1 \ - -Duse_hunspell=1 -Duse_system_flac=1 -Duse_gconf=0 ${_nonacl} + -Duse_hunspell=1 -Duse_system_flac=1 \ + -Duse_gconf=0 -Ddisable_glibc=1 } do_build() { @@ -80,29 +74,29 @@ do_build() { do_install() { vinstall out/Release/chrome 755 usr/lib/${pkgname} ${pkgname} vinstall out/Release/chrome_sandbox 4755 usr/lib/${pkgname} ${pkgname}-sandbox - vinstall out/Release/libffmpegsumo.so 755 usr/lib/${pkgname} - if [ "$XBPS_MACHINE" = "x86_64" ]; then - vinstall out/Release/libppGoogleNaClPluginChrome.so 755 \ - usr/lib/${pkgname} - vinstall out/Release/nacl_helper 755 usr/lib/$pkgname - vinstall out/Release/nacl_helper_bootstrap 755 usr/lib/$pkgname - vcopy "out/Release/nacl_irt_*.nexe" usr/lib/${pkgname} - fi - for f in out/Release/*.pak; do - vinstall ${f} 644 usr/lib/${pkgname} - done - for f in out/Release/locales/*.pak; do - vinstall ${f} 644 usr/lib/${pkgname}/locales - done - vcopy out/Release/resources usr/lib/${pkgname} - find ${DESTDIR}/usr/lib/chromium/ -name '*.d' -type f -delete + cp out/Release/{*.pak,libffmpegsumo.so,nacl_helper{,_bootstrap}} \ + out/Release/{libppGoogleNaClPluginChrome.so,nacl_irt_*.nexe} \ + ${DESTDIR}/usr/lib/chromium + + if [ "${XBPS_MACHINE}" = "i686" ]; then + rm ${DESTDIR}/usr/lib/chromium/nacl_irt_x86_64.nexe + fi + + cp -a out/Release/locales ${DESTDIR}/usr/lib/chromium + vinstall out/Release/chrome.1 644 usr/share/man/man1 chromium.1 vinstall ${FILESDIR}/chromium.desktop 644 usr/share/applications - for size in 16 22 24 32 48 64 128 256; do + + for size in 22 24 48 64 128 256; do install -Dm644 "chrome/app/theme/chromium/product_logo_${size}.png" \ ${DESTDIR}/usr/share/icons/hicolor/${size}x${size}/apps/chromium.png done + for size in 16 32; do + install -Dm644 "chrome/app/theme/default_100_percent/chromium/product_logo_${size}.png" \ + ${DESTDIR}/usr/share/icons/hicolor/${size}x${size}/apps/chromium.png + done + vinstall ${FILESDIR}/chromium.sh 755 usr/bin chromium vinstall LICENSE 644 usr/share/licenses/${pkgname} }