[arch-commits] Commit in electron/trunk (21 files)

Nicola Squartini tensor5 at archlinux.org
Thu Jun 7 12:47:55 UTC 2018


    Date: Thursday, June 7, 2018 @ 12:47:54
  Author: tensor5
Revision: 341829

upgpkg: electron 2.0.2-1

Added:
  electron/trunk/chromium-atk-r1.patch
  electron/trunk/chromium-gn-bootstrap-r14.patch
  electron/trunk/libchromiumcontent-fix-v8-patches.patch
Modified:
  electron/trunk/PKGBUILD
  electron/trunk/chromium-include-functional.patch
  electron/trunk/chromium-use-system-ffmpeg.patch
  electron/trunk/default_app-icon.patch
  electron/trunk/dont-use-sysroot.patch
  electron/trunk/gyp-no-rpath.patch
  electron/trunk/libchromiumcontent-settings.patch
  electron/trunk/libchromiumcontent-static-library-only.patch
  electron/trunk/libchromiumcontent-use-system-tools.patch
  electron/trunk/use-system-ffmpeg.patch
  electron/trunk/use-system-libraries-in-node.patch
Deleted:
  electron/trunk/allow-i686.patch
  electron/trunk/chromium-dmabuf.patch
  electron/trunk/gtk3-menu-bar.patch
  electron/trunk/gtk3-message-box.patch
  electron/trunk/gtk3-warnings.patch
  electron/trunk/libchromiumcontent-no-depot_tools.patch
  electron/trunk/use-system-ninja.patch

----------------------------------------------+
 PKGBUILD                                     |   95 ++--
 allow-i686.patch                             |   14 
 chromium-atk-r1.patch                        |   11 
 chromium-dmabuf.patch                        |   86 ----
 chromium-gn-bootstrap-r14.patch              |   27 +
 chromium-include-functional.patch            |    2 
 chromium-use-system-ffmpeg.patch             |   51 --
 default_app-icon.patch                       |    2 
 dont-use-sysroot.patch                       |    4 
 gtk3-menu-bar.patch                          |   91 ----
 gtk3-message-box.patch                       |   11 
 gtk3-warnings.patch                          |   65 ---
 gyp-no-rpath.patch                           |    2 
 libchromiumcontent-fix-v8-patches.patch      |  536 +++++++++++++++++++++++++
 libchromiumcontent-no-depot_tools.patch      |   30 -
 libchromiumcontent-settings.patch            |   96 ----
 libchromiumcontent-static-library-only.patch |   33 -
 libchromiumcontent-use-system-tools.patch    |   38 -
 use-system-ffmpeg.patch                      |    4 
 use-system-libraries-in-node.patch           |    4 
 use-system-ninja.patch                       |   11 
 21 files changed, 676 insertions(+), 537 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2018-06-07 12:40:11 UTC (rev 341828)
+++ PKGBUILD	2018-06-07 12:47:54 UTC (rev 341829)
@@ -1,19 +1,18 @@
 # $Id$
 # Maintainer: Nicola Squartini <tensor5 at gmail.com>
 
-_chromiumver=59.0.3071.115
-_freetype_rev=5a3490e054bda8a318ebde482
+_chromiumver=61.0.3163.100
 pkgname=electron
-pkgver=1.8.4
-pkgrel=2
+pkgver=2.0.2
+pkgrel=1
 pkgdesc='Build cross platform desktop apps with web technologies'
 arch=('x86_64')
 url='http://electron.atom.io/'
 license=('MIT' 'custom')
-depends=('c-ares' 'ffmpeg' 'gtk3' 'http-parser' 'libevent' 'libxss' 'minizip'
-         'nss' 're2' 'snappy')
-makedepends=('clang' 'gconf' 'git' 'gperf' 'gtk2' 'harfbuzz-icu' 'jsoncpp'
-             'libexif' 'libgnome-keyring' 'libnotify' 'llvm' 'ninja' 'npm'
+depends=('c-ares' 'ffmpeg' 'gtk3' 'http-parser' 'libevent' 'libvpx' 'libxslt'
+         'libxss' 'minizip' 'nss' 're2' 'snappy')
+makedepends=('clang' 'gconf' 'git' 'gperf' 'harfbuzz-icu' 'jsoncpp' 'libexif'
+             'libgnome-keyring' 'libnotify' 'lld' 'llvm' 'ninja' 'npm'
              'pciutils' 'python2' 'wget' 'yasm')
 optdepends=('gvfs: file deletion support (gvfs-trash)'
             'kde-cli-tools: file deletion support (kioclient5)'
@@ -31,7 +30,6 @@
         'pdf_viewer::git+https://github.com/electron/pdf-viewer.git'
         'git+https://github.com/kennethreitz/requests.git'
         'google-breakpad::git+https://chromium.googlesource.com/breakpad/breakpad/src'
-        "chromium-freetype2::git+https://chromium.googlesource.com/chromium/src/third_party/freetype2#commit=${_freetype_rev}"
         "https://commondatastorage.googleapis.com/chromium-browser-official/chromium-${_chromiumver}.tar.xz"
         'electron.desktop'
         'default_app-icon.patch'
@@ -38,21 +36,18 @@
         'dont-bootstrap-libchromiumcontent.patch'
         'dont-update-submodules.patch'
         'dont-use-sysroot.patch'
-        'gtk3-menu-bar.patch'
-        'gtk3-message-box.patch'
-        'gtk3-warnings.patch'
         'no-whole-archive.patch'
         'use-system-libraries-in-node.patch'
-        'use-system-ninja.patch'
         'use-system-ffmpeg.patch'
         'breakpad-glibc2.26.patch'
         'gyp-no-rpath.patch'
-        'libchromiumcontent-no-depot_tools.patch'
+        'libchromiumcontent-fix-v8-patches.patch'
         'libchromiumcontent-settings.patch'
         'libchromiumcontent-sort-filenames.patch'
         'libchromiumcontent-static-library-only.patch'
         'libchromiumcontent-use-system-tools.patch'
-        'chromium-dmabuf.patch'
+        'chromium-atk-r1.patch'
+        'chromium-gn-bootstrap-r14.patch'
         'chromium-include-functional.patch'
         'chromium-use-system-ffmpeg.patch'
         'chromium-use-system-minizip.patch'
@@ -70,30 +65,26 @@
             'SKIP'
             'SKIP'
             'SKIP'
-            'SKIP'
-            'f30d54dedd43ba11321db1bcd443bb44a550ffca24ebb579727b98a15b6a3f6f598f20f0ef0889eab6820e6faacba0aa567927fd36d5ed0e61d7bd4f760e9993'
+            '4dfd3a493ceb7c605eeab6f387541273d529e8b935a6104927e34836469aedcfcbb4a1154591585621d5c2e842e68701d32328acba842f840a20498822165f78'
             '613317b8c63efb0ddfe9112b56aa9714b536082144c0903d5b97351c3396b3c9eedeb44b6da72b85cbfd1bdd16cba30c512ac93c8ca6ffb04cad283ef29958b2'
-            'a9b4d25987171c170ad2c6467c45d1f27c6dfba71c4d981564f6d0a683acd54c17e415314c35a44560ab6428a2ff98321caec0d2a07a9c69bddd580c42f6eb48'
+            'bfc11bd13197834d5ffec805c26a2e638d90a292f0e1e5f9cbd1f630b2eafeb8b7bc8c3a4051c60cb86024a3106f8a639fb130ce238e8b2a0f7dab4661c9984e'
             'b002bb96d38875876d09ad5ceb76843b306031c470ba24aace6cbc5b8a22774f44b5c0e4a99bf807737e25f57254d14865934694114a9f4551453cc6c560063a'
             '22d2d3605a49a72cf7e12e4f1cdadb6e327a7487eed47eeb04a4213cf6dcc73c47d93cdea85a767a11181debc37e952f5e4685f9fae1debd4a1a1a10ac188e8c'
-            '8661ceff63a7b0140e811d699bb5e37ac9ceeb2def9dc47166c54ab6c225157efdac7226d9a305d2bf50e38c53f2a51a15dcdc25e9e2be86002693ada9d32c9d'
-            '62963c4dbf86624f370aad1ee42d43b7e4f6a0f719d906959ed642b1c0ca9ba397a8ea3923e6c6a4acc38bfb2187642791148dd528bb3b4ddc79f039fa6d8fa5'
-            '4eeb3a757bcf268b9bc7d16ca1efa9fa96d1aa55827766e1ec88d967946412688f4ab88a0ee3fb0870f32fa6ce4dd5cfe92c27a55c86d489e04c5c297d30e6bc'
-            'd6dfadb1c30e0a2f234dedd09a79c4af96aaef976146fdb95989edc6bd019d6e52e127fc9fc119c17e4d3321052f49877c728c52cd2e8d3ca41165c5155b40d3'
+            '1bda751a86a1c07f87e6631469701ebab5b1ce8f4052fcf666e8fc3bc645199a4df47fe7e75aed092ff23e17c2b9c4f286a60c2428fd72d0e6cae7a5d0507de4'
             'e5a21eea33f24e82b250ad903ae9f6f40a71876661391b7bb2b749edb3470e1256ecb06aba0541f4da4cbaf9be2df90eb2b9e588566138fdb63d92a9aca60936'
-            'b1cc501a1d7b2db1c7bd7543e1084a32a7b11e6f2e9c364beefd1a1f0cddb982ea105636ba19226765de44c641afd933d98a2f0ef88674453f5246568858c0cf'
-            'b4a42f274b88f9f97fa409a6c95b0f9896bc86aa342ee24cfc029e4f640c5badf258932eabd1d451571339cc8733796f5770e0b979b7deda5b5ae09deb2e85c8'
-            'd7df784c7ef366dad6d016643f848490177cb77eaa62c7f895898f11310ec766d6e31a34e756670a1ab300f984dc46dfd31ac23e2cae70860dfb1269ea9fab6b'
+            'e1ddaabb8f907917ca4c97531212e573dd1b9dc77a030958f1efd896d178fb6f1af1b678f4de21f5946ff340ffe9b4970ab0bcb4833dbb69b89c51505bc80946'
+            'ab4b9d01bf150120fb3510e181c05df84fc49ee0b9938ef3d5ffc2113bc3d71e14a051edc9e70959698f78950f4adee6a676e1c8a1a56ba6ca337b6aa9188e40'
             '2dd594a07f8ce62a7706a0365d764ab3ee3cc2d050d6ae4460db3152269e84f43516438a4f48f47fc54fe758a70c462baed6b7defa8b2bd277e67cb1bae8da12'
-            'fef435fcae0fcfc5ed7fe66bcdad24565a87493ff133422fa54756ee1c1335d4bfdae7e782d3f72fcd5c0e6c337b7a30fe7fb36a02a3fea1a1d509244d01d636'
-            '03676f682cd2db47aaf53c7e8221c3d19e20d7768e9b6a7cdb2da80674f220c293164ee1ca094b0c494d82cf1ba0e178ed66f41a6af28d266a50a758f95d6185'
-            'f215ed2ddf9410bd31ada3c220de3f9a725c214532e7220ef2542d60b8a30f0cae21edc3dd7e01fdfa7b3aa877023ab446a76b47bc5fff19ec0bb0fa40df730e'
+            'd77a2045f03c1327eb78517028c083e8965297a41d5a81df8c7dac5a8500aa242faa644a38be5d12914b68ba3a0b944c1bfe6dbfd7b88b1a0aeeec1d87a1619a'
+            '79baa5d144733442cd839d7ee195b11b4e8ee19cd77e37c8ca1def18e2ffa30b8e63b8e4e2688944d55cbea048107f0cf209547ea14c49b4585c936249016c43'
+            'c06965d17e772e853c636709d64e4fb6dd863e3dc84435b79455d9077e65a6179f970796bbdc07ee2d4c57a577a159eb6be261c49428a90d7864a875862c711f'
             '8da75b16f3fc39e828b94fe9bf013a2fd180a81a9a34a8511a99e62e8d2a714ced24d94ef643561e0c88c27868d8eaa643e19003cbfa293451fc15dd75f5801f'
-            '9bd56c6dba41ae08cad2435f229bcab7218f82be4a33dbf8dbf7204d839fbf0ba505b8444d3d17083d3260b597e694ead720c5aef9060a21917c3c844ba4ef28'
-            '25e5d1051a11ef3158314b06dcb880fbed93d04a793a2c242fb8f01e867620549924b26abcac657f6edec9b9e3a78f198171a528d2567189df75e0a27f12925a'
-            'acf6a43e89a49fb5d21fa165fe3a6b6a73b766fec05f952d11f48840ccb7c6640c1f946d87fb9b700f330a4eeffbd05346cc97def3de892b700439cad2a8e7bd'
-            '09a910f14c4466a74638af0505dbdbbf586813b0a20506ac15ae375037a1f06f82fea4045350f1e54357dd41fb721061c7cc2f0eea2e3a0439a79466db3875ea'
-            '647525cedf274e191a603cdf60f877cb850be9d08193da965ee38a28907b615e29a46ebb27ae69f49825504743775b6d88266965be89e37f739330d1d3c3f4e0'
+            '01e36513491876769c77c1139a3fdaee6e4996d1daa36bc087f18118923118c88a60cb2d72572a1ab6df1d7d867a9579dd2571e0b67c7ea42324b2c5e1b0815d'
+            '45c9bcc588d8fc5dd5c5fde17ef5114f0c9717c965a7c3009bfa6e79ba6a3fc9a19eab3451b72e5de75535d62391a3e2660f0aab329d7ec137605593915f4010'
+            '5722c571ffc384e0e226342d170e29109bf45761dcd7202b2fe6572795e0a04bd0521b1120eb2247c2a84bed0e63f47a71d25802528992ee4f976b348fb5c8f6'
+            'd297728681538fd6d6d48da4477e6e42b0ac1585a243dca60c0d9896387a1bf17770aa70966344c8d3551b774cbea6d6acbeaa0dbbfc3c17367dda5daa912297'
+            '2906e565804cb42ef3370521683d01e4cb083f0c7d5b02692101afb56616838b3dda8d05d43d0942ea3b7b7528985a1470719574356d37416427b56409c52a7f'
+            'd549c33d3499737f7d4dd2f87b8f08e90687d107248d9729676b7a0ea8562df3dd0430aa6776e4cb6ca793c2d93a726ce7b8da22703eef3f91aeb42b7e852240'
             'eace29bd99f7167ac2e5b7499560ec7e6c205eeee8fd0adef8cc7de3cef5058f9852dd2cc20946d637ed479d25b270c35d52de6f104f41000faa36dc018f63aa'
             '5552e8918462f6c3a4e1baef3c22b57d70c732766945ea0b39f63df7d7b8fca9646f1f9b28b0528fa586799842c949298fc97e1041875da0ca1aacff046f6c9b')
 
@@ -103,11 +94,11 @@
 #              'icu'
               'libevent'
               'libjpeg'
-              'libpng'
-#              'libvpx'
+#              'libpng'
+              'libvpx'
               'libwebp'
-#              'libxml'
-#              'libxslt'
+              'libxml'
+              'libxslt'
               're2'
               'snappy'
               'yasm'
@@ -118,11 +109,7 @@
   cd "${srcdir}"/electron
 
   patch -Np1 -i "${srcdir}"/default_app-icon.patch  # Icon from .desktop file
-  patch -Np1 -i "${srcdir}"/gtk3-menu-bar.patch
-  patch -Np1 -i "${srcdir}"/gtk3-message-box.patch
-  patch -Np1 -i "${srcdir}"/gtk3-warnings.patch
   patch -Np1 -i "${srcdir}"/use-system-libraries-in-node.patch
-  patch -Np1 -i "${srcdir}"/use-system-ninja.patch
   patch -Np1 -i "${srcdir}"/use-system-ffmpeg.patch
   patch -Np1 -i "${srcdir}"/dont-update-submodules.patch
   patch -Np1 -i "${srcdir}"/dont-use-sysroot.patch
@@ -130,8 +117,7 @@
   patch -Np1 -i "${srcdir}"/no-whole-archive.patch
 
   # Add extra libraries for unbundling
-  sed -e "s/'-lexpat',/'-lexpat', '<\!@(pkg-config --libs-only-l libavcodec libavformat libavutil libevent flac harfbuzz-icu jsoncpp minizip libpng libpulse libwebpdemux)', '-ljpeg', '-lre2', '-lsnappy', '-latomic',/" \
-      -e 's/gtk+-2\.0/gtk+-3.0/' \
+  sed -e "s/'-lexpat',/'-lexpat', '<\!@(pkg-config --libs-only-l libavcodec libavformat libavutil libevent flac harfbuzz-icu jsoncpp minizip libpulse vpx libwebpdemux libwebpmux libxml-2.0 libxslt zlib)', '-ljpeg', '-lre2', '-lsnappy', '-latomic',/" \
       -i brightray/brightray.gyp
 
   mkdir -p "${srcdir}"/python2-path
@@ -159,7 +145,7 @@
   patch -Np1 -i "${srcdir}"/gyp-no-rpath.patch
 
   cd "${srcdir}"/electron/vendor/libchromiumcontent
-  patch -Np1 -i "${srcdir}"/libchromiumcontent-no-depot_tools.patch
+  patch -Np1 -i "${srcdir}"/libchromiumcontent-fix-v8-patches.patch
   patch -Np1 -i "${srcdir}"/libchromiumcontent-settings.patch
   patch -Np1 -i "${srcdir}"/libchromiumcontent-sort-filenames.patch  # deterministic build
   patch -Np1 -i "${srcdir}"/libchromiumcontent-use-system-tools.patch
@@ -169,7 +155,8 @@
   tar -xJf "${srcdir}"/chromium-${_chromiumver}.tar.xz
   mv chromium-${_chromiumver} src
   cd src
-  patch -Np1 -i "${srcdir}"/chromium-dmabuf.patch
+  patch -Np1 -i "${srcdir}"/chromium-atk-r1.patch
+  patch -Np1 -i "${srcdir}"/chromium-gn-bootstrap-r14.patch
   patch -Np1 -i "${srcdir}"/chromium-include-functional.patch
   patch -Np1 -i "${srcdir}"/chromium-use-system-ffmpeg.patch
   patch -Np1 -i "${srcdir}"/chromium-use-system-minizip.patch
@@ -189,9 +176,6 @@
   # Create sysmlink to system Node.js
   mkdir -p third_party/node/linux/node-linux-x64/bin
   ln -s /usr/bin/node third_party/node/linux/node-linux-x64/bin
-
-  # Fixes from the chromium package
-  mv "${srcdir}/chromium-freetype2" third_party/freetype/src
 }
 
 build() {
@@ -203,20 +187,29 @@
     'clang_base_path="/usr"'
     'clang_use_chrome_plugins=false'
     'treat_warnings_as_errors=false'
+    'use_custom_libcxx=false'
     'use_sysroot=false'
   )
