commit:     c72212ddb52e6125bf1ab29fb3571dbe888cef9c
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Tue Nov  8 05:46:11 2016 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Tue Nov  8 05:47:23 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c72212dd

www-client/chromium: beta channel bump (55.0.2883.35)

Also fix build failure with ICU 58.

Bug: https://bugs.gentoo.org/599158
Package-Manager: portage-2.3.2_p5

 www-client/chromium/Manifest                       |   2 +-
 ...2883.21.ebuild => chromium-55.0.2883.35.ebuild} |   1 +
 www-client/chromium/chromium-56.0.2897.0.ebuild    |   1 +
 www-client/chromium/files/chromium-icu-58.patch    | 136 +++++++++++++++++++++
 4 files changed, 139 insertions(+), 1 deletion(-)

diff --git a/www-client/chromium/Manifest b/www-client/chromium/Manifest
index c0848e1..9f5704e 100644
--- a/www-client/chromium/Manifest
+++ b/www-client/chromium/Manifest
@@ -1,4 +1,4 @@
 DIST chromium-54.0.2840.59.tar.xz 479763932 SHA256 
df89c284b0109566acc6a5a1a84d94a5ab0509cc3a86a31299a50328991edcde SHA512 
f0b615a2e7dd667c8959f8ce501035a69e7ce852f04ae3023677d933025a56cbc7e1c5f4e85f6e790236ac61cfbd5df7290ed5da74292ee40ebbd89e75fb159f
 WHIRLPOOL 
a719ddf51cce89bb445bed1cfa694bf5c49a67455b1ed495363920303ba4337ae81d660c7fa613653f84e1cefb934d54640ea6727b95e0ab4451517d3db83299
-DIST chromium-55.0.2883.21.tar.xz 510946676 SHA256 
32edbf5b425ed866128204465be13d65cb18edb3b5f5e21e68fb528498b7b2ad SHA512 
e2d852e8bbadd3060367397844972b38f55913e676dfa7fd80e256e7e4edc05e16670c9645b2e250ef4be3507b9e146d8f373932bd6e62e991be079e4f7fdf67
 WHIRLPOOL 
98b307b83c196e111598875b7716065cc9c27c3e1b612bf6c3f7e49c7a44a9caab650b72d7c2bf9bd8bcf961666ae49b42979a9cf8ec151f6d3345303d8d190b
 DIST chromium-55.0.2883.28.tar.xz 511010052 SHA256 
e09f3c69fc3937da9a4ef6f9dfb7eda8364bbcf17a358229ee7245544e548ae2 SHA512 
9fc5bce0d154e6c6e211afee596acd179337354a257b5aab8c089d822132eb97ac307d33a9e91201e76218b3504431c02762c9d5e96efcad11f79d0f6adeaf27
 WHIRLPOOL 
7e774b4a76909e6f6402e5dfdcd71c3d8a1e1b0459a2f5be670761376c7311a502d1d8659c965925b1f288c5f6cfa81cc263dc20e78343684bc4031fd0b6f8dc
+DIST chromium-55.0.2883.35.tar.xz 511169840 SHA256 
fa296cf4135576dcb70384264614e520db101e63f6532dab2c909e6fa7454985 SHA512 
f3a9e9eecfec76517a20db6fbd5d45c6d390fea62cbc19c4b67684c556018ac9e6d247395ca1c067a71dc26faab25bd312bae62a6fafa2bf9c15e5a25857c361
 WHIRLPOOL 
a659cf280bec4c68c1f41fdd59c6931e7798831406078a04623f5a6362da0bfbe05d848e23b462d794d2bfbb49e3e233c2513c1687effceb488480cbbd7f9f19
 DIST chromium-56.0.2897.0.tar.xz 512048692 SHA256 
a91e43b3747d22192b4712bb59db64cc90d3dbb75716fe1d3ca5dd9c16f9f40b SHA512 
101b803ded07767c92e938a7b31444ca984208ea28a6005ebd9895f1255cd98ffa999ba9b0ce2ab159a7708a739b62a4ebbdcd3d4bac22ccb345433c0abad9e7
 WHIRLPOOL 
0fd43cb2a8ef5604c22971f24f1aed9cfa61f0e562f2fb15b2a42e8d03fefda3b14f728bb7eda27d8f44f5595f58f0739091a80067cfe652ad13d4fdf8bde63c

