Date: Friday, January 26, 2018 @ 10:59:01 Author: tensor5 Revision: 287125
upgpkg: electron 1.7.11-1 Added: electron/trunk/chromium-gn-bootstrap-r2.patch electron/trunk/libchromiumcontent-chdir.patch electron/trunk/libchromiumcontent-no-depot_tools.patch electron/trunk/no-whole-archive.patch Modified: electron/trunk/PKGBUILD electron/trunk/chromium-gtk3.patch electron/trunk/chromium-use-system-ffmpeg.patch electron/trunk/default_app-icon.patch electron/trunk/dont-use-sysroot.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 Deleted: electron/trunk/brightray-dont-update-submodules.patch electron/trunk/brightray-no-whole-archive.patch electron/trunk/brightray-use-system-ffmpeg.patch electron/trunk/chromium-unset-madv_free.patch electron/trunk/use-system-clang.patch ----------------------------------------------+ PKGBUILD | 115 ++++++++++--------------- brightray-dont-update-submodules.patch | 11 -- brightray-no-whole-archive.patch | 22 ---- brightray-use-system-ffmpeg.patch | 11 -- chromium-gn-bootstrap-r2.patch | 13 ++ chromium-gtk3.patch | 8 - chromium-unset-madv_free.patch | 14 --- chromium-use-system-ffmpeg.patch | 2 default_app-icon.patch | 2 dont-use-sysroot.patch | 10 +- libchromiumcontent-chdir.patch | 11 ++ libchromiumcontent-no-depot_tools.patch | 24 +++++ libchromiumcontent-settings.patch | 4 libchromiumcontent-static-library-only.patch | 28 +++--- libchromiumcontent-use-system-tools.patch | 23 +++-- no-whole-archive.patch | 22 ++++ use-system-clang.patch | 13 -- use-system-ffmpeg.patch | 13 ++ 18 files changed, 176 insertions(+), 170 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2018-01-26 10:57:02 UTC (rev 287124) +++ PKGBUILD 2018-01-26 10:59:01 UTC (rev 287125) @@ -1,15 +1,15 @@ # $Id$ # Maintainer: Nicola Squartini <tens...@gmail.com> -_chromiumver=56.0.2924.87 +_chromiumver=58.0.3029.110 pkgname=electron -pkgver=1.6.15 +pkgver=1.7.11 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' 'libvpx' 'libxslt' +depends=('c-ares' 'ffmpeg' 'gtk3' 'http-parser' 'libevent' 'libxslt' 'libxss' 'minizip' 'nss' 're2' 'snappy') makedepends=('clang' 'gconf' 'git' 'gperf' 'gtk2' 'harfbuzz-icu' 'jsoncpp' 'libexif' 'libgnome-keyring' 'libnotify' 'ninja' 'npm' 'pciutils' @@ -20,12 +20,11 @@ 'trash-cli: file deletion support (trash-put)') source=("git+https://github.com/electron/electron.git#tag=v${pkgver}" 'git+https://github.com/boto/boto.git' - 'git+https://github.com/electron/brightray.git' 'breakpad::git+https://github.com/electron/chromium-breakpad.git' 'git+https://chromium.googlesource.com/chromium/src/tools/grit.git' 'git+https://github.com/electron/gyp.git' "git+https://github.com/electron/libchromiumcontent.git" - 'native_mate::git+https://github.com/zcbenz/native-mate.git' + 'native_mate::git+https://github.com/electron/native-mate.git' 'git+https://github.com/electron/node.git' 'pdf_viewer::git+https://github.com/electron/pdf-viewer.git' 'git+https://github.com/kennethreitz/requests.git' @@ -36,31 +35,29 @@ 'dont-bootstrap-libchromiumcontent.patch' 'dont-update-submodules.patch' 'dont-use-sysroot.patch' - 'allow-i686.patch' 'gtk3-menu-bar.patch' 'gtk3-message-box.patch' 'gtk3-warnings.patch' - 'use-system-clang.patch' + 'no-whole-archive.patch' 'use-system-libraries-in-node.patch' 'use-system-ninja.patch' 'use-system-ffmpeg.patch' 'breakpad-glibc2.26.patch' - 'brightray-dont-update-submodules.patch' - 'brightray-no-whole-archive.patch' - 'brightray-use-system-ffmpeg.patch' 'gyp-no-rpath.patch' + 'libchromiumcontent-chdir.patch' + 'libchromiumcontent-no-depot_tools.patch' 'libchromiumcontent-settings.patch' 'libchromiumcontent-sort-filenames.patch' 'libchromiumcontent-static-library-only.patch' 'libchromiumcontent-use-system-tools.patch' + 'chromium-gn-bootstrap-r2.patch' 'chromium-gtk3.patch' 'chromium-include-functional.patch' - 'chromium-unset-madv_free.patch' 'chromium-use-system-ffmpeg.patch' 'chromium-use-system-minizip.patch' 'chromium-use-system-re2.patch' ) -noextract=("chromium-${_chromiumver}.tar.xz") +noextract=("electron-chromium-${_chromiumver}.tar.xz") sha256sums=('SKIP' 'SKIP' 'SKIP' @@ -72,34 +69,31 @@ 'SKIP' 'SKIP' 'SKIP' - 'SKIP' - '70876d8b1e91801af0af133f6de2992c1c8868e34b6354bb060e040958c604d7' + '9cbbf8dd7939448a2efb26f96c8d709e57803ca4dfb72074e544b3942d937f12' '5270db01f3f8aaa5137dec275a02caa832b7f2e37942e068cba8d28b3a29df39' - '84b4c5d9a27727b18e500db4fcc5c44dd52eaeb440eeec02cd8321d1f6bfcadf' + '38b3e4c296a9be43ba1cb7a51cbad14de9e82ed7a94d3877e6cb46a1ac537fef' '14dbd1eecb7034d9e19e1f0c61b0a36ed3b9c610db008ff2a6da2a540ade1221' '2a2bc09a40415fd0d57cc8815a158bf32eb4cc2add3b655dddf568c7dc795ff3' - '182a2eeb784630e6aa3378a54c5709629658eac8e146764008cb2f2214cd5427' - 'c209475c16b506d8d888a54c8564718cf9775f450d1867e19e86a03d99a119be' + '8792c99cdeff176d6ce5ec5f0f682713f9f809985a26b47655a6d38cb0111015' 'e18b81d584684657bf0a1af000d22f3c0963250c77ec9d72a4c877eabf032cd2' '473f740b2b73cad131a38bd56bfa84e7905378187ef4586ea5eff18342b2ba8a' 'ea2942e980328ffb989abb32e5aa0991363178b9c455b931ab726e1c3039ec96' - 'ce78850a2d2fe343febee597f0fce361ff99be63f6f720fa844d64efc7abb84e' + '9bbdb185b8230b50b7ed7d85215cb795a84c347031cc3cf934ae209652cd9dad' '541d3c11ff4b540f37e066e695cdcc053d069ee09b64dfe170b0fa236b7a1eee' 'dc3286a1947240ab6ec562263af0b3c9971da2a4ab45970e3e664563e877280f' - 'c697b9bafaa26014fb829001ec783dd74ef35cf1d188cb7729ebf42d73548488' + 'ba8717cf3f34e19bccc042c97ca57a0cceb254f48be01bcc8ad6901622a4b313' '21d9ea4d9bb62450ae1bd82839ec322e542b6b1a2d629f7668e066c94947d47d' - '3bf045dc4ac1cb32491c4a20de313c3056824e75308f97b9e869fd5a2a166480' - 'cd8e21529ac47c42827c5c619309098c3046fe24106946313e0d0e89d39876fd' - 'e627cbdfa3175d1cdf1bfe17de42bbce5c8086ea7cebf99e1aec251fb5bf8456' '68977a78fb41a549eb449dd35f94e0168d647245516397f0ecdfa7a03a147045' - '6fd3ed318f76c37a0d31ea07c892354718a8c2300f81f1901690f90f8016a04b' + 'b5f181e1f662dd77045c1edd696f4bd51ce59f378692b4978600340b1347bd8b' + '3df7035dd52353cba74bd696a1e42cb6138beba0f04ada21961df42515dda3be' + 'ecdb9b118ad9d5043359bfb849532d777a7865d88f4ed6c9fe9fc5ad20a340df' '4de540ec76736ef3e14475090916a42c03692c542822b430f1ab3f6d36655511' - '88c924e39de283f698323c9ea5e2e9ce277f2d75b190500a5ad9d3bf81bafdae' - 'a5af00380aa79bebdba5a140ec0ab8722e1c96040562862b033e66d09f2eefc2' - '8fbaa725f7e8ba3851d84d7b03f7837049f8ce2e976fa1ebc76231236678183b' + 'dc1dc6a675d67be89394864b1e72fdaf260eef9caf8282dddf694b4e713d4a26' + 'e119c09e65bbc70bc7e70a8ce9e68de001c8921dde25c6e0475d46362368cadd' + '64d743c78183c302c42d1f289863e34c74832fca57443833e46a0a3157e2b5de' + '29fd754f8912c8b263e8038ac6eb1d89d7bae11f894079f2da1f0074696bcfb2' '43116692892bb85646ebf34ce91d47233203e9c9fa887d6993ecbbb5033dcd27' - 'ccba3002243fb1f9a67c8a60af310706caa591d12aef45f1d0f4bda47626f3ab' - 'ed9fdb6a66a6ff7e4726d273d9da68fa68117d8f6668781005ec1d621759a5be' + 'b45dc199aa43b5336ae2bd222c610f808cc48294434cfdafac64a4bdb8c4e2cf' '76fb05484a4e9faaad0763b65b6ad84224a9f74aff9227c7a3dc1c15eea324c4' 'b9fcfa7f25f0b49dd44e13b86e5f160e1e73cef0af5227840a4c2d2329e092c9' ) @@ -111,7 +105,7 @@ 'libevent' 'libjpeg' 'libpng' - 'libvpx' +# 'libvpx' 'libwebp' 'libxml' 'libxslt' @@ -128,7 +122,6 @@ 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-clang.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 @@ -135,12 +128,17 @@ patch -Np1 -i "${srcdir}"/dont-update-submodules.patch patch -Np1 -i "${srcdir}"/dont-use-sysroot.patch patch -Np1 -i "${srcdir}"/dont-bootstrap-libchromiumcontent.patch - patch -Np1 -i "${srcdir}"/allow-i686.patch + 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 libxml-2.0 libxslt)', '-ljpeg', '-lre2', '-lsnappy', '-latomic',/" \ + -e 's/gtk+-2\.0/gtk+-3.0/' \ + -i brightray/brightray.gyp + mkdir -p "${srcdir}"/python2-path ln -sf /usr/bin/python2 "${srcdir}/python2-path/python" - for m in boto breakpad brightray native_mate node pdf_viewer requests; do + for m in boto breakpad gyp libchromiumcontent native_mate node pdf_viewer requests; do git submodule init vendor/${m} git config submodule.vendor/${m}.url "${srcdir}/${m}" done @@ -157,40 +155,25 @@ git submodule update patch -Np1 -i "${srcdir}"/breakpad-glibc2.26.patch - cd "${srcdir}"/electron/vendor/brightray - patch -Np1 -i "${srcdir}"/brightray-dont-update-submodules.patch - patch -Np1 -i "${srcdir}"/brightray-use-system-ffmpeg.patch - patch -Np1 -i "${srcdir}"/brightray-no-whole-archive.patch - for m in libchromiumcontent gyp; do - git submodule init vendor/${m} - git config submodule.vendor/${m}.url "${srcdir}/${m}" - done - git submodule update - # 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 vpx libwebpdemux libxml-2.0 libxslt)', '-ljpeg', '-lre2', '-lsnappy', '-latomic',/" \ - -e 's/gtk+-2\.0/gtk+-3.0/' \ - -i brightray.gyp - - cd "${srcdir}"/electron/vendor/brightray/vendor/gyp + cd "${srcdir}"/electron/vendor/gyp # Remove a useless $ORIGIN/lib/ rpath from the electron binary patch -Np1 -i "${srcdir}"/gyp-no-rpath.patch - cd "${srcdir}"/electron/vendor/brightray/vendor/libchromiumcontent - git checkout 19ca886975716c02d6de9fd41b8297a4e1774be2 - git submodule update --init vendor/python-patch + cd "${srcdir}"/electron/vendor/libchromiumcontent + patch -Np1 -i "${srcdir}"/libchromiumcontent-chdir.patch + patch -Np1 -i "${srcdir}"/libchromiumcontent-no-depot_tools.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 patch -Np1 -i "${srcdir}"/libchromiumcontent-static-library-only.patch rm patches/third_party/ffmpeg/build_gn.patch # Use system ffmpeg - ln -s "${srcdir}"/chromium-${_chromiumver} src - if [ ! -e src/.version ]; then - echo "${_chromiumver}" > src/.version - fi + echo 'Extracting chromium source...' + tar -xJf "${srcdir}"/electron-chromium-${_chromiumver}.tar.xz + mv chromium-${_chromiumver} src cd src + patch -Np1 -i "${srcdir}"/chromium-gn-bootstrap-r2.patch patch -Np1 -i "${srcdir}"/chromium-gtk3.patch patch -Np1 -i "${srcdir}"/chromium-include-functional.patch - patch -Np1 -i "${srcdir}"/chromium-unset-madv_free.patch # fixes crash with kernels < 4.5 patch -Np1 -i "${srcdir}"/chromium-use-system-ffmpeg.patch patch -Np1 -i "${srcdir}"/chromium-use-system-minizip.patch patch -Np1 -i "${srcdir}"/chromium-use-system-re2.patch @@ -205,19 +188,20 @@ -delete done python2 build/linux/unbundle/replace_gn_files.py --system-libraries "${_system_libs[@]}" + + # 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 + cd third_party/node + npm install + patch -d node_modules/vulcanize -p1 < patch_vulcanize.diff } build() { export PATH="${srcdir}/python2-path:${PATH}" - if [ "${CARCH}" == 'x86_64' ]; then - _target=x64 - else - _target=ia32 - fi - # Build GN - cd "${srcdir}/chromium-${_chromiumver}" + cd "${srcdir}/electron/vendor/libchromiumcontent/src" gn_flags=( 'clang_base_path="/usr"' 'clang_use_chrome_plugins=false' @@ -233,7 +217,6 @@ cd "${srcdir}"/electron LDFLAGS="${LDFLAGS} -Wl,-z,noexecstack" script/bootstrap.py --verbose \ - --target_arch=${_target} \ --clang_dir=/usr \ --build_libchromiumcontent script/build.py -c Release @@ -242,16 +225,16 @@ package() { cd "${srcdir}"/electron - _cc="${srcdir}"/electron/vendor/brightray/vendor/libchromiumcontent/dist/main + _cc="${srcdir}"/electron/vendor/libchromiumcontent/dist/main install -d -m755 "${pkgdir}"/usr/share/licenses/electron install -m644 LICENSE "${_cc}"/LICENSES.chromium.html \ "${pkgdir}"/usr/share/licenses/electron - for lib in brightray native_mate node; do + for lib in native_mate node; do install -m644 vendor/${lib}/LICENSE \ "${pkgdir}"/usr/share/licenses/electron/LICENSE-${lib} done - install -m644 vendor/brightray/vendor/libchromiumcontent/src/LICENSE \ + install -m644 vendor/libchromiumcontent/src/LICENSE \ "${pkgdir}"/usr/share/licenses/electron/LICENSE-chromium cd out/R Deleted: brightray-dont-update-submodules.patch =================================================================== --- brightray-dont-update-submodules.patch 2018-01-26 10:57:02 UTC (rev 287124) +++ brightray-dont-update-submodules.patch 2018-01-26 10:59:01 UTC (rev 287125) @@ -1,11 +0,0 @@ ---- a/script/bootstrap -+++ b/script/bootstrap -@@ -24,7 +24,7 @@ def main(): - print "Error: All options of libchromiumcontent are required OR let " \ - "brightray choose it" - sys.exit(0) -- update_submodules() -+ # update_submodules() - setup_libchromiumcontent(args.dev, args.commit, args.target_arch, args.url, - args.libcc_source_path, - args.libcc_shared_library_path, Deleted: brightray-no-whole-archive.patch =================================================================== --- brightray-no-whole-archive.patch 2018-01-26 10:57:02 UTC (rev 287124) +++ brightray-no-whole-archive.patch 2018-01-26 10:59:01 UTC (rev 287125) @@ -1,22 +0,0 @@ ---- a/brightray.gyp -+++ b/brightray.gyp -@@ -41,14 +41,13 @@ - 'conditions': [ - # Link with libraries of libchromiumcontent. - ['OS=="linux" and libchromiumcontent_component==0', { -- # On Linux we have to use "--whole-archive" to force executable -- # to include all symbols, otherwise we will have plenty of -+ # On Linux we have to use "--start-group" or we will have plenty of - # unresolved symbols errors. -- 'direct_dependent_settings': { -- 'ldflags': [ -- '-Wl,--whole-archive', -+ 'link_settings': { -+ 'libraries': [ -+ '-Wl,--start-group', - '<@(libchromiumcontent_libraries)', -- '-Wl,--no-whole-archive', -+ '-Wl,--end-group' - ], - } - }, { # (Release build on Linux) Deleted: brightray-use-system-ffmpeg.patch =================================================================== --- brightray-use-system-ffmpeg.patch 2018-01-26 10:57:02 UTC (rev 287124) +++ brightray-use-system-ffmpeg.patch 2018-01-26 10:59:01 UTC (rev 287125) @@ -1,11 +0,0 @@ ---- a/brightray.gyp -+++ b/brightray.gyp -@@ -130,8 +130,6 @@ - }, { - 'link_settings': { - 'libraries': [ -- # Link with ffmpeg. -- '<(libchromiumcontent_dir)/libffmpeg.so', - # Following libraries are required by libchromiumcontent: - '-lasound', - '-lcap', Added: chromium-gn-bootstrap-r2.patch =================================================================== --- chromium-gn-bootstrap-r2.patch (rev 0) +++ chromium-gn-bootstrap-r2.patch 2018-01-26 10:59:01 UTC (rev 287125) @@ -0,0 +1,13 @@ +Index: tools/gn/bootstrap/bootstrap.py +diff --git a/tools/gn/bootstrap/bootstrap.py b/tools/gn/bootstrap/bootstrap.py +index 38cfb117d29c3895291379f00d8dc8c8b0727474..679170e610f8292bcbeb76508fd247d322a69c79 100755 +--- a/tools/gn/bootstrap/bootstrap.py ++++ b/tools/gn/bootstrap/bootstrap.py +@@ -385,6 +385,7 @@ def write_gn_ninja(path, root_gen_dir, options): + 'base/base_switches.cc', + 'base/build_time.cc', + 'base/callback_internal.cc', ++ 'base/callback_helpers.cc', + 'base/command_line.cc', + 'base/debug/activity_tracker.cc', + 'base/debug/alias.cc', Modified: chromium-gtk3.patch =================================================================== --- chromium-gtk3.patch 2018-01-26 10:57:02 UTC (rev 287124) +++ chromium-gtk3.patch 2018-01-26 10:59:01 UTC (rev 287125) @@ -1,13 +1,13 @@ --- a/chrome/browser/ui/libgtkui/gtk_ui.cc +++ b/chrome/browser/ui/libgtkui/gtk_ui.cc -@@ -411,6 +411,10 @@ +@@ -376,6 +376,10 @@ } // namespace - Gtk2UI::Gtk2UI() : middle_click_action_(GetDefaultMiddleClickAction()) { + GtkUi::GtkUi() : middle_click_action_(GetDefaultMiddleClickAction()) { +#if GTK_MAJOR_VERSION > 2 + g_setenv("GDK_SCALE", "1", FALSE); + gdk_set_allowed_backends("x11"); +#endif GtkInitFromCommandLine(*base::CommandLine::ForCurrentProcess()); - } - + #if GTK_MAJOR_VERSION == 2 + native_theme_ = NativeThemeGtk2::instance(); Deleted: chromium-unset-madv_free.patch =================================================================== --- chromium-unset-madv_free.patch 2018-01-26 10:57:02 UTC (rev 287124) +++ chromium-unset-madv_free.patch 2018-01-26 10:59:01 UTC (rev 287125) @@ -1,14 +0,0 @@ ---- a/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp -+++ b/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp -@@ -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 Modified: chromium-use-system-ffmpeg.patch =================================================================== --- chromium-use-system-ffmpeg.patch 2018-01-26 10:57:02 UTC (rev 287124) +++ chromium-use-system-ffmpeg.patch 2018-01-26 10:59:01 UTC (rev 287125) @@ -21,7 +21,7 @@ #include <libavutil/imgutils.h> --- a/media/filters/ffmpeg_demuxer.cc +++ b/media/filters/ffmpeg_demuxer.cc -@@ -1198,24 +1198,6 @@ +@@ -1221,24 +1221,6 @@ // If no estimate is found, the stream entry will be kInfiniteDuration. std::vector<base::TimeDelta> start_time_estimates(format_context->nb_streams, kInfiniteDuration); Modified: default_app-icon.patch =================================================================== --- default_app-icon.patch 2018-01-26 10:57:02 UTC (rev 287124) +++ default_app-icon.patch 2018-01-26 10:59:01 UTC (rev 287125) @@ -12,7 +12,7 @@ mainWindow.loadURL(appUrl) --- a/filenames.gypi +++ b/filenames.gypi -@@ -85,7 +85,6 @@ +@@ -86,7 +86,6 @@ ], 'default_app_sources': [ 'default_app/default_app.js', Modified: dont-use-sysroot.patch =================================================================== --- dont-use-sysroot.patch 2018-01-26 10:57:02 UTC (rev 287124) +++ dont-use-sysroot.patch 2018-01-26 10:59:01 UTC (rev 287125) @@ -1,8 +1,8 @@ --- a/script/bootstrap.py +++ b/script/bootstrap.py -@@ -57,9 +57,6 @@ - libcc_source_path, libcc_shared_library_path, - libcc_static_library_path) +@@ -56,9 +56,6 @@ def main(): + libcc_source_path, libcc_shared_library_path, + libcc_static_library_path) - if PLATFORM == 'linux': - download_sysroot(args.target_arch) @@ -12,8 +12,8 @@ run_update(defines, args.msvs) --- a/toolchain.gypi +++ b/toolchain.gypi -@@ -53,10 +53,10 @@ - 'sysroot%': '<(source_root)/vendor/debian_wheezy_arm-sysroot', +@@ -56,10 +56,10 @@ + 'sysroot%': '<(source_root)/vendor/debian_jessie_arm64-sysroot', }], ['target_arch=="ia32"', { - 'sysroot%': '<(source_root)/vendor/debian_wheezy_i386-sysroot', Added: libchromiumcontent-chdir.patch =================================================================== --- libchromiumcontent-chdir.patch (rev 0) +++ libchromiumcontent-chdir.patch 2018-01-26 10:59:01 UTC (rev 287125) @@ -0,0 +1,11 @@ +--- a/script/update ++++ b/script/update +@@ -41,6 +41,8 @@ solutions = [ + ''' + + def main(): ++ os.chdir(SOURCE_ROOT) ++ + args = parse_args() + + if sys.platform in ['win32', 'cygwin']: Added: libchromiumcontent-no-depot_tools.patch =================================================================== --- libchromiumcontent-no-depot_tools.patch (rev 0) +++ libchromiumcontent-no-depot_tools.patch 2018-01-26 10:59:01 UTC (rev 287125) @@ -0,0 +1,24 @@ +--- a/script/update ++++ b/script/update +@@ -46,8 +46,8 @@ + if sys.platform in ['win32', 'cygwin']: + 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 +@@ -55,8 +55,8 @@ + # HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Lanmanworkstation\Parameters\DirectoryCacheLifetime + # to 0. + # More information: https://stackoverflow.com/a/9935126 +- git_cache = args.git_cache or os.getenv('LIBCHROMIUMCONTENT_GIT_CACHE', '') +- gclient_sync(chromium_version(), args.clean, git_cache) ++ # git_cache = args.git_cache or os.getenv('LIBCHROMIUMCONTENT_GIT_CACHE', '') ++ # gclient_sync(chromium_version(), args.clean, git_cache) + + if sys.platform == 'linux2': + install_sysroot() Modified: libchromiumcontent-settings.patch =================================================================== --- libchromiumcontent-settings.patch 2018-01-26 10:57:02 UTC (rev 287124) +++ libchromiumcontent-settings.patch 2018-01-26 10:59:01 UTC (rev 287125) @@ -26,7 +26,7 @@ +use_sysroot = false --- a/chromiumcontent/BUILD.gn +++ b/chromiumcontent/BUILD.gn -@@ -32,7 +32,7 @@ +@@ -33,7 +33,7 @@ ] if (is_linux) { @@ -35,7 +35,7 @@ } if (is_component_build) { -@@ -154,13 +154,13 @@ +@@ -155,13 +155,13 @@ static_library("libgtkui") { complete_static_lib = true sources = [ Modified: libchromiumcontent-static-library-only.patch =================================================================== --- libchromiumcontent-static-library-only.patch 2018-01-26 10:57:02 UTC (rev 287124) +++ libchromiumcontent-static-library-only.patch 2018-01-26 10:59:01 UTC (rev 287125) @@ -11,7 +11,7 @@ if sys.platform == 'win32': --- a/script/create-dist +++ b/script/create-dist -@@ -59,7 +59,7 @@ +@@ -72,7 +72,7 @@ BINARIES = { 'libffmpeg.dylib', ], 'linux': [ @@ -20,18 +20,18 @@ ], 'win32': [ 'd3dcompiler_47.dll', -@@ -312,7 +312,7 @@ - copy_generated_sources(target_arch, component) - copy_locales(target_arch, component) +@@ -381,7 +381,7 @@ def generate_ninja(args, ninja): + copy_generated_sources(target_arch, component, ninja) + copy_locales(target_arch, component, ninja) -- copy_ffmpeg(target_arch) -+ # copy_ffmpeg(target_arch) - copy_sources() - generate_licenses() - if not args.no_zip: -@@ -429,9 +429,9 @@ - elif target_arch == 'arm': - binaries = [ 'chromedriver', 'clang_x86_v8_arm/mksnapshot' ] +- copy_ffmpeg(target_arch, ninja) ++ # copy_ffmpeg(target_arch, ninja) + copy_sources(ninja) + generate_licenses(ninja) + +@@ -490,9 +490,9 @@ def copy_binaries(target_arch, component, create_debug_archive, + elif target_arch == 'arm64': + binaries = [ 'chromedriver', 'clang_x64_v8_arm64/mksnapshot' ] else: - binaries = [ 'chromedriver', 'mksnapshot' ] + binaries = [ 'mksnapshot' ] @@ -39,11 +39,11 @@ - ffmpeg_output_dir = get_output_dir(SOURCE_ROOT, target_arch, 'ffmpeg') + ffmpeg_output_dir = get_output_dir(SOURCE_ROOT, target_arch, 'static_library') for binary in binaries: - shutil.copy2(os.path.join(ffmpeg_output_dir, binary), target_dir) + ninja.copy(os.path.join(ffmpeg_output_dir, binary), target_dir) --- a/script/update +++ b/script/update -@@ -19,7 +19,7 @@ VENDOR_DIR = os.path.join(SOURCE_ROOT, 'vendor') +@@ -17,7 +17,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') Modified: libchromiumcontent-use-system-tools.patch =================================================================== --- libchromiumcontent-use-system-tools.patch 2018-01-26 10:57:02 UTC (rev 287124) +++ libchromiumcontent-use-system-tools.patch 2018-01-26 10:59:01 UTC (rev 287125) @@ -9,11 +9,22 @@ if sys.platform == 'win32': NINJA = '{0}.exe'.format(NINJA) +--- a/script/create-dist ++++ b/script/create-dist +@@ -29,7 +29,7 @@ + MAIN_DIR = os.path.join(DIST_DIR, 'main') + DIST_SRC_DIR = os.path.join(MAIN_DIR, 'src') + +-NINJA = os.path.join(VENDOR_DIR, 'depot_tools', 'ninja') ++NINJA = 'ninja' + if sys.platform == 'win32': + NINJA = '{0}.exe'.format(NINJA) + --- a/script/update +++ b/script/update -@@ -39,16 +39,14 @@ def main(): - else: - print "Skipping Chromium Source Tarball Download" +@@ -58,10 +58,10 @@ def main(): + git_cache = args.git_cache or os.getenv('LIBCHROMIUMCONTENT_GIT_CACHE', '') + gclient_sync(chromium_version(), args.clean, git_cache) - if sys.platform == 'linux2': - install_sysroot() @@ -25,14 +36,16 @@ + # update_toolchain_json() target_arch = args.target_arch + if target_arch == 'arm64': +@@ -69,7 +69,6 @@ def main(): + return (apply_patches() or copy_chromiumcontent_files() or - update_clang() or -- update_gn() or run_gn(target_arch, args.defines)) -@@ -192,7 +190,7 @@ +@@ -205,7 +204,7 @@ def run_gn(target_arch, defines): if sys.platform in ['win32', 'cygwin']: gn = os.path.join(SRC_DIR, 'buildtools', 'win', 'gn.exe') elif sys.platform == 'linux2': Added: no-whole-archive.patch =================================================================== --- no-whole-archive.patch (rev 0) +++ no-whole-archive.patch 2018-01-26 10:59:01 UTC (rev 287125) @@ -0,0 +1,22 @@ +--- a/brightray/brightray.gyp ++++ b/brightray/brightray.gyp +@@ -41,14 +41,13 @@ + 'conditions': [ + # Link with libraries of libchromiumcontent. + ['OS=="linux" and libchromiumcontent_component==0', { +- # On Linux we have to use "--whole-archive" to force executable +- # to include all symbols, otherwise we will have plenty of ++ # On Linux we have to use "--start-group" or we will have plenty of + # unresolved symbols errors. +- 'direct_dependent_settings': { +- 'ldflags': [ +- '-Wl,--whole-archive', ++ 'link_settings': { ++ 'libraries': [ ++ '-Wl,--start-group', + '<@(libchromiumcontent_libraries)', +- '-Wl,--no-whole-archive', ++ '-Wl,--end-group' + ], + } + }, { # (Release build on Linux) Deleted: use-system-clang.patch =================================================================== --- use-system-clang.patch 2018-01-26 10:57:02 UTC (rev 287124) +++ use-system-clang.patch 2018-01-26 10:59:01 UTC (rev 287125) @@ -1,13 +0,0 @@ ---- a/script/bootstrap.py -+++ b/script/bootstrap.py -@@ -165,8 +165,8 @@ def update_node_modules(dirname, env=None): - if env is None: - env = os.environ.copy() - if PLATFORM == 'linux': -- # Use prebuilt clang for building native modules. -- set_clang_env(env) -+ env['CC'] = 'clang' -+ env['CXX'] = 'clang++' - env['npm_config_clang'] = '1' - with scoped_cwd(dirname): - args = [NPM, 'install'] Modified: use-system-ffmpeg.patch =================================================================== --- use-system-ffmpeg.patch 2018-01-26 10:57:02 UTC (rev 287124) +++ use-system-ffmpeg.patch 2018-01-26 10:59:01 UTC (rev 287125) @@ -1,6 +1,17 @@ +--- a/brightray/brightray.gyp ++++ b/brightray/brightray.gyp +@@ -130,8 +130,6 @@ + }, { + 'link_settings': { + 'libraries': [ +- # Link with ffmpeg. +- '<(libchromiumcontent_dir)/libffmpeg.so', + # Following libraries are required by libchromiumcontent: + '-lasound', + '-lcap', --- a/electron.gyp +++ b/electron.gyp -@@ -191,7 +191,6 @@ +@@ -197,7 +197,6 @@ }, { 'copied_libraries': [ '<(PRODUCT_DIR)/lib/libnode.so',