-  python2 tools/gn/bootstrap/bootstrap.py --gn-gen-args "${gn_flags[*]}"
+  CC=clang CXX=clang++ python2 tools/gn/bootstrap/bootstrap.py --gn-gen-args "${gn_flags[*]}"
   # libevent not needed anymore
   find -type f -path "*base/third_party/libevent/*" \
     \! -regex '.*\.\(gn\|gni\|isolate\|py\)' \
     -delete
 
+  cd "${srcdir}/electron/vendor/libchromiumcontent"
+  script/update -t x64 --skip_gclient
+  script/build -t x64 -c static_library native_mksnapshot
+  script/create-dist -c static_library -t x64 --no_zip -t x64
+
   cd "${srcdir}"/electron
   LDFLAGS="${LDFLAGS} -Wl,-z,noexecstack"
+  distdir="${srcdir}/electron/vendor/libchromiumcontent/dist/main"
   script/bootstrap.py --verbose \
                       --clang_dir=/usr \
-                      --build_release_libcc
-  script/build.py -c Release
+                      --libcc_source_path="${distdir}/src" \
+                      --libcc_shared_library_path="${distdir}/shared_library" \
+                      --libcc_static_library_path="${distdir}/static_library"
+  script/build.py -c Release --ninja-path=ninja
 }
 
 package() {

Deleted: allow-i686.patch
===================================================================
--- allow-i686.patch	2018-06-07 12:40:11 UTC (rev 341828)
+++ allow-i686.patch	2018-06-07 12:47:54 UTC (rev 341829)
@@ -1,14 +0,0 @@
---- a/script/update.py
-+++ b/script/update.py
-@@ -15,11 +15,6 @@ SOURCE_ROOT = os.path.abspath(os.path.dirname(os.path.dirname(__file__)))
- 
- def main():
-   os.chdir(SOURCE_ROOT)
--
--  if PLATFORM != 'win32' and platform.architecture()[0] != '64bit':
--    print 'Electron is required to be built on a 64bit machine'
--    return 1
--
-   update_external_binaries()
-   return update_gyp()
- 

Added: chromium-atk-r1.patch
===================================================================
--- chromium-atk-r1.patch	                        (rev 0)
+++ chromium-atk-r1.patch	2018-06-07 12:47:54 UTC (rev 341829)
@@ -0,0 +1,11 @@
+--- a/content/browser/accessibility/browser_accessibility_auralinux.cc.orig	2017-07-27 06:28:01.090257874 +0000
++++ b/content/browser/accessibility/browser_accessibility_auralinux.cc	2017-07-27 06:28:21.174653680 +0000
+@@ -571,7 +571,7 @@
+ // it's best to leave this out rather than break people's builds:
+ #if defined(ATK_CHECK_VERSION)
+ #if ATK_CHECK_VERSION(2, 16, 0)
+-      atk_state_set_add_state(atk_state_set, ATK_STATE_READ_ONLY);
++      atk_state_set_add_state(state_set, ATK_STATE_READ_ONLY);
+ #endif
+ #endif
+       break;

Deleted: chromium-dmabuf.patch
===================================================================
--- chromium-dmabuf.patch	2018-06-07 12:40:11 UTC (rev 341828)
+++ chromium-dmabuf.patch	2018-06-07 12:47:54 UTC (rev 341829)
@@ -1,86 +0,0 @@
---- a/ui/gfx/linux/client_native_pixmap_dmabuf.cc
-+++ b/ui/gfx/linux/client_native_pixmap_dmabuf.cc
-@@ -7,36 +7,35 @@
- #include <fcntl.h>
- #include <linux/version.h>
- #include <stddef.h>
-+#include <sys/ioctl.h>
- #include <sys/mman.h>
- #include <xf86drm.h>
- 
- #include "base/debug/crash_logging.h"
- #include "base/memory/ptr_util.h"
-+#include "base/posix/eintr_wrapper.h"
- #include "base/process/memory.h"
- #include "base/process/process_metrics.h"
- #include "base/strings/stringprintf.h"
- #include "base/trace_event/trace_event.h"
- 
--#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 6, 0)
-+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 6, 0)
-+#include <linux/dma-buf.h>
-+#else
- #include <linux/types.h>
- 
--struct local_dma_buf_sync {
-+struct dma_buf_sync {
-   __u64 flags;
- };
- 
--#define LOCAL_DMA_BUF_SYNC_READ (1 << 0)
--#define LOCAL_DMA_BUF_SYNC_WRITE (2 << 0)
--#define LOCAL_DMA_BUF_SYNC_RW \
--  (LOCAL_DMA_BUF_SYNC_READ | LOCAL_DMA_BUF_SYNC_WRITE)
--#define LOCAL_DMA_BUF_SYNC_START (0 << 2)
--#define LOCAL_DMA_BUF_SYNC_END (1 << 2)
-+#define DMA_BUF_SYNC_READ (1 << 0)
-+#define DMA_BUF_SYNC_WRITE (2 << 0)
-+#define DMA_BUF_SYNC_RW (DMA_BUF_SYNC_READ | DMA_BUF_SYNC_WRITE)
-+#define DMA_BUF_SYNC_START (0 << 2)
-+#define DMA_BUF_SYNC_END (1 << 2)
- 
--#define LOCAL_DMA_BUF_BASE 'b'
--#define LOCAL_DMA_BUF_IOCTL_SYNC \
--  _IOW(LOCAL_DMA_BUF_BASE, 0, struct local_dma_buf_sync)
--
--#else
--#include <linux/dma-buf.h>
-+#define DMA_BUF_BASE 'b'
-+#define DMA_BUF_IOCTL_SYNC _IOW(DMA_BUF_BASE, 0, struct dma_buf_sync)
- #endif
- 
- namespace gfx {
-@@ -44,25 +43,19 @@ namespace gfx {
- namespace {
- 
- void PrimeSyncStart(int dmabuf_fd) {
--  struct local_dma_buf_sync sync_start = {0};
-+  struct dma_buf_sync sync_start = {0};
- 
--  sync_start.flags = LOCAL_DMA_BUF_SYNC_START | LOCAL_DMA_BUF_SYNC_RW;
--#if DCHECK_IS_ON()
--  int rv =
--#endif
--      drmIoctl(dmabuf_fd, LOCAL_DMA_BUF_IOCTL_SYNC, &sync_start);
--  DPLOG_IF(ERROR, rv) << "Failed DMA_BUF_SYNC_START";
-+  sync_start.flags = DMA_BUF_SYNC_START | DMA_BUF_SYNC_RW;
-+  int rv = HANDLE_EINTR(ioctl(dmabuf_fd, DMA_BUF_IOCTL_SYNC, &sync_start));
-+  PLOG_IF(ERROR, rv) << "Failed DMA_BUF_SYNC_START";
- }
- 
- void PrimeSyncEnd(int dmabuf_fd) {
--  struct local_dma_buf_sync sync_end = {0};
-+  struct dma_buf_sync sync_end = {0};
- 
--  sync_end.flags = LOCAL_DMA_BUF_SYNC_END | LOCAL_DMA_BUF_SYNC_RW;
--#if DCHECK_IS_ON()
--  int rv =
--#endif
--      drmIoctl(dmabuf_fd, LOCAL_DMA_BUF_IOCTL_SYNC, &sync_end);
--  DPLOG_IF(ERROR, rv) << "Failed DMA_BUF_SYNC_END";
-+  sync_end.flags = DMA_BUF_SYNC_END | DMA_BUF_SYNC_RW;
-+  int rv = HANDLE_EINTR(ioctl(dmabuf_fd, DMA_BUF_IOCTL_SYNC, &sync_end));
-+  PLOG_IF(ERROR, rv) << "Failed DMA_BUF_SYNC_END";
- }
- 
- }  // namespace

Added: chromium-gn-bootstrap-r14.patch
===================================================================
--- chromium-gn-bootstrap-r14.patch	                        (rev 0)
+++ chromium-gn-bootstrap-r14.patch	2018-06-07 12:47:54 UTC (rev 341829)
@@ -0,0 +1,27 @@
+commit 96c271f8ab2be7ea4199078ea65ac50c6ada4685
+Author: Pawel Hajdan, Jr <phajdan.jr at chromium.org>
+Date:   Wed Jul 26 21:51:54 2017 +0000
+
+    wip
+
+diff --git a/tools/gn/bootstrap/bootstrap.py b/tools/gn/bootstrap/bootstrap.py
+index 1390560f8e37..ff2ae57c46b0 100755
+--- a/tools/gn/bootstrap/bootstrap.py
++++ b/tools/gn/bootstrap/bootstrap.py
+@@ -449,6 +449,7 @@ def write_gn_ninja(path, root_gen_dir, options):
+       'base/metrics/histogram_base.cc',
+       'base/metrics/histogram_functions.cc',
+       'base/metrics/histogram_samples.cc',
++      'base/metrics/histogram_snapshot_manager.cc',
+       'base/metrics/metrics_hashes.cc',
+       'base/metrics/persistent_histogram_allocator.cc',
+       'base/metrics/persistent_memory_allocator.cc',
+@@ -534,7 +535,7 @@ def write_gn_ninja(path, root_gen_dir, options):
+       'base/trace_event/heap_profiler_allocation_context_tracker.cc',
+       'base/trace_event/heap_profiler_allocation_register.cc',
+       'base/trace_event/heap_profiler_event_filter.cc',
+-      'base/trace_event/heap_profiler_event_writer.cc',
++      'base/trace_event/heap_profiler_heap_dump_writer.cc',
+       'base/trace_event/heap_profiler_serialization_state.cc',
+       'base/trace_event/heap_profiler_stack_frame_deduplicator.cc',
+       'base/trace_event/heap_profiler_type_name_deduplicator.cc',

Modified: chromium-include-functional.patch
===================================================================
--- chromium-include-functional.patch	2018-06-07 12:40:11 UTC (rev 341828)
+++ chromium-include-functional.patch	2018-06-07 12:47:54 UTC (rev 341829)
@@ -1,6 +1,6 @@
 --- a/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h
 +++ b/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h
-@@ -5,6 +5,7 @@
+@@ -8,6 +8,7 @@
  #include "platform/PlatformExport.h"
  #include "platform/wtf/ThreadSpecific.h"
  

Modified: chromium-use-system-ffmpeg.patch
===================================================================
--- chromium-use-system-ffmpeg.patch	2018-06-07 12:40:11 UTC (rev 341828)
+++ chromium-use-system-ffmpeg.patch	2018-06-07 12:47:54 UTC (rev 341829)
@@ -24,7 +24,7 @@
                "DecoderBuffer padding size does not fit ffmpeg requirement");
  
  // Alignment requirement by FFmpeg for input and output buffers. This need to
-@@ -429,11 +429,11 @@
+@@ -444,11 +444,11 @@
    } else {
      codec_context->extradata_size = config.extra_data().size();
      codec_context->extradata = reinterpret_cast<uint8_t*>(
@@ -38,7 +38,7 @@
    }
  }
  
-@@ -570,11 +570,11 @@
+@@ -585,11 +585,11 @@
    } else {
      codec_context->extradata_size = config.extra_data().size();
      codec_context->extradata = reinterpret_cast<uint8_t*>(
@@ -52,34 +52,9 @@
    }
  }
  