diff --git a/www-client/chromium/chromium-55.0.2883.21.ebuild 
b/www-client/chromium/chromium-55.0.2883.35.ebuild
similarity index 99%
rename from www-client/chromium/chromium-55.0.2883.21.ebuild
rename to www-client/chromium/chromium-55.0.2883.35.ebuild
index b925178..2673812 100644
--- a/www-client/chromium/chromium-55.0.2883.21.ebuild
+++ b/www-client/chromium/chromium-55.0.2883.35.ebuild
@@ -167,6 +167,7 @@ PATCHES=(
        "${FILESDIR}/${PN}-widevine-r1.patch"
        "${FILESDIR}/${PN}-54-ffmpeg2compat.patch"
        "${FILESDIR}/${PN}-gn-bootstrap-ld.patch"
+       "${FILESDIR}/${PN}-icu-58.patch"
 )
 
 pkg_pretend() {

diff --git a/www-client/chromium/chromium-56.0.2897.0.ebuild 
b/www-client/chromium/chromium-56.0.2897.0.ebuild
index 9548dbb..b55b907 100644
--- a/www-client/chromium/chromium-56.0.2897.0.ebuild
+++ b/www-client/chromium/chromium-56.0.2897.0.ebuild
@@ -163,6 +163,7 @@ PATCHES=(
        "${FILESDIR}/${PN}-widevine-r1.patch"
        "${FILESDIR}/${PN}-54-ffmpeg2compat.patch"
        "${FILESDIR}/${PN}-gn-r8.patch"
+       "${FILESDIR}/${PN}-icu-58.patch"
 )
 
 pkg_pretend() {

diff --git a/www-client/chromium/files/chromium-icu-58.patch 
b/www-client/chromium/files/chromium-icu-58.patch
new file mode 100644
index 00000000..2718f1f
--- /dev/null
+++ b/www-client/chromium/files/chromium-icu-58.patch
@@ -0,0 +1,136 @@
+From 424584b4984bde7c831f42e9fb47f1ad583a1c46 Mon Sep 17 00:00:00 2001
+From: jshin <js...@chromium.org>
+Date: Fri, 21 Oct 2016 01:15:50 -0700
+Subject: [PATCH] Update aspirational_scripts per Unicode 9
+
+This is a preparation to update ICU to 58.1.
+Without this change, ICU update CL cannot be tested on
+trybots because a compile will fail due to '#error' checking
+if ICU version is less than 58.
+
+BUG=637001
+TEST=None
+TBR=pkast...@chromium.org
+
+Review-Url: https://chromiumcodereview.appspot.com/2436113003
+Cr-Commit-Position: refs/heads/master@{#426749}
+---
+ components/url_formatter/url_formatter.cc | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/components/url_formatter/url_formatter.cc 
b/components/url_formatter/url_formatter.cc
+index 4455db3..2b82c0c 100644
+--- a/components/url_formatter/url_formatter.cc
++++ b/components/url_formatter/url_formatter.cc
+@@ -428,9 +428,9 @@ void IDNSpoofChecker::SetAllowedUnicodeSet(UErrorCode* 
status) {
+   // section at
+   // http://www.unicode.org/Public/security/latest/xidmodifications.txt) are
+   // are added to the allowed set. The list has to be updated when a new
+-  // version of Unicode is released. The current version is 8.0.0 and ICU 58
+-  // will have Unicode 9.0 data.
+-#if U_ICU_VERSION_MAJOR_NUM < 58
++  // version of Unicode is released. The current version is 9.0.0 and ICU 60
++  // will have Unicode 10.0 data.
++#if U_ICU_VERSION_MAJOR_NUM < 60
+   const icu::UnicodeSet aspirational_scripts(
+       icu::UnicodeString(
+           // Unified Canadian Syllabics
+@@ -444,13 +444,13 @@ void IDNSpoofChecker::SetAllowedUnicodeSet(UErrorCode* 
status) {
+           // Yi
+           "\\uA000-\\uA48C"
+           // Miao
+-          "\\U00016F00-\\U00016F44\\U00016F50-\\U00016F7F"
++          "\\U00016F00-\\U00016F44\\U00016F50-\\U00016F7E"
+           "\\U00016F8F-\\U00016F9F]",
+           -1, US_INV),
+       *status);
+   allowed_set.addAll(aspirational_scripts);
+ #else
+-#error "Update aspirational_scripts per Unicode 9.0"
++#error "Update aspirational_scripts per Unicode 10.0"
+ #endif
+ 
+   // U+0338 is included in the recommended set, while U+05F4 and U+2027 are in
+-- 
+2.10.2
+
+From e60b571faa3f14dd9119a6792dccf12f8bf80192 Mon Sep 17 00:00:00 2001
+From: jshin <js...@chromium.org>
+Date: Fri, 21 Oct 2016 12:20:05 -0700
+Subject: [PATCH] Prepare to upgrade ICU to 58 part 2
+
+U_LB_COUNT is assumed to be 40 in Blink line breaking code, but it's
+43 in ICU 58/Unicode 9.
+
+Three new classes (Emoji Base, Emoji Modifier, and ZWJ) should behave
+identically whether or not 'word-break: break-all' is in effect.
+
+BUG=637001
+TEST=TextBreakIterator.cpp is compiled without an error with ICU 58.
+R=ko...@chromium.org
+CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel
+
+Review-Url: https://chromiumcodereview.appspot.com/2440923002
+Cr-Commit-Position: refs/heads/master@{#426860}
+---
+ .../WebKit/Source/platform/text/TextBreakIterator.cpp    | 16 ++++++++++++----
+ 1 file changed, 12 insertions(+), 4 deletions(-)
+
+diff --git a/third_party/WebKit/Source/platform/text/TextBreakIterator.cpp 
b/third_party/WebKit/Source/platform/text/TextBreakIterator.cpp
+index 568dc0a..36121eb 100644
+--- a/third_party/WebKit/Source/platform/text/TextBreakIterator.cpp
++++ b/third_party/WebKit/Source/platform/text/TextBreakIterator.cpp
+@@ -28,6 +28,9 @@
+ #include "wtf/StdLibExtras.h"
+ #include "wtf/text/CharacterNames.h"
+ 
++#include <unicode/uchar.h>
++#include <unicode/uvernum.h>
++
+ namespace blink {
+ 
+ unsigned numGraphemeClusters(const String& string) {
+@@ -129,6 +132,11 @@ static const unsigned char 
asciiLineBreakTable[][(asciiLineBreakTableLastChar -
+ };
+ // clang-format on
+ 
++#if U_ICU_VERSION_MAJOR_NUM >= 58
++#define BA_LB_COUNT (U_LB_COUNT - 3)
++#else
++#define BA_LB_COUNT U_LB_COUNT
++#endif
+ // Line breaking table for CSS word-break: break-all. This table differs from
+ // asciiLineBreakTable in:
+ // - Indices are Line Breaking Classes defined in UAX#14 Unicode Line Breaking
+@@ -136,7 +144,7 @@ static const unsigned char 
asciiLineBreakTable[][(asciiLineBreakTableLastChar -
+ // - 1 indicates additional break opportunities. 0 indicates to fallback to
+ //   normal line break, not "prohibit break."
+ // clang-format off
+-static const unsigned char breakAllLineBreakClassTable[][U_LB_COUNT / 8 + 1] 
= {
++static const unsigned char breakAllLineBreakClassTable[][BA_LB_COUNT / 8 + 1] 
= {
+     // XX AI AL B2 BA BB BK CB    CL CM CR EX GL HY ID IN    IS LF NS NU OP 
PO PR QU    SA SG SP SY ZW NL WJ H2    H3 JL JT JV CP CJ HL RI
+     { B(0, 0, 0, 0, 0, 0, 0, 0), B(0, 0, 0, 0, 0, 0, 0, 0), B(0, 0, 0, 0, 0, 
0, 0, 0), B(0, 0, 0, 0, 0, 0, 0, 0), B(0, 0, 0, 0, 0, 0, 0, 0) }, // XX
+     { B(0, 1, 1, 0, 1, 0, 0, 0), B(0, 0, 0, 0, 0, 1, 0, 0), B(0, 0, 0, 1, 1, 
0, 1, 0), B(1, 0, 0, 0, 0, 0, 0, 0), B(0, 0, 0, 0, 0, 0, 1, 0) }, // AI
+@@ -190,7 +198,7 @@ static_assert(WTF_ARRAY_LENGTH(asciiLineBreakTable) ==
+                   asciiLineBreakTableLastChar - asciiLineBreakTableFirstChar +
+                       1,
+               "asciiLineBreakTable should be consistent");
+-static_assert(WTF_ARRAY_LENGTH(breakAllLineBreakClassTable) == U_LB_COUNT,
++static_assert(WTF_ARRAY_LENGTH(breakAllLineBreakClassTable) == BA_LB_COUNT,
+               "breakAllLineBreakClassTable should be consistent");
+ 
+ static inline bool shouldBreakAfter(UChar lastCh, UChar ch, UChar nextCh) {
+@@ -226,8 +234,8 @@ static inline ULineBreak lineBreakPropertyValue(UChar 
lastCh, UChar ch) {
+ 
+ static inline bool shouldBreakAfterBreakAll(ULineBreak lastLineBreak,
+                                             ULineBreak lineBreak) {
+-  if (lineBreak >= 0 && lineBreak < U_LB_COUNT && lastLineBreak >= 0 &&
+-      lastLineBreak < U_LB_COUNT) {
++  if (lineBreak >= 0 && lineBreak < BA_LB_COUNT && lastLineBreak >= 0 &&
++      lastLineBreak < BA_LB_COUNT) {
+     const unsigned char* tableRow = 
breakAllLineBreakClassTable[lastLineBreak];
+     return tableRow[lineBreak / 8] & (1 << (lineBreak % 8));
+   }
+-- 
+2.10.2
+

Reply via email to