[arch-commits] Commit in chromium/trunk (8 files)

Evangelos Foutras foutrelis at archlinux.org
Wed Jan 24 05:17:06 UTC 2018


    Date: Wednesday, January 24, 2018 @ 05:17:04
  Author: foutrelis
Revision: 315352

upgpkg: chromium 64.0.3282.113-1

- New upstream release.
- Disable building with LLD; the resulting binaries are missing RELRO.

Added:
  chromium/trunk/chromium-clang-r2.patch
  chromium/trunk/chromium-memcpy-r0.patch
  chromium/trunk/chromium-use-fromUTF8-for-UnicodeString-construction.patch
Modified:
  chromium/trunk/PKGBUILD
  chromium/trunk/chromium-exclude_unwind_tables.patch
Deleted:
  chromium/trunk/chromium-clang-r1.patch
  chromium/trunk/chromium-disable-SharedArrayBuffer-by-default.patch
  chromium/trunk/chromium-webrtc-r0.patch

------------------------------------------------------------+
 PKGBUILD                                                   |   43 +++---
 chromium-clang-r1.patch                                    |   21 ---
 chromium-clang-r2.patch                                    |   21 +++
 chromium-disable-SharedArrayBuffer-by-default.patch        |   35 -----
 chromium-exclude_unwind_tables.patch                       |   25 +---
 chromium-memcpy-r0.patch                                   |   35 +++++
 chromium-use-fromUTF8-for-UnicodeString-construction.patch |   68 +++++++++++
 chromium-webrtc-r0.patch                                   |   34 -----
 8 files changed, 153 insertions(+), 129 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2018-01-24 01:54:03 UTC (rev 315351)
+++ PKGBUILD	2018-01-24 05:17:04 UTC (rev 315352)
@@ -5,8 +5,8 @@
 # Contributor: Daniel J Griffiths <ghost1227 at archlinux.us>
 
 pkgname=chromium
-pkgver=63.0.3239.132
-pkgrel=3
+pkgver=64.0.3282.113
+pkgrel=1
 _launcher_ver=5
 pkgdesc="A web browser built for speed, simplicity, and security"
 arch=('x86_64')
@@ -15,8 +15,7 @@
 depends=('gtk3' 'nss' 'alsa-lib' 'xdg-utils' 'libxss' 'libcups' 'libgcrypt'
          'ttf-font' 'systemd' 'dbus' 'libpulse' 'pciutils' 'json-glib'
          'desktop-file-utils' 'hicolor-icon-theme')
-makedepends=('python2' 'gperf' 'yasm' 'mesa' 'ninja' 'nodejs' 'git' 'clang'
-             'lld')
+makedepends=('python2' 'gperf' 'yasm' 'mesa' 'ninja' 'nodejs' 'git' 'clang')
 optdepends=('pepper-flash: support for Flash content'
             'kdialog: needed for file dialogs in KDE'
             'gnome-keyring: for storing passwords in GNOME keyring'
@@ -25,22 +24,22 @@
 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-$pkgver.txt::https://chromium.googlesource.com/chromium/src.git/+/$pkgver?format=TEXT
+        chromium-use-fromUTF8-for-UnicodeString-construction.patch
         chromium-omnibox-unescape-fragment.patch
-        chromium-disable-SharedArrayBuffer-by-default.patch
         chromium-skia-harmony.patch
-        chromium-clang-r1.patch
-        chromium-webrtc-r0.patch
+        chromium-memcpy-r0.patch
+        chromium-clang-r2.patch
         chromium-exclude_unwind_tables.patch
         chromium-widevine.patch)