---- a/media/ffmpeg/ffmpeg_common.h
-+++ b/media/ffmpeg/ffmpeg_common.h
-@@ -23,10 +23,12 @@
- 
- // Include FFmpeg header files.
- extern "C" {
-+#if !defined(USE_SYSTEM_FFMPEG)
- // Disable deprecated features which result in spammy compile warnings.  This
- // list of defines must mirror those in the 'defines' section of FFmpeg's
- // BUILD.gn file or the headers below will generate different structures!
- #define FF_API_CONVERGENCE_DURATION 0
-+#endif  // !defined(USE_SYSTEM_FFMPEG)
- // Upstream libavcodec/utils.c still uses the deprecated
- // av_dup_packet(), causing deprecation warnings.
- // The normal fix for such things is to disable the feature as below,
-@@ -40,7 +42,9 @@
- MSVC_PUSH_DISABLE_WARNING(4244);
- #include <libavcodec/avcodec.h>
- #include <libavformat/avformat.h>
-+#if !defined(USE_SYSTEM_FFMPEG)
- #include <libavformat/internal.h>
-+#endif  // !defined(USE_SYSTEM_FFMPEG)
- #include <libavformat/avio.h>
- #include <libavutil/avutil.h>
- #include <libavutil/imgutils.h>
 --- a/media/filters/ffmpeg_audio_decoder.cc
 +++ b/media/filters/ffmpeg_audio_decoder.cc
-@@ -372,7 +372,7 @@
+@@ -368,7 +368,7 @@
  int FFmpegAudioDecoder::GetAudioBuffer(struct AVCodecContext* s,
                                         AVFrame* frame,
                                         int flags) {
@@ -88,27 +63,9 @@
    DCHECK_EQ(s->codec_type, AVMEDIA_TYPE_AUDIO);
  
    // Since this routine is called by FFmpeg when a buffer is required for audio
---- a/media/filters/ffmpeg_demuxer.cc
-+++ b/media/filters/ffmpeg_demuxer.cc
-@@ -1223,6 +1223,7 @@
-   // If no estimate is found, the stream entry will be kInfiniteDuration.
-   std::vector<base::TimeDelta> start_time_estimates(format_context->nb_streams,
-                                                     kInfiniteDuration);
-+#if !defined(USE_SYSTEM_FFMPEG)
-   const AVFormatInternal* internal = format_context->internal;
-   if (internal && internal->packet_buffer &&
-       format_context->start_time != static_cast<int64_t>(AV_NOPTS_VALUE)) {
-@@ -1246,6 +1247,7 @@
-       packet_buffer = packet_buffer->next;
-     }
-   }
-+#endif  // !defined(USE_SYSTEM_FFMPEG)
- 
-   std::unique_ptr<MediaTracks> media_tracks(new MediaTracks());
- 
 --- a/media/filters/ffmpeg_video_decoder.cc
 +++ b/media/filters/ffmpeg_video_decoder.cc
-@@ -423,12 +423,11 @@
+@@ -427,12 +427,11 @@
    codec_context_->thread_type =
        FF_THREAD_SLICE | (low_delay ? 0 : FF_THREAD_FRAME);
    codec_context_->opaque = this;

Modified: default_app-icon.patch
===================================================================
--- default_app-icon.patch	2018-06-07 12:40:11 UTC (rev 341828)
+++ default_app-icon.patch	2018-06-07 12:47:54 UTC (rev 341829)
@@ -12,7 +12,7 @@
      mainWindow.loadURL(appUrl)
 --- a/filenames.gypi
 +++ b/filenames.gypi
-@@ -86,7 +86,6 @@
+@@ -88,7 +88,6 @@
      ],
      'default_app_sources': [
        'default_app/default_app.js',

Modified: dont-use-sysroot.patch
===================================================================
--- dont-use-sysroot.patch	2018-06-07 12:40:11 UTC (rev 341828)
+++ dont-use-sysroot.patch	2018-06-07 12:47:54 UTC (rev 341829)
@@ -1,6 +1,6 @@
 --- a/script/bootstrap.py
 +++ b/script/bootstrap.py
-@@ -60,9 +60,6 @@ def main():
+@@ -63,9 +63,6 @@ def main():
                             libcc_source_path, libcc_shared_library_path,
                             libcc_static_library_path)
  
