Date: Thursday, January 26, 2017 @ 19:13:58 Author: foutrelis Revision: 287523
upgpkg: chromium 56.0.2924.76-1 New upstream release. Added: chromium/trunk/chromium-glib-2.24.patch Modified: chromium/trunk/PKGBUILD Deleted: chromium/trunk/chromium-52.0.2743.116-unset-madv_free.patch chromium/trunk/chromium-icu58.patch ----------------------------------------------+ PKGBUILD | 20 +-- chromium-52.0.2743.116-unset-madv_free.patch | 15 -- chromium-glib-2.24.patch | 15 ++ chromium-icu58.patch | 136 ------------------------- 4 files changed, 22 insertions(+), 164 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2017-01-26 17:44:53 UTC (rev 287522) +++ PKGBUILD 2017-01-26 19:13:58 UTC (rev 287523) @@ -24,7 +24,7 @@ ) pkgname=chromium -pkgver=55.0.2883.87 +pkgver=56.0.2924.76 pkgrel=1 _launcher_ver=3 pkgdesc="The open-source project behind Google Chrome, an attempt at creating a safer, faster, and more stable browser" @@ -35,7 +35,7 @@ 'ttf-font' 'systemd' 'dbus' 'libpulse' 'perl' 'perl-file-basedir' 'pciutils' 'desktop-file-utils' 'hicolor-icon-theme') depends+=(${_system_libs[@]}) -makedepends=('python2' 'gperf' 'yasm' 'mesa' 'ninja' 'git') +makedepends=('gtk3' 'python2' 'gperf' 'yasm' 'mesa' 'ninja' 'git') optdepends=('kdialog: needed for file dialogs in KDE' 'gnome-keyring: for storing passwords in GNOME keyring' 'kwallet: for storing passwords in KWallet') @@ -43,16 +43,14 @@ source=(https://commondatastorage.googleapis.com/chromium-browser-official/$pkgname-$pkgver.tar.xz chromium-launcher-$_launcher_ver.tar.gz::https://github.com/foutrelis/chromium-launcher/archive/v$_launcher_ver.tar.gz chromium.desktop - chromium-52.0.2743.116-unset-madv_free.patch + chromium-glib-2.24.patch chromium-system-ffmpeg-r4.patch - chromium-icu58.patch chromium-widevine.patch) -sha256sums=('e81bd3140d9c84dfee04d9a94686dfe6a20ae79475d84f17154c5536dcb81a58' +sha256sums=('cfb08e226b9c16ad887eb96d715a9cc4ab097d1a79e2e68c8749a7a4164b3c38' '8b01fb4efe58146279858a754d90b49e5a38c9a0b36a1f84cbb7d12f92b84c28' '028a748a5c275de9b8f776f97909f999a8583a4b77fd1cd600b4fc5c0c3e91e9' - '3b3aa9e28f29e6f539ed1c7832e79463b13128863a02e9c6fecd16c30d61c227' + '6953651c002efe7fca8cda3143e963037ed38a0a4bc7ccb79304637c45340047' 'e3c474dbf3822a0be50695683bd8a2c9dfc82d41c1524a20b4581883c0c88986' - 'fad964da0295a6a7b4393778e717ebdfd37dec33fe78beb2c639abd3973deb7a' 'd6fdcb922e5a7fbe15759d39ccc8ea4225821c44d98054ce0f23f9d1f00c9808') # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) @@ -72,14 +70,10 @@ sed "s/@WIDEVINE_VERSION@/Pinkie Pie/" ../chromium-widevine.patch | patch -Np1 - # Build fixes from Gentoo + # Fixes from Gentoo patch -Np1 -i ../chromium-system-ffmpeg-r4.patch - patch -Np1 -i ../chromium-icu58.patch + patch -Np1 -i ../chromium-glib-2.24.patch - # Disable MADV_FREE (if set by glibc) - # https://bugzilla.redhat.com/show_bug.cgi?id=1361157 - patch -Np1 -i ../chromium-52.0.2743.116-unset-madv_free.patch - # Work around bug in blink in which GCC 6 optimizes away null pointer checks # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=833524 # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68853#c2 Deleted: chromium-52.0.2743.116-unset-madv_free.patch =================================================================== --- chromium-52.0.2743.116-unset-madv_free.patch 2017-01-26 17:44:53 UTC (rev 287522) +++ chromium-52.0.2743.116-unset-madv_free.patch 2017-01-26 19:13:58 UTC (rev 287523) @@ -1,15 +0,0 @@ -diff -up chromium-52.0.2743.116/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp.madv_free chromium-52.0.2743.116/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp ---- chromium-52.0.2743.116/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp.madv_free 2016-08-15 13:07:29.279655676 -0400 -+++ chromium-52.0.2743.116/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp 2016-08-15 13:08:38.447317416 -0400 -@@ -41,6 +41,11 @@ - #include <errno.h> - #include <sys/mman.h> - -+#if OS(LINUX) && defined(MADV_FREE) -+// Added in Linux 4.5, but it breaks the sandbox. -+#undef MADV_FREE -+#endif -+ - #ifndef MADV_FREE - #define MADV_FREE MADV_DONTNEED - #endif Added: chromium-glib-2.24.patch =================================================================== --- chromium-glib-2.24.patch (rev 0) +++ chromium-glib-2.24.patch 2017-01-26 19:13:58 UTC (rev 287523) @@ -0,0 +1,15 @@ +--- a/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp.orig 2017-01-05 20:50:56.329369189 +0000 ++++ b/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp 2017-01-05 20:51:32.926099779 +0000 +@@ -242,6 +242,12 @@ + ASSERT(!(len & kSystemPageOffsetMask)); + #if OS(POSIX) + int ret = madvise(addr, len, MADV_FREE); ++ if (ret != 0 && errno == EINVAL) { ++ // MADV_FREE only works on Linux 4.5+ . If request failed, ++ // retry with older MADV_DONTNEED . Note that MADV_FREE ++ // being defined at compile time doesn't imply runtime support. ++ ret = madvise(addr, len, MADV_DONTNEED); ++ } + RELEASE_ASSERT(!ret); + #else + setSystemPagesInaccessible(addr, len); Deleted: chromium-icu58.patch =================================================================== --- chromium-icu58.patch 2017-01-26 17:44:53 UTC (rev 287522) +++ chromium-icu58.patch 2017-01-26 19:13:58 UTC (rev 287523) @@ -1,136 +0,0 @@ -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 -