-sha256sums=('84c46c2c42faaa102abe0647ee1213615a2522627124924c2741ddc2161b3d8d'
+sha256sums=('cffa16a5a49bb9c0813306b261b90ab1ec549a9d98fe64731afe28ebf535e16b'
             '4dc3428f2c927955d9ae117f2fb24d098cc6dd67adb760ac9c82b522ec8b0587'
-            'ab330f30c14ea3b5e77976d674304b91cfb02251fe8771cecb0bb4092c7f6b74'
+            'eb542d00801349d6df9b83ae07ddeaf55eddd450a02cf6d4a9b1682092dd8193'
+            'c82c830bac7ab328a76d85fb141e150a17d02d97138a6daa4720a8a8c371a402'
             '814eb2cecb10cb697e24036b08aac41e88d0e38971741f9e946200764e2401ae'
-            '1e040caa43ba34c627fe3750fb44c781a74298d010ef40657ab8deb4780db70b'
             'feca54ab09ac0fc9d0626770a6b899a6ac5a12173c7d0c1005bc3964ec83e7b3'
-            'ab5368a3e3a67fa63b33fefc6788ad5b4a79089ef4db1011a14c3bee9fdf70c6'
-            'bcb2f4588cf5dcf75cde855c7431e94fdcc34bdd68b876a90f65ab9938594562'
-            'e53dc6f259acd39df13874f8a0f440528fae764b859dd71447991a5b1fac7c9c'
+            '455f0029987d9f0532bd9a5250669af5146a9c2b65b776d4a6e2499e8aca7bb4'
+            '4495e8b29dae242c79ffe4beefc5171eb3c7aacb7e9aebfd2d4d69b9d8c958d3'
+            '9478f1ec1a3c53425306cf41c2d0555c215a4f106955d9d6adfff38044530ce8'
             'd6fdcb922e5a7fbe15759d39ccc8ea4225821c44d98054ce0f23f9d1f00c9808')
 
 # Possible replacements are listed in build/linux/unbundle/replace_gn_files.py
@@ -48,15 +47,16 @@
 readonly -A _system_libs=(
   #[ffmpeg]=ffmpeg            # https://crbug.com/731766
   [flac]=flac
+  #[fontconfig]=fontconfig    # Enable for M65
   #[freetype]=freetype2       # Using 'use_system_freetype=true' until M65
   #[harfbuzz-ng]=harfbuzz     # Using 'use_system_harfbuzz=true' until M65
-  #[icu]=icu                  # https://crbug.com/772655 + need M64 for ICU 60
+  [icu]=icu
   [libdrm]=
   [libjpeg]=libjpeg
   #[libpng]=libpng            # https://crbug.com/752403#c10
   #[libvpx]=libvpx            # https://bugs.gentoo.org/611394
   [libwebp]=libwebp
-  [libxml]=libxml2
+  #[libxml]=libxml2           # https://crbug.com/736026
   [libxslt]=libxslt
   [opus]=opus
   [re2]=re2
@@ -100,18 +100,18 @@
   # https://chromium-review.googlesource.com/c/chromium/src/+/712575
   patch -Np1 -i ../chromium-exclude_unwind_tables.patch
 
+  # https://crbug.com/772655
+  patch -Np1 -i ../chromium-use-fromUTF8-for-UnicodeString-construction.patch
+
   # https://crbug.com/789163
   patch -Np1 -i ../chromium-omnibox-unescape-fragment.patch
 
-  # https://crbug.com/798864
-  patch -Np1 -i ../chromium-disable-SharedArrayBuffer-by-default.patch
-
   # https://crbug.com/skia/6663#c10
   patch -Np4 -i ../chromium-skia-harmony.patch
 
   # Fixes from Gentoo
-  patch -Np1 -i ../chromium-clang-r1.patch
-  patch -Np1 -i ../chromium-webrtc-r0.patch
+  patch -Np1 -i ../chromium-memcpy-r0.patch
+  patch -Np1 -i ../chromium-clang-r2.patch
 
   # Remove compiler flags not supported by our system clang
   sed -i \
@@ -118,7 +118,7 @@
     -e '/"-Wno-enum-compare-switch"/d' \
     -e '/"-Wno-null-pointer-arithmetic"/d' \
     -e '/"-Wno-tautological-unsigned-zero-compare"/d' \
-    -e '/"-Wno-tautological-unsigned-enum-zero-compare"/d' \
+    -e '/"-Wno-tautological-constant-compare"/d' \
     build/config/compiler/BUILD.gn
 
   # Use Python 2
@@ -188,6 +188,7 @@
     'use_gconf=false'
     'use_gnome_keyring=false'
     'use_gold=false'
+    'use_lld=false'
     'use_sysroot=false'
     'linux_use_bundled_binutils=false'
     'use_custom_libcxx=false'

Deleted: chromium-clang-r1.patch
===================================================================
--- chromium-clang-r1.patch	2018-01-24 01:54:03 UTC (rev 315351)
+++ chromium-clang-r1.patch	2018-01-24 05:17:04 UTC (rev 315352)
@@ -1,21 +0,0 @@
---- a/build/config/compiler/BUILD.gn.orig	2017-10-04 08:50:15.014675936 +0000
-+++ b/build/config/compiler/BUILD.gn	2017-10-04 08:50:32.831024327 +0000
-@@ -429,18 +429,6 @@
-     cflags += [ "-fcolor-diagnostics" ]
-   }
- 
--  # TODO(hans): Remove this once Clang generates better optimized debug info by
--  # default. https://crbug.com/765793
--  if (is_clang && !is_nacl && current_toolchain == host_toolchain &&
--      target_os != "chromeos") {
--    cflags += [
--      "-Xclang",
--      "-mllvm",
--      "-Xclang",
--      "-instcombine-lower-dbg-declare=1",
--    ]
--  }
--
-   # Print absolute paths in diagnostics. There is no precedent for doing this
-   # on Linux/Mac (GCC doesn't support it), but MSVC does this with /FC and
-   # Windows developers rely on it (crbug.com/636109) so only do this on Windows.

Added: chromium-clang-r2.patch
===================================================================
--- chromium-clang-r2.patch	                        (rev 0)
+++ chromium-clang-r2.patch	2018-01-24 05:17:04 UTC (rev 315352)
@@ -0,0 +1,21 @@
+--- a/build/config/compiler/BUILD.gn
++++ b/build/config/compiler/BUILD.gn
+@@ -422,18 +422,6 @@
+     cflags += [ "-fcolor-diagnostics" ]
+   }
+ 
+-  # TODO(hans): Remove this once Clang generates better optimized debug info by
+-  # default. https://crbug.com/765793
+-  if (is_clang && !is_nacl && current_toolchain == host_toolchain &&
+-      target_os != "chromeos") {
+-    cflags += [
+-      "-Xclang",
+-      "-mllvm",
+-      "-Xclang",
+-      "-instcombine-lower-dbg-declare=0",
+-    ]
+-  }
+-
+   # Print absolute paths in diagnostics. There is no precedent for doing this
+   # on Linux/Mac (GCC doesn't support it), but MSVC does this with /FC and
+   # Windows developers rely on it (crbug.com/636109) so only do this on Windows.

