summaryrefslogtreecommitdiff
path: root/dev-util/electron/files/electron-1.6.15.patch
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-12-17 09:07:15 +0000
committerV3n3RiX <venerix@redcorelinux.org>2017-12-17 09:07:15 +0000
commit9bd54251864651f49e673a08aec9ef79cfe08f04 (patch)
treebac28788ab54849c5d28edb190a687167737e736 /dev-util/electron/files/electron-1.6.15.patch
parent6b933047f46efec1aa747570f945344254227457 (diff)
gentoo resync : 17.12.2017
Diffstat (limited to 'dev-util/electron/files/electron-1.6.15.patch')
-rw-r--r--dev-util/electron/files/electron-1.6.15.patch556
1 files changed, 0 insertions, 556 deletions
diff --git a/dev-util/electron/files/electron-1.6.15.patch b/dev-util/electron/files/electron-1.6.15.patch
deleted file mode 100644
index 9d74753fc6d3..000000000000
--- a/dev-util/electron/files/electron-1.6.15.patch
+++ /dev/null
@@ -1,556 +0,0 @@
-From 8aa9ca32e88f7b6e66ded532d3110f4e84e99a9b Mon Sep 17 00:00:00 2001
-From: Elvis Pranskevichus <elvis@magic.io>
-Date: Mon, 8 Feb 2016 15:16:40 -0500
-Subject: [PATCH] electron build fixes
-
----
- common.gypi | 70 ++++++++++++++++++++++++++++++++++-----
- electron.gyp | 70 +++++++++++++++++++++++++++++++--------
- toolchain.gypi | 76 +++++++++++++++++--------------------------
- tools/ar-flags.py | 15 +++++++++
- tools/atom_source_root.py | 5 +++
- tools/browserify.py | 24 ++++++++++++++
- tools/get-endianness.py | 4 +++
- tools/js2asar.py | 13 ++++----
- tools/list-browserify-deps.py | 3 +-
- 9 files changed, 204 insertions(+), 76 deletions(-)
- create mode 100644 tools/ar-flags.py
- create mode 100644 tools/atom_source_root.py
- create mode 100644 tools/browserify.py
- create mode 100644 tools/get-endianness.py
-
-diff --git a/common.gypi b/common.gypi
-index 7c1bf366a..7892926eb 100644
---- a/common.gypi
-+++ b/common.gypi
-@@ -2,6 +2,7 @@
- 'includes': [
- 'toolchain.gypi',
- 'vendor/brightray/brightray.gypi',
-+ 'vendor/node/common.gypi',
- ],
- 'variables': {
- # Tell crashpad to build as external project.
-@@ -11,31 +12,44 @@
- 'chromeos': 0,
- # Reflects node's config.gypi.
- 'component%': 'static_library',
-- 'python': 'python',
-+ 'python%': 'python',
- 'openssl_fips': '',
- 'openssl_no_asm': 1,
-+
-+ 'host_arch': '<!(python <(DEPTH)/chromium/v8/gypfiles/detect_v8_host_arch.py)',
-+
-+ # ICU configuration for Node.
-+ # Note: the use of icu-system.gyp does not necessarily
-+ # indicate that the system ICU will be used, it merely
-+ # disables the use of the version bundled with Node.
-+ 'icu_gyp_path': 'tools/icu/icu-system.gyp',
-+ 'icu_small': 'false',
-+
- 'use_openssl_def': 0,
- 'OPENSSL_PRODUCT': 'libopenssl.a',
-- 'node_release_urlbase': 'https://atom.io/download/atom-shell',
-- 'node_byteorder': '<!(node <(DEPTH)/tools/get-endianness.js)',
-+ 'node_release_urlbase': 'https://atom.io/download/electron',
-+ 'node_byteorder': '<!(python <(DEPTH)/tools/get-endianness.py)',
- 'node_target_type': 'shared_library',
-+ 'node_module_version': '',
- 'node_install_npm': 'false',
- 'node_prefix': '',
- 'node_shared': 'true',
- 'node_shared_cares': 'false',
-- 'node_shared_http_parser': 'false',
-- 'node_shared_libuv': 'false',
-- 'node_shared_openssl': 'false',
- 'node_shared_v8': 'true',
-- 'node_shared_zlib': 'false',
-+ 'node_shared_http_parser': 'true',
-+ # There are ABI-incompatible modifications to libuv
-+ 'node_shared_libuv': 'false',
-+ 'node_shared_openssl': 'true',
-+ 'node_shared_zlib': 'true',
- 'node_tag': '',
- 'node_use_dtrace': 'false',
- 'node_use_etw': 'false',
- 'node_use_mdb': 'false',
- 'node_use_openssl': 'true',
- 'node_use_perfctr': 'false',
-- 'node_use_v8_platform': 'false',
-+ 'node_use_v8_platform': 'true',
- 'node_use_bundled_v8': 'false',
-+ 'node_v8_path': '<(DEPTH)/chromium/v8/',
- 'node_enable_d8': 'false',
- 'uv_library': 'static_library',
- 'uv_parent_path': 'vendor/node/deps/uv',
-@@ -44,10 +58,17 @@
- 'v8_postmortem_support': 'false',
- 'v8_enable_i18n_support': 'false',
- 'v8_inspector': 'false',
-+ 'v8_host_byteorder': '<!(python <(DEPTH)/tools/get-endianness.py)',
-+ 'v8_use_snapshot': 'true',
-+ 'v8_use_external_startup_data': 1,
- },
- # Settings to compile node under Windows.
- 'target_defaults': {
- 'target_conditions': [
-+ ['_target_name in ["icuuc", "icui18n"]', {
-+ 'cflags_cc!': ['-fno-rtti']
-+ }],
-+
- ['_target_name in ["libuv", "http_parser", "openssl", "openssl-cli", "cares", "node", "zlib"]', {
- 'msvs_disabled_warnings': [
- 4003, # not enough actual parameters for macro 'V'
-@@ -128,6 +149,20 @@
- ],
- }],
- ['_target_name=="node"', {
-+ 'cflags!': [
-+ '-fvisibility=hidden',
-+ '-fdata-sections',
-+ '-ffunction-sections',
-+ ],
-+ 'cflags_cc!': [
-+ '-fvisibility-inlines-hidden',
-+ ],
-+ 'libraries': [
-+ '-lz',
-+ '-lhttp_parser',
-+ '-lcrypto',
-+ '-lssl',
-+ ],
- 'include_dirs': [
- '<(libchromiumcontent_src_dir)',
- '<(libchromiumcontent_src_dir)/third_party/icu/source/common',
-@@ -167,7 +202,9 @@
- '-Wl,--no-whole-archive',
- ],
- }, {
-- 'libraries': [ '<@(libchromiumcontent_v8_libraries)' ],
-+ 'libraries': [
-+ '<@(libchromiumcontent_v8_libraries)',
-+ ],
- }],
- ],
- }],
-@@ -228,6 +265,21 @@
- }], # OS=="win"
- ],
- }],
-+ ['_target_name=="shell_runner_host_lib"', {
-+ 'conditions': [
-+ ['icu_use_data_file_flag==1', {
-+ 'defines': ['ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE'],
-+ }, { # else icu_use_data_file_flag !=1
-+ 'conditions': [
-+ ['OS=="win"', {
-+ 'defines': ['ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_SHARED'],
-+ }, {
-+ 'defines': ['ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC'],
-+ }],
-+ ],
-+ }],
-+ ],
-+ }],
- ],
- 'msvs_cygwin_shell': 0, # Strangely setting it to 1 would make building under cygwin fail.
- 'msvs_disabled_warnings': [
-diff --git a/electron.gyp b/electron.gyp
-index f82de1e1f..2c398fe75 100644
---- a/electron.gyp
-+++ b/electron.gyp
-@@ -191,7 +191,7 @@
- }, {
- 'copied_libraries': [
- '<(PRODUCT_DIR)/lib/libnode.so',
-- '<(libchromiumcontent_dir)/libffmpeg.so',
-+ '<@(libchromiumcontent_shared_v8_libraries)',
- ],
- }],
- ],
-@@ -244,8 +244,8 @@
- '<@(lib_sources)',
- ],
- 'include_dirs': [
-- '.',
- 'chromium_src',
-+ '.',
- 'vendor/brightray',
- 'vendor/native_mate',
- # libicu headers shim.
-@@ -255,7 +255,6 @@
- '<(SHARED_INTERMEDIATE_DIR)',
- # Include directories for uv and node.
- 'vendor/node/src',
-- 'vendor/node/deps/http_parser',
- 'vendor/node/deps/uv/include',
- # The `node.h` is using `#include"v8.h"`.
- '<(libchromiumcontent_src_dir)/v8/include',
-@@ -344,11 +343,12 @@
- '<@(lib_sources_nss)',
- ],
- 'link_settings': {
-+ 'libraries': [ '<@(libchromiumcontent_v8_libraries)' ],
- 'ldflags': [
- # Make binary search for libraries under current directory, so we
- # don't have to manually set $LD_LIBRARY_PATH:
- # http://serverfault.com/questions/279068/cant-find-so-in-the-same-directory-as-the-executable
-- '-rpath \$$ORIGIN',
-+ '-Wl,-rpath=\$$ORIGIN/',
- # Make native module dynamic loading work.
- '-rdynamic',
- ],
-@@ -370,6 +370,9 @@
- {
- 'target_name': 'js2asar',
- 'type': 'none',
-+ 'dependencies': [
-+ 'nodebin'
-+ ],
- 'actions': [
- {
- 'action_name': 'js2asar',
-@@ -391,6 +394,7 @@
- 'action': [
- 'python',
- 'tools/js2asar.py',
-+ '<(PRODUCT_DIR)/nodebin',
- '<@(_outputs)',
- 'lib',
- '<@(_inputs)',
-@@ -401,6 +405,9 @@
- {
- 'target_name': 'app2asar',
- 'type': 'none',
-+ 'dependencies': [
-+ 'nodebin'
-+ ],
- 'actions': [
- {
- 'action_name': 'app2asar',
-@@ -422,6 +429,7 @@
- 'action': [
- 'python',
- 'tools/js2asar.py',
-+ '<(PRODUCT_DIR)/nodebin',
- '<@(_outputs)',
- 'default_app',
- '<@(_inputs)',
-@@ -447,6 +455,7 @@
- 'dependencies': [
- # depend on this target to ensure the '<(js2c_input_dir)' is created
- 'atom_js2c_copy',
-+ 'nodebin'
- ],
- 'variables': {
- 'sandbox_args': [
-@@ -476,11 +485,9 @@
- '<(js2c_input_dir)/preload_bundle.js',
- ],
- 'action': [
-- 'npm',
-- 'run',
-- '--silent',
-- 'browserify',
-- '--',
-+ 'python',
-+ 'tools/browserify.py',
-+ '<(PRODUCT_DIR)/nodebin',
- '<@(sandbox_args)',
- '-o',
- '<@(_outputs)',
-@@ -495,12 +502,11 @@
- '<(js2c_input_dir)/isolated_bundle.js',
- ],
- 'action': [
-- 'npm',
-- 'run',
-- '--silent',
-- 'browserify',
-- '--',
-+ 'python',
-+ 'tools/browserify.py',
-+ '<(PRODUCT_DIR)/nodebin',
- '<@(isolated_args)',
-+ 'lib/isolated_renderer/init.js',
- '-o',
- '<@(_outputs)',
- ],
-@@ -535,6 +541,42 @@
- }
- ],
- }, # target atom_js2c
-+ {
-+ 'target_name': 'nodebin',
-+ 'type': 'executable',
-+ 'defines': [
-+ 'ELECTRON_NODE_BUILD_NO_ASAR'
-+ ],
-+ 'sources': [
-+ 'vendor/node/src/node_main.cc',
-+ ],
-+ 'dependencies': [
-+ 'vendor/node/node.gyp:node',
-+ ],
-+ 'include_dirs': [
-+ '.',
-+ '<(node_v8_path)/include',
-+ 'vendor/native_mate',
-+ # Include atom_natives.h.
-+ '<(SHARED_INTERMEDIATE_DIR)',
-+ # Include directories for uv and node.
-+ 'vendor/node/src',
-+ 'vendor/node/deps/uv/include',
-+ '<(libchromiumcontent_src_dir)',
-+ # The `node.h` is using `#include"v8.h"`.
-+ '<(libchromiumcontent_src_dir)/v8/include',
-+ # The `node.h` is using `#include"ares.h"`.
-+ 'vendor/node/deps/cares/include',
-+ ],
-+ 'link_settings': {
-+ 'libraries': [ '<@(libchromiumcontent_v8_libraries)' ],
-+ 'ldflags': [
-+ '-Wl,-rpath=\$$ORIGIN/',
-+ # Make native module dynamic loading work.
-+ '-rdynamic',
-+ ],
-+ },
-+ }, # target nodebin
- ],
- 'conditions': [
- ['OS=="mac"', {
-diff --git a/toolchain.gypi b/toolchain.gypi
-index 1c5f8a713..c20ed1a0f 100644
---- a/toolchain.gypi
-+++ b/toolchain.gypi
-@@ -16,7 +16,7 @@
- 'arm_neon%': 1,
-
- # Abosulte path to source root.
-- 'source_root%': '<!(node <(DEPTH)/tools/atom_source_root.js)',
-+ 'source_root%': '<!(python <(DEPTH)/tools/atom_source_root.py)',
- },
-
- # Copy conditionally-set variables out one scope.
-@@ -40,34 +40,6 @@
- 'mac_sdk%': '<!(python <(DEPTH)/tools/mac/find_sdk.py <(mac_sdk_min))',
- }],
-
-- ['OS=="linux"', {
-- 'variables': {
-- # The system libdir used for this ABI.
-- 'system_libdir%': 'lib',
--
-- # Setting the path to sysroot.
-- 'conditions': [
-- ['target_arch=="arm"', {
-- # sysroot needs to be an absolute path otherwise it generates
-- # incorrect results when passed to pkg-config
-- 'sysroot%': '<(source_root)/vendor/debian_wheezy_arm-sysroot',
-- }],
-- ['target_arch=="ia32"', {
-- 'sysroot%': '<(source_root)/vendor/debian_wheezy_i386-sysroot',
-- }],
-- ['target_arch=="x64"', {
-- 'sysroot%': '<(source_root)/vendor/debian_wheezy_amd64-sysroot',
-- }],
-- ],
-- },
-- # Copy conditionally-set variables out one scope.
-- 'sysroot%': '<(sysroot)',
-- 'system_libdir%': '<(system_libdir)',
--
-- # Redirect pkg-config to search from sysroot.
-- 'pkg-config%': '<(source_root)/tools/linux/pkg-config-wrapper "<(sysroot)" "<(target_arch)" "<(system_libdir)"',
-- }],
--
- # Set default compiler flags depending on ARM version.
- ['arm_version==6', {
- 'arm_arch%': 'armv6',
-@@ -136,23 +108,6 @@
- },
- }],
-
-- # Setup sysroot environment.
-- ['OS=="linux" and target_arch in ["arm", "ia32", "x64"]', {
-- 'target_defaults': {
-- 'target_conditions': [
-- ['_toolset=="target"', {
-- 'cflags': [
-- '--sysroot=<(sysroot)',
-- ],
-- 'ldflags': [
-- '--sysroot=<(sysroot)',
-- '<!(<(source_root)/tools/linux/sysroot_ld_path.sh <(sysroot))',
-- ],
-- }]
-- ],
-- },
-- }], # sysroot
--
- # Setup cross-compilation on Linux.
- ['OS=="linux"', {
- 'target_defaults': {
-@@ -179,6 +134,35 @@
- 'ldflags': [
- '-m64',
- ],
-+ 'conditions': [
-+ ['use_lto==1 and clang==0', {
-+ 'cflags': [
-+ '-fno-fat-lto-objects',
-+ '-fuse-linker-plugin',
-+ '-flto=4',
-+ '--param=lto-partitions=1',
-+ ],
-+ 'ldflags': [
-+ '-fno-fat-lto-objects',
-+ '-fuse-linker-plugin',
-+ '-flto=4',
-+ '--param=lto-partitions=1',
-+ ],
-+ 'arflags': [
-+ '<!@(python <(DEPTH)/tools/ar-flags.py)',
-+ ]
-+ }],
-+ ['use_lto==1 and clang==1', {
-+ 'cflags': [
-+ '-flto',
-+ '-fwhole-program-vtables'
-+ ],
-+ 'ldflags': [
-+ '-flto',
-+ '-fwhole-program-vtables'
-+ ],
-+ }],
-+ ],
- }], # target_arch=="x64" and _toolset=="target"
- ['target_arch=="arm" and _toolset=="target"', {
- 'conditions': [
-diff --git a/tools/ar-flags.py b/tools/ar-flags.py
-new file mode 100644
-index 000000000..80b338a6e
---- /dev/null
-+++ b/tools/ar-flags.py
-@@ -0,0 +1,15 @@
-+#!/usr/bin/env python
-+
-+import os
-+import subprocess
-+
-+if __name__ == '__main__':
-+ cc = os.environ.get('CC', '/usr/bin/cc')
-+ gcc_version = subprocess.check_output(
-+ [cc, '-dumpversion'], universal_newlines=True).strip(' \n')
-+
-+ lto_plugin = os.path.join(
-+ '/usr/libexec/gcc/x86_64-pc-linux-gnu/', gcc_version,
-+ 'liblto_plugin.so')
-+
-+ print('--plugin={}'.format(lto_plugin))
-diff --git a/tools/atom_source_root.py b/tools/atom_source_root.py
-new file mode 100644
-index 000000000..316e99701
---- /dev/null
-+++ b/tools/atom_source_root.py
-@@ -0,0 +1,5 @@
-+#!/usr/bin/env python
-+
-+import os.path
-+
-+print(os.path.abspath(os.path.dirname(os.path.dirname(__file__))))
-diff --git a/tools/browserify.py b/tools/browserify.py
-new file mode 100644
-index 000000000..15472c953
---- /dev/null
-+++ b/tools/browserify.py
-@@ -0,0 +1,24 @@
-+#!/usr/bin/env python
-+
-+import os
-+import subprocess
-+import sys
-+
-+SOURCE_ROOT = os.path.dirname(os.path.dirname(__file__))
-+
-+
-+def main():
-+ node = sys.argv[1]
-+ args = sys.argv[2:]
-+
-+ call_browserify(node, args)
-+
-+
-+def call_browserify(node, args):
-+ browserify = os.path.join(
-+ SOURCE_ROOT, 'node_modules', '.bin', 'browserify')
-+ subprocess.check_call([node, browserify] + args)
-+
-+
-+if __name__ == '__main__':
-+ sys.exit(main())
-diff --git a/tools/get-endianness.py b/tools/get-endianness.py
-new file mode 100644
-index 000000000..31507936f
---- /dev/null
-+++ b/tools/get-endianness.py
-@@ -0,0 +1,4 @@
-+#!/usr/bin/env python
-+
-+import sys
-+print(sys.byteorder)
-diff --git a/tools/js2asar.py b/tools/js2asar.py
-index adad1751e..ca7686893 100755
---- a/tools/js2asar.py
-+++ b/tools/js2asar.py
-@@ -11,13 +11,14 @@ SOURCE_ROOT = os.path.dirname(os.path.dirname(__file__))
-
-
- def main():
-- archive = sys.argv[1]
-- folder_name = sys.argv[2]
-- source_files = sys.argv[3:]
-+ node = sys.argv[1]
-+ archive = sys.argv[2]
-+ folder_name = sys.argv[3]
-+ source_files = sys.argv[4:]
-
- output_dir = tempfile.mkdtemp()
- copy_files(source_files, output_dir)
-- call_asar(archive, os.path.join(output_dir, folder_name))
-+ call_asar(node, archive, os.path.join(output_dir, folder_name))
- shutil.rmtree(output_dir)
-
-
-@@ -28,11 +29,11 @@ def copy_files(source_files, output_dir):
- shutil.copy2(source_file, output_path)
-
-
--def call_asar(archive, output_dir):
-+def call_asar(node, archive, output_dir):
- asar = os.path.join(SOURCE_ROOT, 'node_modules', '.bin', 'asar')
- if sys.platform in ['win32', 'cygwin']:
- asar += '.cmd'
-- subprocess.check_call([asar, 'pack', output_dir, archive])
-+ subprocess.check_call([node, asar, 'pack', output_dir, archive])
-
-
- def safe_mkdir(path):
-diff --git a/tools/list-browserify-deps.py b/tools/list-browserify-deps.py
-index c25007d2a..bbd921bc6 100755
---- a/tools/list-browserify-deps.py
-+++ b/tools/list-browserify-deps.py
-@@ -9,7 +9,8 @@ BROWSERIFY = os.path.join(SOURCE_ROOT, 'node_modules', '.bin', 'browserify')
- if sys.platform == 'win32':
- BROWSERIFY += '.cmd'
-
--deps = subprocess.check_output([BROWSERIFY, '--list'] + sys.argv[1:])
-+deps = subprocess.check_output([BROWSERIFY, '--list'] + sys.argv[1:],
-+ universal_newlines=True)
- for dep in deps.split('\n'):
- if dep:
- dep = os.path.relpath(dep, SOURCE_ROOT)
---
-2.14.3
-