@@ -12,7 +12,7 @@
    run_update(defines, args.msvs)
 --- a/toolchain.gypi
 +++ b/toolchain.gypi
-@@ -59,10 +59,10 @@
+@@ -62,10 +62,10 @@
                'sysroot%': '<(source_root)/vendor/debian_jessie_arm64-sysroot',
              }],
              ['target_arch=="ia32"', {

Deleted: gtk3-menu-bar.patch
===================================================================
--- gtk3-menu-bar.patch	2018-06-07 12:40:11 UTC (rev 341828)
+++ gtk3-menu-bar.patch	2018-06-07 12:47:54 UTC (rev 341829)
@@ -1,91 +0,0 @@
---- a/atom/browser/ui/views/menu_bar.cc
-+++ b/atom/browser/ui/views/menu_bar.cc
-@@ -16,8 +16,6 @@
- 
- #if defined(OS_WIN)
- #include "ui/gfx/color_utils.h"
--#elif defined(USE_X11)
--#include "chrome/browser/ui/libgtkui/skia_utils_gtk.h"
- #endif
- 
- namespace atom {
-@@ -30,18 +28,71 @@ const char kViewClassName[] = "ElectronMenuBar";
- const SkColor kDefaultColor = SkColorSetARGB(255, 233, 233, 233);
- 
- #if defined(USE_X11)
-+SkColor GdkRGBAToSkColor(GdkRGBA color) {
-+  return SkColorSetARGB(round(color.alpha * 255),
-+                        round(color.red * 255),
-+                        round(color.green * 255),
-+                        round(color.blue * 255));
-+}
-+
- void GetMenuBarColor(SkColor* enabled, SkColor* disabled, SkColor* highlight,
-                      SkColor* hover, SkColor* background) {
-+  GtkWidget* window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
-   GtkWidget* menu_bar = gtk_menu_bar_new();
--
--  GtkStyle* style = gtk_rc_get_style(menu_bar);
--  *enabled = libgtkui::GdkColorToSkColor(style->fg[GTK_STATE_NORMAL]);
--  *disabled = libgtkui::GdkColorToSkColor(style->fg[GTK_STATE_INSENSITIVE]);
--  *highlight = libgtkui::GdkColorToSkColor(style->fg[GTK_STATE_SELECTED]);
--  *hover = libgtkui::GdkColorToSkColor(style->fg[GTK_STATE_PRELIGHT]);
--  *background = libgtkui::GdkColorToSkColor(style->bg[GTK_STATE_NORMAL]);
--
-+  GtkWidget* menu_item = gtk_menu_item_new_with_label("");
-+  GtkWidget* label = gtk_bin_get_child(GTK_BIN(menu_item));
-+  GtkStyleContext* window_style_ctx = gtk_widget_get_style_context(window);
-+  GtkStyleContext* menu_bar_style_ctx =
-+    gtk_widget_get_style_context(menu_bar);
-+  GtkStyleContext* menu_item_style_ctx =
-+    gtk_widget_get_style_context(menu_item);
-+  GtkStyleContext* label_style_ctx = gtk_widget_get_style_context(label);
-+  GdkRGBA normal_color;
-+  GdkRGBA backdrop_color;
-+  GdkRGBA prelight_color;
-+  GdkRGBA* background_color_ptr;
-+
-+  gtk_container_add(GTK_CONTAINER(window), menu_bar);
-+  gtk_menu_shell_append(GTK_MENU_SHELL(menu_bar), menu_item);
-+
-+  gtk_style_context_get(menu_bar_style_ctx,
-+                        GTK_STATE_FLAG_NORMAL,
-+                        "background-color",
-+                        &background_color_ptr,
-+                        NULL);
-+
-+  if (background_color_ptr->alpha == 0.0)
-+    gtk_style_context_get(window_style_ctx,
-+                          GTK_STATE_FLAG_NORMAL,
-+                          "background-color",
-+                          &background_color_ptr,
-+                          NULL);
-+
-+  *background = GdkRGBAToSkColor(*background_color_ptr);
-+  gdk_rgba_free(background_color_ptr);
-+
-+  gtk_style_context_get_color(label_style_ctx,
-+                              GTK_STATE_FLAG_NORMAL,
-+                              &normal_color);
-+  *enabled = GdkRGBAToSkColor(normal_color);
-+  *hover = GdkRGBAToSkColor(normal_color);
-+
-+  gtk_style_context_set_state(menu_item_style_ctx, GTK_STATE_FLAG_PRELIGHT);
-+  gtk_style_context_get_color(label_style_ctx,
-+                              GTK_STATE_FLAG_NORMAL,
-+                              &prelight_color);
-+  gtk_style_context_set_state(menu_item_style_ctx, GTK_STATE_FLAG_NORMAL);
-+  *highlight = GdkRGBAToSkColor(prelight_color);
-+
-+
-+  gtk_style_context_get_color(label_style_ctx,
-+                              GTK_STATE_FLAG_BACKDROP,
-+                              &backdrop_color);
-+  *disabled = GdkRGBAToSkColor(backdrop_color);
-+
-+  gtk_widget_destroy(menu_item);
-   gtk_widget_destroy(menu_bar);
-+  gtk_widget_destroy(window);
- }
- #endif
- 

Deleted: gtk3-message-box.patch
===================================================================
--- gtk3-message-box.patch	2018-06-07 12:40:11 UTC (rev 341828)
+++ gtk3-message-box.patch	2018-06-07 12:47:54 UTC (rev 341829)
@@ -1,11 +0,0 @@
---- a/atom/browser/ui/message_box_gtk.cc
-+++ b/atom/browser/ui/message_box_gtk.cc
-@@ -197,7 +197,7 @@
- }
- 
- void GtkMessageBox::OnCheckboxToggled(GtkWidget* widget) {
--  checkbox_checked_ = GTK_TOGGLE_BUTTON(widget)->active;
-+  checkbox_checked_ = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget));
- }
- 
- }  // namespace