Deleted: chromium-disable-SharedArrayBuffer-by-default.patch
===================================================================
--- chromium-disable-SharedArrayBuffer-by-default.patch	2018-01-24 01:54:03 UTC (rev 315351)
+++ chromium-disable-SharedArrayBuffer-by-default.patch	2018-01-24 05:17:04 UTC (rev 315352)
@@ -1,35 +0,0 @@
-From a354b4ecf2434f2f6460b33031aeaf646edf5e64 Mon Sep 17 00:00:00 2001
-From: Brad Nelson <bradnelson at chromium.org>
-Date: Thu, 4 Jan 2018 00:36:18 -0800
-Subject: [PATCH] Disable SharedArrayBuffer by default.
-
-BUG=chromium:798864
-R=jschuh at chromium.org,binji at chromium.org
-
-Change-Id: I5ebfae41a4b4c7e89faf071e6d009ea3d9ca30d4
-Reviewed-on: https://chromium-review.googlesource.com/849429
-Reviewed-by: Ben Smith <binji at chromium.org>
-Reviewed-by: Justin Schuh <jschuh at chromium.org>
-Reviewed-by: Darin Fisher <darin at chromium.org>
-Commit-Queue: Brad Nelson <bradnelson at chromium.org>
-Cr-Commit-Position: refs/heads/master@{#527460}
----
- content/public/common/content_features.cc | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/content/public/common/content_features.cc b/content/public/common/content_features.cc
-index 847a1af6db7b..9075bd853d0f 100644
---- a/content/public/common/content_features.cc
-+++ b/content/public/common/content_features.cc
-@@ -312,7 +312,7 @@ const base::Feature kServiceWorkerScriptFullCodeCache{
- 
- // http://tc39.github.io/ecmascript_sharedmem/shmem.html
- const base::Feature kSharedArrayBuffer{"SharedArrayBuffer",
--                                       base::FEATURE_ENABLED_BY_DEFAULT};
-+                                       base::FEATURE_DISABLED_BY_DEFAULT};
- 
- // An experiment to require process isolation for the sign-in origin,
- // https://accounts.google.com.  Launch bug: https://crbug.com/739418.
--- 
-2.15.1
-

Modified: chromium-exclude_unwind_tables.patch
===================================================================
--- chromium-exclude_unwind_tables.patch	2018-01-24 01:54:03 UTC (rev 315351)
+++ chromium-exclude_unwind_tables.patch	2018-01-24 05:17:04 UTC (rev 315352)
@@ -1,21 +1,8 @@
-From 1fc37227522ccd314f82ec893ed15c6129296604 Mon Sep 17 00:00:00 2001
-From: Paul Jensen <pauljensen at chromium.org>
-Date: Wed, 11 Oct 2017 08:37:34 -0400
-Subject: [PATCH] Move exclude_unwind_tables back into declare_args
-
-There is desire to adjust this flag manually.
-
-BUG=762629
-R=thakis at chromium.org
-
-Change-Id: I3bd134c19270cd1f729b3ea078674e734493d4ab
----
-
 diff --git a/build/config/compiler/compiler.gni b/build/config/compiler/compiler.gni
 index ad40fd9..50e19a4 100644
 --- a/build/config/compiler/compiler.gni
 +++ b/build/config/compiler/compiler.gni
-@@ -68,18 +68,18 @@
+@@ -68,19 +68,19 @@
  
    # Whether or not we should use position independent code.
    use_pic = true
@@ -25,8 +12,9 @@
 +  # server. For unofficial (e.g. development) builds and non-Chrome branded
 +  # (e.g. Cronet which doesn't use Crashpad, crbug.com/479283) builds it's
 +  # useful to be able to unwind at runtime.
-+  exclude_unwind_tables = (is_chrome_branded && is_official_build) ||
-+                          (is_chromecast && !is_cast_desktop_build && !is_debug)
++  exclude_unwind_tables =
++      (is_chrome_branded && is_official_build) ||
++      (is_chromecast && !is_cast_desktop_build && !is_debug && !is_fuchsia)
  }
  
  assert(!is_cfi || use_thin_lto, "CFI requires ThinLTO")
@@ -36,8 +24,9 @@
 -# For unofficial (e.g. development) builds and non-Chrome branded (e.g. Cronet
 -# which doesn't use Crashpad, crbug.com/479283) builds it's useful to be able
 -# to unwind at runtime.
--exclude_unwind_tables = (is_chrome_branded && is_official_build) ||
--                        (is_chromecast && !is_cast_desktop_build && !is_debug)
+-exclude_unwind_tables =
+-    (is_chrome_branded && is_official_build) ||
+-    (is_chromecast && !is_cast_desktop_build && !is_debug && !is_fuchsia)
 -
  # If true, optimize for size. Does not affect windows builds.
  # Linux & Mac favor speed over size.

Added: chromium-memcpy-r0.patch
===================================================================
--- chromium-memcpy-r0.patch	                        (rev 0)
+++ chromium-memcpy-r0.patch	2018-01-24 05:17:04 UTC (rev 315352)
@@ -0,0 +1,35 @@
+From 4942f56ceb6d60d6f54ebca8e6eba8ba01c278e8 Mon Sep 17 00:00:00 2001
+From: Tomas Popela <tomas.popela at gmail.com>
+Date: Thu, 7 Dec 2017 22:33:34 +0000
+Subject: [PATCH] memcpy used without including string.h
+
+Compiling Chromium with Clang 4.0.1 and using libstdc++ will fail on using
+memcpy without including string.h.
+
+Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.android:android_optional_gpu_tests_rel
+Change-Id: Idced1d5de3baf6b520d4a2d61774120642ead1a8
+Reviewed-on: https://chromium-review.googlesource.com/813737
+Reviewed-by: Thomas Anderson <thomasanderson at chromium.org>
+Reviewed-by: vmpstr <vmpstr at chromium.org>
+Commit-Queue: Thomas Anderson <thomasanderson at chromium.org>
+Cr-Commit-Position: refs/heads/master@{#522579}
+---
+ cc/paint/raw_memory_transfer_cache_entry.cc | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/cc/paint/raw_memory_transfer_cache_entry.cc b/cc/paint/raw_memory_transfer_cache_entry.cc
+index 9e4660c685ee..95ad50b1a338 100644
+--- a/cc/paint/raw_memory_transfer_cache_entry.cc
++++ b/cc/paint/raw_memory_transfer_cache_entry.cc
+@@ -4,6 +4,8 @@
+ 
+ #include "cc/paint/raw_memory_transfer_cache_entry.h"
+ 
++#include <string.h>
++
+ namespace cc {
+ 
+ ClientRawMemoryTransferCacheEntry::ClientRawMemoryTransferCacheEntry(
+-- 
+2.15.1
+

Added: chromium-use-fromUTF8-for-UnicodeString-construction.patch
===================================================================
--- chromium-use-fromUTF8-for-UnicodeString-construction.patch	                        (rev 0)
+++ chromium-use-fromUTF8-for-UnicodeString-construction.patch	2018-01-24 05:17:04 UTC (rev 315352)
@@ -0,0 +1,68 @@
+From e58fa0ba66272c5f28828b15d06c7e42a9882b3b Mon Sep 17 00:00:00 2001
+From: Jungshik Shin <jshin at chromium.org>
+Date: Sat, 16 Dec 2017 04:19:27 +0000
+Subject: [PATCH] Use fromUTF8() for UnicodeString construction from UTF-8
+
+Chrome's copy of ICU is built with U_CHARSET_IS_UTF8=1 so that |char *|
+buffer is treated as UTF-8 when constructing UnicodeString() regardless
+of the default encoding of the current locale on Linux or non-Unicode code
+page on Windows.
+
+However, some Linux distros do not set U_CHARSET_IS_UTF=1 when building
+ICU and Chromium build with system_icu crashes when Chromium is run in
+non-UTF-8 locale (e.g. 'C').
+
+To make Chromium work in a non-UTF-8 locale (which is pretty rare these
+days), use 'icu::UnicodeString::fromUTF8(StringPiece)' instead of
+'icu::UnicodeString(const char*)'.
+
+Bug: 772655
+Test: components_unittests --gtest_filter=*IDN*
+Test: Chromium built with system_icu does not crash in C locale.
+Change-Id: I0daa284ec06b8e83814fc70eb8e9e5c96444ebfa
+Reviewed-on: https://chromium-review.googlesource.com/831247
+Reviewed-by: Peter Kasting <pkasting at chromium.org>
+Commit-Queue: Jungshik Shin <jshin at chromium.org>
+Cr-Commit-Position: refs/heads/master@{#524586}
+---
+ components/url_formatter/idn_spoof_checker.cc | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/components/url_formatter/idn_spoof_checker.cc b/components/url_formatter/idn_spoof_checker.cc
+index a88c5e8f8331..aee748d8a4d5 100644
+--- a/components/url_formatter/idn_spoof_checker.cc
++++ b/components/url_formatter/idn_spoof_checker.cc
+@@ -110,8 +110,8 @@ IDNSpoofChecker::IDNSpoofChecker() {
+ 
+   // These Cyrillic letters look like Latin. A domain label entirely made of
+   // these letters is blocked as a simplified whole-script-spoofable.
+-  cyrillic_letters_latin_alike_ =
+-      icu::UnicodeSet(icu::UnicodeString("[асԁеһіјӏорԛѕԝхуъЬҽпгѵѡ]"), status);
++  cyrillic_letters_latin_alike_ = icu::UnicodeSet(
++      icu::UnicodeString::fromUTF8("[асԁеһіјӏорԛѕԝхуъЬҽпгѵѡ]"), status);
+   cyrillic_letters_latin_alike_.freeze();
+ 
+   cyrillic_letters_ =
+@@ -141,8 +141,8 @@ IDNSpoofChecker::IDNSpoofChecker() {
+   UParseError parse_error;
+   diacritic_remover_.reset(icu::Transliterator::createFromRules(
+       UNICODE_STRING_SIMPLE("DropAcc"),
+-      icu::UnicodeString("::NFD; ::[:Nonspacing Mark:] Remove; ::NFC;"
+-                         " ł > l; ø > o; đ > d;"),
++      icu::UnicodeString::fromUTF8("::NFD; ::[:Nonspacing Mark:] Remove; ::NFC;"
++                                   " ł > l; ø > o; đ > d;"),
+       UTRANS_FORWARD, parse_error, status));
+ 
+   // Supplement the Unicode confusable list by the following mapping.
+@@ -158,7 +158,7 @@ IDNSpoofChecker::IDNSpoofChecker() {
+   //   - U+0D1F (ട) => s
+   extra_confusable_mapper_.reset(icu::Transliterator::createFromRules(
+       UNICODE_STRING_SIMPLE("ExtraConf"),
+-      icu::UnicodeString(
++      icu::UnicodeString::fromUTF8(
+           "ӏ > l; [кĸκ] > k; п > n; [ƅь] > b; в > b; м > m; н > h; "
+           "т > t; [шщ] > w; ട > s;"),
+       UTRANS_FORWARD, parse_error, status));
+-- 
+2.15.1
+

Deleted: chromium-webrtc-r0.patch
===================================================================
--- chromium-webrtc-r0.patch	2018-01-24 01:54:03 UTC (rev 315351)
+++ chromium-webrtc-r0.patch	2018-01-24 05:17:04 UTC (rev 315352)
@@ -1,34 +0,0 @@
-From 7f90e2cceda0458cf56026eb6ccffb961a47804b Mon Sep 17 00:00:00 2001
-From: Raphael Kubo da Costa <raphael.kubo.da.costa at intel.com>
-Date: Fri, 13 Oct 2017 15:49:32 +0200
-Subject: [PATCH] IWYU: Include math.h for round(3).
-
-math.h was being implicitly included, which can break the build with
-alternative libc implementations.
-
-Bug: None
-Change-Id: I969b320b65d0f44abb33d3e1036cfbcb859a4952
-Reviewed-on: https://webrtc-review.googlesource.com/9384
-Reviewed-by: Tommi <tommi at webrtc.org>
-Commit-Queue: Raphael Kubo da Costa (rakuco) <raphael.kubo.da.costa at intel.com>
-Cr-Commit-Position: refs/heads/master@{#20292}
----
- p2p/base/port.cc | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/p2p/base/port.cc b/p2p/base/port.cc
-index a1b478d11..81aa0aadb 100644
---- a/third_party/webrtc/p2p/base/port.cc
-+++ b/third_party/webrtc/p2p/base/port.cc
-@@ -10,6 +10,8 @@
- 
- #include "p2p/base/port.h"
- 
-+#include <math.h>
-+
- #include <algorithm>
- #include <vector>
- 
--- 
-2.15.0.rc2
-



More information about the arch-commits mailing list