Deleted: gtk3-warnings.patch
===================================================================
--- gtk3-warnings.patch	2018-06-07 12:40:11 UTC (rev 341828)
+++ gtk3-warnings.patch	2018-06-07 12:47:54 UTC (rev 341829)
@@ -1,65 +0,0 @@
---- a/atom/browser/ui/file_dialog_gtk.cc
-+++ b/atom/browser/ui/file_dialog_gtk.cc
-@@ -2,6 +2,8 @@
- // Use of this source code is governed by the MIT license that can be
- // found in the LICENSE file.
- 
-+#include <glib/gi18n.h>
-+
- #include "atom/browser/ui/file_dialog.h"
- 
- #include "atom/browser/native_window_views.h"
-@@ -39,20 +41,20 @@ class FileChooserDialog {
-                     const DialogSettings& settings)
-       : parent_(static_cast<atom::NativeWindowViews*>(settings.parent_window)),
-         filters_(settings.filters) {
--    const char* confirm_text = GTK_STOCK_OK;
-+    const char* confirm_text = _("_OK");
- 
-     if (!settings.button_label.empty())
-       confirm_text = settings.button_label.c_str();
-     else if (action == GTK_FILE_CHOOSER_ACTION_SAVE)
--      confirm_text = GTK_STOCK_SAVE;
-+      confirm_text = _("_Save");
-     else if (action == GTK_FILE_CHOOSER_ACTION_OPEN)
--      confirm_text = GTK_STOCK_OPEN;
-+      confirm_text = _("_Open");
- 
-     dialog_ = gtk_file_chooser_dialog_new(
-         settings.title.c_str(),
-         NULL,
-         action,
--        GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-+        _("_Cancel"), GTK_RESPONSE_CANCEL,
-         confirm_text, GTK_RESPONSE_ACCEPT,
-         NULL);
-     if (parent_) {
---- a/atom/browser/ui/message_box_gtk.cc
-+++ b/atom/browser/ui/message_box_gtk.cc
-@@ -2,6 +2,8 @@
- // Use of this source code is governed by the MIT license that can be
- // found in the LICENSE file.
- 
-+#include <glib/gi18n.h>
-+
- #include "atom/browser/ui/message_box.h"
- 
- #include "atom/browser/browser.h"
-@@ -126,13 +128,13 @@ class GtkMessageBox {
-   const char* TranslateToStock(int id, const std::string& text) {
-     std::string lower = base::ToLowerASCII(text);
-     if (lower == "cancel")
--      return GTK_STOCK_CANCEL;
-+      return _("_Cancel");
-     else if (lower == "no")
--      return GTK_STOCK_NO;
-+      return _("_No");
-     else if (lower == "ok")
--      return GTK_STOCK_OK;
-+      return _("_OK");
-     else if (lower == "yes")
--      return GTK_STOCK_YES;
-+      return _("_Yes");
-     else
-       return text.c_str();
-   }

Modified: gyp-no-rpath.patch
===================================================================
--- gyp-no-rpath.patch	2018-06-07 12:40:11 UTC (rev 341828)
+++ gyp-no-rpath.patch	2018-06-07 12:47:54 UTC (rev 341829)
@@ -1,6 +1,6 @@
 --- a/pylib/gyp/generator/ninja.py
 +++ b/pylib/gyp/generator/ninja.py
-@@ -1221,9 +1221,6 @@
+@@ -1231,9 +1231,6 @@
          rpath = 'lib/'
          if self.toolset != 'target':
            rpath += self.toolset

Added: libchromiumcontent-fix-v8-patches.patch
===================================================================
--- libchromiumcontent-fix-v8-patches.patch	                        (rev 0)
+++ libchromiumcontent-fix-v8-patches.patch	2018-06-07 12:47:54 UTC (rev 341829)
@@ -0,0 +1,536 @@
+--- a/patches/v8/007-backport_f19b889.patch
++++ b/patches/v8/007-backport_f19b889.patch
+@@ -113,63 +113,6 @@
+    void resetContextGroup(int contextGroupId) override;
+    void idleStarted() override;
+    void idleFinished() override;
+-diff --git a/test/inspector/inspector-test.cc b/test/inspector/inspector-test.cc
+-index 930d6c9477..767168b297 100644
+---- a/test/inspector/inspector-test.cc
+-+++ b/test/inspector/inspector-test.cc
+-@@ -642,6 +642,9 @@ class InspectorExtension : public IsolateData::SetupGlobalTask {
+-     inspector->Set(ToV8String(isolate, "fireContextDestroyed"),
+-                    v8::FunctionTemplate::New(
+-                        isolate, &InspectorExtension::FireContextDestroyed));
+-+    inspector->Set(
+-+        ToV8String(isolate, "freeContext"),
+-+        v8::FunctionTemplate::New(isolate, &InspectorExtension::FreeContext));
+-     inspector->Set(ToV8String(isolate, "addInspectedObject"),
+-                    v8::FunctionTemplate::New(
+-                        isolate, &InspectorExtension::AddInspectedObject));
+-@@ -683,6 +686,12 @@ class InspectorExtension : public IsolateData::SetupGlobalTask {
+-     data->FireContextDestroyed(context);
+-   }
+- 
+-+  static void FreeContext(const v8::FunctionCallbackInfo<v8::Value>& args) {
+-+    v8::Local<v8::Context> context = args.GetIsolate()->GetCurrentContext();
+-+    IsolateData* data = IsolateData::FromContext(context);
+-+    data->FreeContext(context);
+-+  }
+-+
+-   static void AddInspectedObject(
+-       const v8::FunctionCallbackInfo<v8::Value>& args) {
+-     if (args.Length() != 2 || !args[0]->IsInt32()) {
+-diff --git a/test/inspector/isolate-data.cc b/test/inspector/isolate-data.cc
+-index 74c367a5e9..bd97a927e8 100644
+---- a/test/inspector/isolate-data.cc
+-+++ b/test/inspector/isolate-data.cc
+-@@ -303,6 +303,13 @@ void IsolateData::FireContextDestroyed(v8::Local<v8::Context> context) {
+-   inspector_->contextDestroyed(context);
+- }
+- 
+-+void IsolateData::FreeContext(v8::Local<v8::Context> context) {
+-+  int context_group_id = GetContextGroupId(context);
+-+  auto it = contexts_.find(context_group_id);
+-+  if (it == contexts_.end()) return;
+-+  contexts_.erase(it);
+-+}
+-+
+- std::vector<int> IsolateData::GetSessionIds(int context_group_id) {
+-   std::vector<int> result;
+-   for (auto& it : sessions_) {
+-diff --git a/test/inspector/isolate-data.h b/test/inspector/isolate-data.h
+-index a94316ff9b..c96a8d1bbd 100644
+---- a/test/inspector/isolate-data.h
+-+++ b/test/inspector/isolate-data.h
+-@@ -68,6 +68,7 @@ class IsolateData : public v8_inspector::V8InspectorClient {
+-   void DumpAsyncTaskStacksStateForTest();
+-   void FireContextCreated(v8::Local<v8::Context> context, int context_group_id);
+-   void FireContextDestroyed(v8::Local<v8::Context> context);
+-+  void FreeContext(v8::Local<v8::Context> context);
+- 
+-  private:
+-   struct VectorCompare {
+ diff --git a/test/inspector/runtime/context-destroyed-on-context-collected-expected.txt b/test/inspector/runtime/context-destroyed-on-context-collected-expected.txt
+ new file mode 100644
+ index 0000000000..9a5e1708c1
+--- a/patches/v8/009-backport_bca8409.patch
++++ b/patches/v8/009-backport_bca8409.patch
+@@ -136,25 +136,3 @@
+      base::Semaphore pending_sweeper_tasks_semaphore_;
+      base::Mutex mutex_;
+      SweptList swept_list_[kAllocationSpaces];
+-diff --git a/test/unittests/cancelable-tasks-unittest.cc b/test/unittests/cancelable-tasks-unittest.cc
+-index eb5dd91589..d0462877f5 100644
+---- a/test/unittests/cancelable-tasks-unittest.cc
+-+++ b/test/unittests/cancelable-tasks-unittest.cc
+-@@ -180,7 +180,7 @@ TEST(CancelableTask, RemoveBeforeCancelAndWait) {
+-   ResultType result1 = 0;
+-   TestTask* task1 = new TestTask(&manager, &result1, TestTask::kCheckNotRun);
+-   ThreadedRunner runner1(task1);
+--  uint32_t id = task1->id();
+-+  CancelableTaskManager::Id id = task1->id();
+-   EXPECT_EQ(id, 1u);
+-   EXPECT_TRUE(manager.TryAbort(id));
+-   runner1.Start();
+-@@ -195,7 +195,7 @@ TEST(CancelableTask, RemoveAfterCancelAndWait) {
+-   ResultType result1 = 0;
+-   TestTask* task1 = new TestTask(&manager, &result1);
+-   ThreadedRunner runner1(task1);
+--  uint32_t id = task1->id();
+-+  CancelableTaskManager::Id id = task1->id();
+-   EXPECT_EQ(id, 1u);
+-   runner1.Start();
+-   runner1.Join();
+--- a/patches/v8/010-backport_f9c4b7a.patch
++++ b/patches/v8/010-backport_f9c4b7a.patch
+@@ -194,15 +194,3 @@
+  
+    DumpAndResetStats();
+  
+-diff --git a/test/cctest/heap/test-spaces.cc b/test/cctest/heap/test-spaces.cc
+-index 26b2fdd193..b99913ab80 100644
+---- a/test/cctest/heap/test-spaces.cc
+-+++ b/test/cctest/heap/test-spaces.cc
+-@@ -370,6 +370,7 @@ TEST(NewSpace) {
+-   }
+- 
+-   new_space.TearDown();
+-+  memory_allocator->unmapper()->WaitUntilCompleted();
+-   memory_allocator->TearDown();
+-   delete memory_allocator;
+- }
+--- a/patches/v8/013-revert_abi_breaking_changes_in_6_1.patch
++++ b/patches/v8/013-revert_abi_breaking_changes_in_6_1.patch
+@@ -552,167 +552,3 @@
+  
+  struct ProtectedInstructionData {
+    // The offset of this instruction from the start of its code object.
+-diff --git a/test/cctest/heap/test-heap.cc b/test/cctest/heap/test-heap.cc
+-index 6781d3de6a..d9608292e8 100644
+---- a/test/cctest/heap/test-heap.cc
+-+++ b/test/cctest/heap/test-heap.cc
+-@@ -4806,7 +4806,7 @@ HEAP_TEST(Regress538257) {
+-   FLAG_manual_evacuation_candidates_selection = true;
+-   v8::Isolate::CreateParams create_params;
+-   // Set heap limits.
+--  create_params.constraints.set_max_semi_space_size_in_kb(1024);
+-+  create_params.constraints.set_max_semi_space_size(1);
+-   create_params.constraints.set_max_old_space_size(6);
+-   create_params.array_buffer_allocator = CcTest::array_buffer_allocator();
+-   v8::Isolate* isolate = v8::Isolate::New(create_params);
+-diff --git a/test/cctest/test-api.cc b/test/cctest/test-api.cc
+-index 2d64279bf8..aa4cba5a60 100644
+---- a/test/cctest/test-api.cc
+-+++ b/test/cctest/test-api.cc
+-@@ -3453,16 +3453,10 @@ class ScopedArrayBufferContents {
+-  public:
+-   explicit ScopedArrayBufferContents(const v8::ArrayBuffer::Contents& contents)
+-       : contents_(contents) {}
+--  ~ScopedArrayBufferContents() { free(contents_.AllocationBase()); }
+-+  ~ScopedArrayBufferContents() { free(contents_.Data()); }
+-   void* Data() const { return contents_.Data(); }
+-   size_t ByteLength() const { return contents_.ByteLength(); }
+- 
+--  void* AllocationBase() const { return contents_.AllocationBase(); }
+--  size_t AllocationLength() const { return contents_.AllocationLength(); }
+--  v8::ArrayBuffer::Allocator::AllocationMode AllocationMode() const {
+--    return contents_.AllocationMode();
+--  }
+--
+-  private:
+-   const v8::ArrayBuffer::Contents contents_;
+- };
+-@@ -3738,43 +3732,15 @@ THREADED_TEST(ArrayBuffer_NeuteringScript) {
+-   CheckDataViewIsNeutered(dv);
+- }
+- 
+--THREADED_TEST(ArrayBuffer_AllocationInformation) {
+--  LocalContext env;
+--  v8::Isolate* isolate = env->GetIsolate();
+--  v8::HandleScope handle_scope(isolate);
+--
+--  const size_t ab_size = 1024;
+--  Local<v8::ArrayBuffer> ab = v8::ArrayBuffer::New(isolate, ab_size);
+--  ScopedArrayBufferContents contents(ab->Externalize());
+--
+--  // Array buffers should have normal allocation mode.
+--  CHECK(contents.AllocationMode() ==
+--        v8::ArrayBuffer::Allocator::AllocationMode::kNormal);
+--  // The allocation must contain the buffer (normally they will be equal, but
+--  // this is not required by the contract).
+--  CHECK_NOT_NULL(contents.AllocationBase());
+--  const uintptr_t alloc =
+--      reinterpret_cast<uintptr_t>(contents.AllocationBase());
+--  const uintptr_t data = reinterpret_cast<uintptr_t>(contents.Data());
+--  CHECK_LE(alloc, data);
+--  CHECK_LE(data + contents.ByteLength(), alloc + contents.AllocationLength());
+--}
+--
+- class ScopedSharedArrayBufferContents {
+-  public:
+-   explicit ScopedSharedArrayBufferContents(
+-       const v8::SharedArrayBuffer::Contents& contents)
+-       : contents_(contents) {}
+--  ~ScopedSharedArrayBufferContents() { free(contents_.AllocationBase()); }
+-+  ~ScopedSharedArrayBufferContents() { free(contents_.Data()); }
+-   void* Data() const { return contents_.Data(); }
+-   size_t ByteLength() const { return contents_.ByteLength(); }
+- 
+--  void* AllocationBase() const { return contents_.AllocationBase(); }
+--  size_t AllocationLength() const { return contents_.AllocationLength(); }
+--  v8::ArrayBuffer::Allocator::AllocationMode AllocationMode() const {
+--    return contents_.AllocationMode();
+--  }
+--
+-  private:
+-   const v8::SharedArrayBuffer::Contents contents_;
+- };
+-@@ -20361,7 +20327,7 @@ class InitDefaultIsolateThread : public v8::base::Thread {
+-     create_params.array_buffer_allocator = CcTest::array_buffer_allocator();
+-     switch (testCase_) {
+-       case SetResourceConstraints: {
+--        create_params.constraints.set_max_semi_space_size_in_kb(1024);
+-+        create_params.constraints.set_max_semi_space_size(1);
+-         create_params.constraints.set_max_old_space_size(6);
+-         break;
+-       }
+-@@ -26057,29 +26023,6 @@ TEST(FutexInterruption) {
+-   timeout_thread.Join();
+- }
+- 
+--THREADED_TEST(SharedArrayBuffer_AllocationInformation) {
+--  i::FLAG_harmony_sharedarraybuffer = true;
+--  LocalContext env;
+--  v8::Isolate* isolate = env->GetIsolate();
+--  v8::HandleScope handle_scope(isolate);
+--
+--  const size_t ab_size = 1024;
+--  Local<v8::SharedArrayBuffer> ab =
+--      v8::SharedArrayBuffer::New(isolate, ab_size);
+--  ScopedSharedArrayBufferContents contents(ab->Externalize());
+--
+--  // Array buffers should have normal allocation mode.
+--  CHECK(contents.AllocationMode() ==
+--        v8::ArrayBuffer::Allocator::AllocationMode::kNormal);
+--  // The allocation must contain the buffer (normally they will be equal, but
+--  // this is not required by the contract).
+--  CHECK_NOT_NULL(contents.AllocationBase());
+--  const uintptr_t alloc =
+--      reinterpret_cast<uintptr_t>(contents.AllocationBase());
+--  const uintptr_t data = reinterpret_cast<uintptr_t>(contents.Data());
+--  CHECK_LE(alloc, data);
+--  CHECK_LE(data + contents.ByteLength(), alloc + contents.AllocationLength());
+--}
+- 
+- static int nb_uncaught_exception_callback_calls = 0;
+- 
+-diff --git a/test/cctest/test-strings.cc b/test/cctest/test-strings.cc
+-index 73e9c58596..d98a4819b5 100644
+---- a/test/cctest/test-strings.cc
+-+++ b/test/cctest/test-strings.cc
+-@@ -1301,7 +1301,7 @@ TEST(SliceFromSlice) {
+- UNINITIALIZED_TEST(OneByteArrayJoin) {
+-   v8::Isolate::CreateParams create_params;
+-   // Set heap limits.
+--  create_params.constraints.set_max_semi_space_size_in_kb(1024);
+-+  create_params.constraints.set_max_semi_space_size(1);
+-   create_params.constraints.set_max_old_space_size(7);
+-   create_params.array_buffer_allocator = CcTest::array_buffer_allocator();
+-   v8::Isolate* isolate = v8::Isolate::New(create_params);
+-diff --git a/test/unittests/heap/heap-unittest.cc b/test/unittests/heap/heap-unittest.cc
+-index 6262eff210..8dab181ca7 100644
+---- a/test/unittests/heap/heap-unittest.cc
+-+++ b/test/unittests/heap/heap-unittest.cc
+-@@ -63,14 +63,19 @@ TEST(Heap, MaxHeapGrowingFactor) {
+- }
+- 
+- TEST(Heap, SemiSpaceSize) {
+--  const size_t KB = static_cast<size_t>(i::KB);
+--  const size_t MB = static_cast<size_t>(i::MB);
+--  const size_t pm = i::Heap::kPointerMultiplier;
+--  ASSERT_EQ(1u * pm * MB / 2, i::Heap::ComputeMaxSemiSpaceSize(0u) * KB);
+--  ASSERT_EQ(1u * pm * MB / 2, i::Heap::ComputeMaxSemiSpaceSize(512u * MB) * KB);
+--  ASSERT_EQ(3u * pm * MB, i::Heap::ComputeMaxSemiSpaceSize(1024u * MB) * KB);
+--  ASSERT_EQ(8u * pm * MB, i::Heap::ComputeMaxSemiSpaceSize(2024u * MB) * KB);
+--  ASSERT_EQ(8u * pm * MB, i::Heap::ComputeMaxSemiSpaceSize(4095u * MB) * KB);
+-+  uint64_t configurations[][2] = {
+-+      {0, 1 * i::Heap::kPointerMultiplier},
+-+      {512 * i::MB, 1 * i::Heap::kPointerMultiplier},
+-+      {1 * i::GB, 3 * i::Heap::kPointerMultiplier},
+-+      {2 * static_cast<uint64_t>(i::GB), i::Heap::kMaxSemiSpaceSize},
+-+      {4 * static_cast<uint64_t>(i::GB), i::Heap::kMaxSemiSpaceSize},
+-+      {8 * static_cast<uint64_t>(i::GB), i::Heap::kMaxSemiSpaceSize}};
+-+
+-+  for (auto configuration : configurations) {
+-+    ASSERT_EQ(configuration[1],
+-+              static_cast<uint64_t>(
+-+                  i::Heap::ComputeMaxSemiSpaceSize(configuration[0])));
+-+  }
+- }
+- 
+- TEST(Heap, OldGenerationSize) {
+--- a/patches/v8/015-backport_9b21865822243.patch
++++ b/patches/v8/015-backport_9b21865822243.patch
+@@ -332,80 +332,3 @@
+  
+    GetExternallyAllocatedMemoryInBytesCallback external_memory_callback_;
+  
+-diff --git a/test/cctest/test-api.cc b/test/cctest/test-api.cc
+-index aa4cba5a60..06ce7c565e 100644
+---- a/test/cctest/test-api.cc
+-+++ b/test/cctest/test-api.cc
+-@@ -19592,6 +19592,19 @@ void EpilogueCallbackSecond(v8::Isolate* isolate,
+-   ++epilogue_call_count_second;
+- }
+- 
+-+void PrologueCallbackNew(v8::Isolate* isolate, v8::GCType,
+-+                         v8::GCCallbackFlags flags, void* data) {
+-+  CHECK_EQ(flags, v8::kNoGCCallbackFlags);
+-+  CHECK_EQ(gc_callbacks_isolate, isolate);
+-+  ++*static_cast<int*>(data);
+-+}
+-+
+-+void EpilogueCallbackNew(v8::Isolate* isolate, v8::GCType,
+-+                         v8::GCCallbackFlags flags, void* data) {
+-+  CHECK_EQ(flags, v8::kNoGCCallbackFlags);
+-+  CHECK_EQ(gc_callbacks_isolate, isolate);
+-+  ++*static_cast<int*>(data);
+-+}
+- 
+- void PrologueCallbackAlloc(v8::Isolate* isolate,
+-                            v8::GCType,
+-@@ -19666,6 +19679,52 @@ TEST(GCCallbacksOld) {
+-   CHECK_EQ(2, epilogue_call_count_second);
+- }
+- 
+-+TEST(GCCallbacksWithData) {
+-+  LocalContext context;
+-+
+-+  gc_callbacks_isolate = context->GetIsolate();
+-+  int prologue1 = 0;
+-+  int epilogue1 = 0;
+-+  int prologue2 = 0;
+-+  int epilogue2 = 0;
+-+
+-+  context->GetIsolate()->AddGCPrologueCallback(PrologueCallbackNew, &prologue1);
+-+  context->GetIsolate()->AddGCEpilogueCallback(EpilogueCallbackNew, &epilogue1);
+-+  CHECK_EQ(0, prologue1);
+-+  CHECK_EQ(0, epilogue1);
+-+  CHECK_EQ(0, prologue2);
+-+  CHECK_EQ(0, epilogue2);
+-+  CcTest::CollectAllGarbage();
+-+  CHECK_EQ(1, prologue1);
+-+  CHECK_EQ(1, epilogue1);
+-+  CHECK_EQ(0, prologue2);
+-+  CHECK_EQ(0, epilogue2);
+-+  context->GetIsolate()->AddGCPrologueCallback(PrologueCallbackNew, &prologue2);
+-+  context->GetIsolate()->AddGCEpilogueCallback(EpilogueCallbackNew, &epilogue2);
+-+  CcTest::CollectAllGarbage();
+-+  CHECK_EQ(2, prologue1);
+-+  CHECK_EQ(2, epilogue1);
+-+  CHECK_EQ(1, prologue2);
+-+  CHECK_EQ(1, epilogue2);
+-+  context->GetIsolate()->RemoveGCPrologueCallback(PrologueCallbackNew,
+-+                                                  &prologue1);
+-+  context->GetIsolate()->RemoveGCEpilogueCallback(EpilogueCallbackNew,
+-+                                                  &epilogue1);
+-+  CcTest::CollectAllGarbage();
+-+  CHECK_EQ(2, prologue1);
+-+  CHECK_EQ(2, epilogue1);
+-+  CHECK_EQ(2, prologue2);
+-+  CHECK_EQ(2, epilogue2);
+-+  context->GetIsolate()->RemoveGCPrologueCallback(PrologueCallbackNew,
+-+                                                  &prologue2);
+-+  context->GetIsolate()->RemoveGCEpilogueCallback(EpilogueCallbackNew,
+-+                                                  &epilogue2);
+-+  CcTest::CollectAllGarbage();
+-+  CHECK_EQ(2, prologue1);
+-+  CHECK_EQ(2, epilogue1);
+-+  CHECK_EQ(2, prologue2);
+-+  CHECK_EQ(2, epilogue2);
+-+}
+- 
+- TEST(GCCallbacks) {
+-   LocalContext context;
+--- a/patches/v8/017-backport_163d360.patch
++++ b/patches/v8/017-backport_163d360.patch
+@@ -142,61 +142,3 @@
+        chunk->ResetProgressBar();
+        MarkingState::Internal(chunk).SetLiveBytes(0);
+      }
+-diff --git a/test/cctest/heap/test-heap.cc b/test/cctest/heap/test-heap.cc
+-index d9608292e8..a2273d2d8c 100644
+---- a/test/cctest/heap/test-heap.cc
+-+++ b/test/cctest/heap/test-heap.cc
+-@@ -6237,6 +6237,53 @@ HEAP_TEST(Regress5831) {
+-   CHECK(chunk->NeverEvacuate());
+- }
+- 
+-+TEST(Regress6800) {
+-+  CcTest::InitializeVM();
+-+  Isolate* isolate = CcTest::i_isolate();
+-+  HandleScope handle_scope(isolate);
+-+
+-+  const int kRootLength = 1000;
+-+  Handle<FixedArray> root =
+-+      isolate->factory()->NewFixedArray(kRootLength, TENURED);
+-+  {
+-+    HandleScope inner_scope(isolate);
+-+    Handle<FixedArray> new_space_array = isolate->factory()->NewFixedArray(1);
+-+    for (int i = 0; i < kRootLength; i++) {
+-+      root->set(i, *new_space_array);
+-+    }
+-+    for (int i = 0; i < kRootLength; i++) {
+-+      root->set(i, CcTest::heap()->undefined_value());
+-+    }
+-+  }
+-+  CcTest::CollectGarbage(NEW_SPACE);
+-+  CHECK_EQ(0, RememberedSet<OLD_TO_NEW>::NumberOfPreFreedEmptyBuckets(
+-+                  MemoryChunk::FromAddress(root->address())));
+-+}
+-+
+-+TEST(Regress6800LargeObject) {
+-+  CcTest::InitializeVM();
+-+  Isolate* isolate = CcTest::i_isolate();
+-+  HandleScope handle_scope(isolate);
+-+
+-+  const int kRootLength = i::kMaxRegularHeapObjectSize / kPointerSize;
+-+  Handle<FixedArray> root =
+-+      isolate->factory()->NewFixedArray(kRootLength, TENURED);
+-+  CcTest::heap()->lo_space()->Contains(*root);
+-+  {
+-+    HandleScope inner_scope(isolate);
+-+    Handle<FixedArray> new_space_array = isolate->factory()->NewFixedArray(1);
+-+    for (int i = 0; i < kRootLength; i++) {
+-+      root->set(i, *new_space_array);
+-+    }
+-+    for (int i = 0; i < kRootLength; i++) {
+-+      root->set(i, CcTest::heap()->undefined_value());
+-+    }
+-+  }
+-+  CcTest::CollectGarbage(OLD_SPACE);
+-+  CHECK_EQ(0, RememberedSet<OLD_TO_NEW>::NumberOfPreFreedEmptyBuckets(
+-+                  MemoryChunk::FromAddress(root->address())));
+-+}
+-+
+- HEAP_TEST(RegressMissingWriteBarrierInAllocate) {
+-   if (!FLAG_incremental_marking) return;
+-   FLAG_black_allocation = true;
+--- a/patches/v8/023-backport_b1cd96e.patch
++++ b/patches/v8/023-backport_b1cd96e.patch
+@@ -57,88 +57,3 @@
+ +  await Protocol.Debugger.disable();
+ +  InspectorTest.completeTest();
+ +})();
+-diff --git a/test/inspector/inspector-test.cc b/test/inspector/inspector-test.cc
+-index 767168b297..4c133cee1f 100644
+---- a/test/inspector/inspector-test.cc
+-+++ b/test/inspector/inspector-test.cc
+-@@ -299,6 +299,10 @@ class UtilsExtension : public IsolateData::SetupGlobalTask {
+-     utils->Set(ToV8String(isolate, "setLogConsoleApiMessageCalls"),
+-                v8::FunctionTemplate::New(
+-                    isolate, &UtilsExtension::SetLogConsoleApiMessageCalls));
+-+    utils->Set(
+-+        ToV8String(isolate, "setLogMaxAsyncCallStackDepthChanged"),
+-+        v8::FunctionTemplate::New(
+-+            isolate, &UtilsExtension::SetLogMaxAsyncCallStackDepthChanged));
+-     utils->Set(ToV8String(isolate, "createContextGroup"),
+-                v8::FunctionTemplate::New(isolate,
+-                                          &UtilsExtension::CreateContextGroup));
+-@@ -485,6 +489,17 @@ class UtilsExtension : public IsolateData::SetupGlobalTask {
+-         args[0].As<v8::Boolean>()->Value());
+-   }
+-
+-+  static void SetLogMaxAsyncCallStackDepthChanged(
+-+      const v8::FunctionCallbackInfo<v8::Value>& args) {
+-+    if (args.Length() != 1 || !args[0]->IsBoolean()) {
+-+      fprintf(stderr,
+-+              "Internal error: setLogMaxAsyncCallStackDepthChanged(bool).");
+-+      Exit();
+-+    }
+-+    backend_runner_->data()->SetLogMaxAsyncCallStackDepthChanged(
+-+        args[0].As<v8::Boolean>()->Value());
+-+  }
+-+
+-   static void CreateContextGroup(
+-       const v8::FunctionCallbackInfo<v8::Value>& args) {
+-     if (args.Length() != 0) {
+-diff --git a/test/inspector/isolate-data.cc b/test/inspector/isolate-data.cc
+-index bd97a927e8..2e9a64f66d 100644
+---- a/test/inspector/isolate-data.cc
+-+++ b/test/inspector/isolate-data.cc
+-@@ -355,6 +355,10 @@ void IsolateData::SetLogConsoleApiMessageCalls(bool log) {
+-   log_console_api_message_calls_ = log;
+- }
+-
+-+void IsolateData::SetLogMaxAsyncCallStackDepthChanged(bool log) {
+-+  log_max_async_call_stack_depth_changed_ = log;
+-+}
+-+
+- v8::MaybeLocal<v8::Value> IsolateData::memoryInfo(v8::Isolate* isolate,
+-                                                   v8::Local<v8::Context>) {
+-   if (memory_info_.IsEmpty()) return v8::MaybeLocal<v8::Value>();
+-@@ -381,3 +385,8 @@ void IsolateData::consoleAPIMessage(int contextGroupId,
+-   Print(isolate_, stack->toString()->string());
+-   fprintf(stdout, "\n");
+- }
+-+
+-+void IsolateData::maxAsyncCallStackDepthChanged(int depth) {
+-+  if (!log_max_async_call_stack_depth_changed_) return;
+-+  fprintf(stdout, "maxAsyncCallStackDepthChanged: %d\n", depth);
+-+}
+-diff --git a/test/inspector/isolate-data.h b/test/inspector/isolate-data.h
+-index c96a8d1bbd..af2bf0ef1e 100644
+---- a/test/inspector/isolate-data.h
+-+++ b/test/inspector/isolate-data.h
+-@@ -64,6 +64,7 @@ class IsolateData : public v8_inspector::V8InspectorClient {
+-   void SetCurrentTimeMS(double time);
+-   void SetMemoryInfo(v8::Local<v8::Value> memory_info);
+-   void SetLogConsoleApiMessageCalls(bool log);
+-+  void SetLogMaxAsyncCallStackDepthChanged(bool log);
+-   void SetMaxAsyncTaskStacksForTest(int limit);
+-   void DumpAsyncTaskStacksStateForTest();
+-   void FireContextCreated(v8::Local<v8::Context> context, int context_group_id);
+-@@ -105,6 +106,7 @@ class IsolateData : public v8_inspector::V8InspectorClient {
+-                          const v8_inspector::StringView& url,
+-                          unsigned lineNumber, unsigned columnNumber,
+-                          v8_inspector::V8StackTrace*) override;
+-+  void maxAsyncCallStackDepthChanged(int depth) override;
+-
+-   TaskRunner* task_runner_;
+-   SetupGlobalTasks setup_global_tasks_;
+-@@ -122,6 +124,7 @@ class IsolateData : public v8_inspector::V8InspectorClient {
+-   bool current_time_set_ = false;
+-   double current_time_ = 0.0;
+-   bool log_console_api_message_calls_ = false;
+-+  bool log_max_async_call_stack_depth_changed_ = false;
+-
+-   DISALLOW_COPY_AND_ASSIGN(IsolateData);
+- };
+--- a/patches/v8/025-cherry_pick_cc55747.patch
++++ /dev/null
+@@ -1,13 +0,0 @@
+-diff --git a/test/message/testcfg.py b/test/message/testcfg.py
+-index 0576458af2..1bbb2b16d8 100644
+---- a/test/message/testcfg.py
+-+++ b/test/message/testcfg.py
+-@@ -107,7 +107,7 @@ class MessageTestSuite(testsuite.TestSuite):
+-         expected_lines, actual_lines, fillvalue=''):
+-       pattern = re.escape(expected.rstrip() % env)
+-       pattern = pattern.replace("\\*", ".*")
+--      pattern = pattern.replace("\\{NUMBER\\}", "\d(?:\.\d*)?")
+-+      pattern = pattern.replace("\\{NUMBER\\}", "\d+(?:\.\d*)?")
+-       pattern = "^%s$" % pattern
+-       if not re.match(pattern, actual):
+-         return True

Deleted: libchromiumcontent-no-depot_tools.patch
===================================================================
--- libchromiumcontent-no-depot_tools.patch	2018-06-07 12:40:11 UTC (rev 341828)
+++ libchromiumcontent-no-depot_tools.patch	2018-06-07 12:47:54 UTC (rev 341829)
@@ -1,30 +0,0 @@
---- a/script/update
-+++ b/script/update
-@@ -48,8 +48,8 @@
-   if sys.platform == 'win32' and not args.skip_depot_tools_update:
-     update_depot_tools()
- 
--  if args.clean and os.path.isdir(SRC_DIR):
--    git_clean_recursive(SRC_DIR)
-+  # if args.clean and os.path.isdir(SRC_DIR):
-+  #   git_clean_recursive(SRC_DIR)
- 
-   # Warning about using a network share as git cache from Windows 7+: The
-   # gclient script may experience errors unless you disable SMBv2 cache by
-@@ -60,11 +60,11 @@
-   git_cache = args.git_cache or os.getenv('LIBCHROMIUMCONTENT_GIT_CACHE', '')
-   target_arch = args.target_arch
-   nohooks = target_arch == 'mips64el' and IS_MIPS64EL_HOST
--  if not args.skip_gclient:
--    if (args.source_only):
--      return gclient_sync(chromium_version(), args.clean, git_cache, nohooks)
--    else:
--      gclient_sync(chromium_version(), args.clean, git_cache, nohooks)
-+  # if not args.skip_gclient:
-+  #   if (args.source_only):
-+  #     return gclient_sync(chromium_version(), args.clean, git_cache, nohooks)
-+  #   else:
-+  #     gclient_sync(chromium_version(), args.clean, git_cache, nohooks)
- 
-   if target_arch == 'mips64el' and IS_MIPS64EL_HOST:
-     os.system('sh script/mips64el/runhooks-mips64el')

Modified: libchromiumcontent-settings.patch
===================================================================
--- libchromiumcontent-settings.patch	2018-06-07 12:40:11 UTC (rev 341828)
+++ libchromiumcontent-settings.patch	2018-06-07 12:47:54 UTC (rev 341829)
@@ -1,42 +1,23 @@
---- a/chromiumcontent/BUILD.gn
-+++ b/chromiumcontent/BUILD.gn
-@@ -36,7 +36,7 @@ group("targets") {
-     ]
- 
-     if (is_linux) {
--      deps += [ "//chrome/browser/ui/libgtkui:libgtk2ui" ]
-+      deps += [ "//chrome/browser/ui/libgtkui:libgtk3ui" ]
-     }
- 
-     if (is_component_build) {
-@@ -158,13 +158,13 @@ if (is_electron_build && is_component_build) {
-     static_library("libgtkui") {
-       complete_static_lib = true
-       sources = [
--        "$root_out_dir/obj/chrome/browser/ui/libgtkui/libgtk2ui/app_indicator_icon.o",
--        "$root_out_dir/obj/chrome/browser/ui/libgtkui/libgtk2ui/app_indicator_icon_menu.o",
--        "$root_out_dir/obj/chrome/browser/ui/libgtkui/libgtk2ui/gtk_util.o",
--        "$root_out_dir/obj/chrome/browser/ui/libgtkui/libgtk2ui/gtk_status_icon.o",
--        "$root_out_dir/obj/chrome/browser/ui/libgtkui/libgtk2ui/menu_util.o",
--        "$root_out_dir/obj/chrome/browser/ui/libgtkui/libgtk2ui/skia_utils_gtk.o",
--        "$root_out_dir/obj/chrome/browser/ui/libgtkui/libgtk2ui/unity_service.o",
-+        "$root_out_dir/obj/chrome/browser/ui/libgtkui/libgtk3ui/app_indicator_icon.o",
-+        "$root_out_dir/obj/chrome/browser/ui/libgtkui/libgtk3ui/app_indicator_icon_menu.o",
-+        "$root_out_dir/obj/chrome/browser/ui/libgtkui/libgtk3ui/gtk_util.o",
-+        "$root_out_dir/obj/chrome/browser/ui/libgtkui/libgtk3ui/gtk_status_icon.o",
-+        "$root_out_dir/obj/chrome/browser/ui/libgtkui/libgtk3ui/menu_util.o",
-+        "$root_out_dir/obj/chrome/browser/ui/libgtkui/libgtk3ui/skia_utils_gtk.o",
-+        "$root_out_dir/obj/chrome/browser/ui/libgtkui/libgtk3ui/unity_service.o",
-       ]
-     }
-   }
+--- a/chromiumcontent/args/native_mksnapshot.gn
++++ b/chromiumcontent/args/native_mksnapshot.gn
+@@ -12,3 +12,8 @@
+ if (target_cpu == "arm64") {
+   v8_snapshot_toolchain="//build/toolchain/linux:clang_arm64"
+ }
++clang_base_path = "/usr"
++clang_use_chrome_plugins = false
++treat_warnings_as_errors = false
++use_custom_libcxx = false
++use_sysroot = false
 --- a/chromiumcontent/args/static_library.gn
 +++ b/chromiumcontent/args/static_library.gn
-@@ -1,13 +1,25 @@
+@@ -1,13 +1,24 @@
  root_extra_deps = [ "//chromiumcontent:chromiumcontent" ]
  is_electron_build = true
  is_component_build = false
+-is_official_build = true
 -symbol_level = 2
++is_debug = false
 +symbol_level = 0
  enable_nacl = false
  enable_widevine = true
@@ -43,7 +24,6 @@
  proprietary_codecs = true
  is_component_ffmpeg = true
  ffmpeg_branding = "Chrome"
- v8_promise_internal_field_count = 1  # https://github.com/nodejs/node/pull/13242
 +clang_base_path = "/usr"
 +clang_use_chrome_plugins = false
 +fatal_linker_warnings = false
@@ -54,55 +34,7 @@
 +linux_use_bundled_binutils = false
 +use_cups = true
 +use_gconf = false
-+use_gtk3 = true
 +use_sysroot = false
  
  # CFI is disabled for the time being, as Electron is not a monolithic binary
  # with at least one shared library component (Node) and CFI is tricky in that
---- a/patches/010-build_gn.patch
-+++ b/patches/010-build_gn.patch
-@@ -31,24 +31,6 @@ index d055e705627c..a52003f1b5e1 100644
-  ]
-  if (is_win) {
-    default_compiler_configs += [
--diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
--index 3b77c055108b..10dab62c2878 100644
----- a/build/config/compiler/BUILD.gn
--+++ b/build/config/compiler/BUILD.gn
--@@ -485,11 +485,11 @@ config("compiler") {
--       # For Full LTO, it provides a measurable runtime speedup of Chrome.
--       cflags += [
--         "-flto",
---        "-fwhole-program-vtables",
--+        # "-fwhole-program-vtables",
--       ]
--       ldflags += [
--         "-flto",
---        "-fwhole-program-vtables",
--+        # "-fwhole-program-vtables",
--       ]
-- 
--       # Apply a lower LTO optimization level as the default is too slow.
- diff --git a/build/config/win/BUILD.gn b/build/config/win/BUILD.gn
- index 5e1f7fcc4d83..15723e6b7184 100644
- --- a/build/config/win/BUILD.gn
---- a/script/update
-+++ b/script/update
-@@ -294,7 +294,7 @@ def run_gn(target_arch, defines):
-     if sys.platform in ['win32', 'cygwin']:
-       args += ' use_experimental_allocator_shim=false'
-     if sys.platform == 'linux2':
--      args += ' use_gtk3=false'
-+      args += ' use_gtk3=true'
-       if target_arch == 'mips64el':
-         args += ' clang_use_chrome_plugins=false'
-         args += ' enable_hangout_services_extension=true'
-@@ -321,7 +321,7 @@ def run_gn(target_arch, defines):
-       if target_arch == 'mips64el':
-         args += ' is_debug=false'
-       else:
--        args += ' is_official_build=true'
-+        args += ' is_debug=false'
- 
-     output_dir = get_output_dir(SOURCE_ROOT, target_arch, component)
-     subprocess.call([gn, 'gen', os.path.relpath(output_dir, SRC_DIR), '--args=' + args],

Modified: libchromiumcontent-static-library-only.patch
===================================================================
--- libchromiumcontent-static-library-only.patch	2018-06-07 12:40:11 UTC (rev 341828)
+++ libchromiumcontent-static-library-only.patch	2018-06-07 12:47:54 UTC (rev 341829)
@@ -1,17 +1,6 @@
---- a/script/build
-+++ b/script/build
-@@ -13,7 +13,7 @@ from lib.config import MIPS64EL_GCC, IS_MIPS64EL_HOST, set_mips64el_env, \
- SOURCE_ROOT = os.path.abspath(os.path.dirname(os.path.dirname(__file__)))
- VENDOR_DIR = os.path.join(SOURCE_ROOT, 'vendor')
- TARGETS = ['chromiumcontent_all']
--COMPONENTS = ['static_library', 'shared_library', 'ffmpeg']
-+COMPONENTS = ['static_library']
- 
- NINJA = 'ninja'
- if sys.platform == 'win32':
 --- a/script/create-dist
 +++ b/script/create-dist
-@@ -76,7 +76,7 @@ BINARIES = {
+@@ -79,7 +79,7 @@ BINARIES = {
      'libffmpeg.dylib',
    ],
    'linux': [
@@ -20,16 +9,16 @@
    ],
    'win32': [
      'd3dcompiler_47.dll',
-@@ -390,7 +390,7 @@ def generate_ninja(args, ninja):
-       copy_generated_sources(target_arch, component, ninja)
+@@ -413,7 +413,7 @@ def generate_ninja(args, ninja):
        copy_locales(target_arch, component, ninja)
  
--  copy_ffmpeg(target_arch, ninja)
-+  # copy_ffmpeg(target_arch, ninja)
-   copy_sources(ninja)
+   if args.component != 'native_mksnapshot':
+-    copy_ffmpeg(target_arch, ninja)
++    # copy_ffmpeg(target_arch, ninja)
+     copy_sources(ninja)
    generate_licenses(ninja)
  
-@@ -513,9 +513,9 @@ def copy_binaries(target_arch, component, create_debug_archive,
+@@ -541,9 +541,9 @@ def copy_binaries(target_arch, component, create_debug_archive,
        else:
          binaries = [ 'chromedriver', 'clang_x64_v8_mips64el/mksnapshot' ]
      else:
@@ -43,12 +32,12 @@
  
 --- a/script/update
 +++ b/script/update
-@@ -19,7 +19,7 @@ VENDOR_DIR = os.path.join(SOURCE_ROOT, 'vendor')
+@@ -20,7 +20,7 @@ VENDOR_DIR = os.path.join(SOURCE_ROOT, 'vendor')
  SRC_DIR = os.path.join(SOURCE_ROOT, 'src')
  CHROMIUMCONTENT_SOURCE_DIR = os.path.join(SOURCE_ROOT, 'chromiumcontent')
  CHROMIUMCONTENT_DESTINATION_DIR = os.path.join(SRC_DIR, 'chromiumcontent')
--COMPONENTS = ['static_library', 'shared_library', 'ffmpeg']
-+COMPONENTS = ['static_library']
+-COMPONENTS = ['static_library', 'shared_library', 'ffmpeg', 'native_mksnapshot']
++COMPONENTS = ['static_library', 'native_mksnapshot']
  DEPOT_TOOLS = os.path.join(VENDOR_DIR, 'depot_tools')
  
- NINJA = os.path.join(DEPOT_TOOLS, 'ninja')
+ # URL to the mips64el sysroot image.

Modified: libchromiumcontent-use-system-tools.patch
===================================================================
--- libchromiumcontent-use-system-tools.patch	2018-06-07 12:40:11 UTC (rev 341828)
+++ libchromiumcontent-use-system-tools.patch	2018-06-07 12:47:54 UTC (rev 341829)
@@ -1,8 +1,8 @@
 --- a/script/build
 +++ b/script/build
-@@ -15,7 +15,7 @@ VENDOR_DIR = os.path.join(SOURCE_ROOT, 'vendor')
- TARGETS = ['chromiumcontent_all']
- COMPONENTS = ['static_library', 'shared_library', 'ffmpeg']
+@@ -17,7 +17,7 @@
+ # Whether the host system is a mips64el machine.
+ IS_MIPS64EL_HOST = platform.uname()[5] == 'mips64'
  
 -NINJA = os.path.join(VENDOR_DIR, 'depot_tools', 'ninja')
 +NINJA = 'ninja'
@@ -11,9 +11,9 @@
  elif IS_MIPS64EL_HOST:
 --- a/script/create-dist
 +++ b/script/create-dist
-@@ -31,7 +31,7 @@ import ninja_syntax
- MAIN_DIR = os.path.join(DIST_DIR, 'main')
- DIST_SRC_DIR = os.path.join(MAIN_DIR, 'src')
+@@ -34,7 +34,7 @@
+ # Whether the host system is a mips64el machine.
+ IS_MIPS64EL_HOST = platform.uname()[5] == 'mips64'
  
 -NINJA = os.path.join(VENDOR_DIR, 'depot_tools', 'ninja')
 +NINJA = 'ninja'
@@ -20,9 +20,20 @@
  if sys.platform == 'win32':
    NINJA = '{0}.exe'.format(NINJA)
  elif IS_MIPS64EL_HOST:
+--- a/script/lib/gn.py
++++ b/script/lib/gn.py
+@@ -10,7 +10,7 @@
+   if platform in ['win32', 'cygwin']:
+     relative_path = ['buildtools', 'win', 'gn.exe']
+   elif platform == 'linux2':
+-    relative_path = ['buildtools', 'linux64', 'gn']
++    relative_path = ['out', 'Release', 'gn']
+   elif platform == 'darwin':
+     relative_path = ['buildtools', 'mac', 'gn']
+ 
 --- a/script/update
 +++ b/script/update
-@@ -69,17 +69,16 @@ def main():
+@@ -75,17 +75,16 @@
    if target_arch == 'mips64el' and IS_MIPS64EL_HOST:
      os.system('sh script/mips64el/runhooks-mips64el')
  
@@ -38,18 +49,9 @@
    if target_arch == 'arm64':
      install_aarch64_bintools()
  
-   return (apply_patches(args.skip_patches, target_arch) or
+   return ((apply_patches(target_arch) if args.apply_patches else 0) or
            copy_chromiumcontent_files() or
 -          update_clang() or
            setup_mips64el_toolchain(target_arch) or
-           run_gn(target_arch, args.defines))
+           run_gn(target_arch))
  
-@@ -276,7 +275,7 @@ def setup_mips64el_toolchain(target_arch):
- 
- 
- def run_gn(target_arch, defines):
--  gn = os.path.join(VENDOR_DIR, 'depot_tools', 'gn')
-+  gn = os.path.join(SRC_DIR, 'out', 'Release', 'gn')
-   if sys.platform in ['win32', 'cygwin']:
-     gn += '.bat'
- 

Modified: use-system-ffmpeg.patch
===================================================================
--- use-system-ffmpeg.patch	2018-06-07 12:40:11 UTC (rev 341828)
+++ use-system-ffmpeg.patch	2018-06-07 12:47:54 UTC (rev 341829)
@@ -1,6 +1,6 @@
 --- a/brightray/brightray.gyp
 +++ b/brightray/brightray.gyp
-@@ -143,8 +143,6 @@
+@@ -147,8 +147,6 @@
              }, {
                'link_settings': {
                  'libraries': [
@@ -11,7 +11,7 @@
                    '-lcap',
 --- a/electron.gyp
 +++ b/electron.gyp
-@@ -197,7 +197,6 @@
+@@ -215,7 +215,6 @@
                    }, {
                      'copied_libraries': [
                        '<(PRODUCT_DIR)/lib/libnode.so',

Modified: use-system-libraries-in-node.patch
===================================================================
--- use-system-libraries-in-node.patch	2018-06-07 12:40:11 UTC (rev 341828)
+++ use-system-libraries-in-node.patch	2018-06-07 12:47:54 UTC (rev 341829)
@@ -1,6 +1,6 @@
 --- a/common.gypi
 +++ b/common.gypi
-@@ -22,12 +22,12 @@
+@@ -24,12 +24,12 @@
      'node_install_npm': 'false',
      'node_prefix': '',
      'node_shared': 'true',
@@ -16,7 +16,7 @@
      'node_tag': '',
      'node_use_dtrace': 'false',
      'node_use_etw': 'false',
-@@ -171,6 +171,12 @@
+@@ -173,6 +173,12 @@
              ],
            }],
            ['OS=="linux" and libchromiumcontent_component==0', {

Deleted: use-system-ninja.patch
===================================================================
--- use-system-ninja.patch	2018-06-07 12:40:11 UTC (rev 341828)
+++ use-system-ninja.patch	2018-06-07 12:47:54 UTC (rev 341829)
@@ -1,11 +0,0 @@
---- a/script/build.py
-+++ b/script/build.py
-@@ -23,7 +23,7 @@ 
-   # Update the VS build env.
-   import_vs_env(get_target_arch())
- 
--  ninja = os.path.join('vendor', 'depot_tools', 'ninja')
-+  ninja = 'ninja'
-   if sys.platform == 'win32':
-     ninja += '.exe'
- 



More information about the arch-commits mailing list