summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMCApollo <34170230+MCApollo@users.noreply.github.com>2019-05-28 01:07:05 +0000
committerMCApollo <34170230+MCApollo@users.noreply.github.com>2019-05-28 01:07:05 +0000
commit76428fb58ef1a05dbf3ca528d4d72a902816893b (patch)
tree151f81e5190eb2ef847f0ba56ca5339f92630ca9
parent8caa3226f25510cdd1f93420c7ff6d5ac6ad0eb2 (diff)
Release candidate
-rw-r--r--data/node/README8
-rw-r--r--data/node/_metadata/version2
-rw-r--r--data/node/configure-ios.diff-339
-rw-r--r--data/node/install.diff26
-rw-r--r--data/node/make.sh13
5 files changed, 44 insertions, 344 deletions
diff --git a/data/node/README b/data/node/README
new file mode 100644
index 000000000..7d5c4c249
--- /dev/null
+++ b/data/node/README
@@ -0,0 +1,8 @@
+In the case of linux, Clang 8 is required for the host.
+TODO (if bored): fix the usage of libs for target on host toolchain.
+I've disable the need for it now.
+
+TODO: Set all values uv cannot detect, like
+os.cpus, os.hwfreq
+
+Knock down one language, go to the next.
diff --git a/data/node/_metadata/version b/data/node/_metadata/version
index 685332623..9c028e25d 100644
--- a/data/node/_metadata/version
+++ b/data/node/_metadata/version
@@ -1 +1 @@
-12.2.0
+12.3.1
diff --git a/data/node/configure-ios.diff- b/data/node/configure-ios.diff-
deleted file mode 100644
index e104a4026..000000000
--- a/data/node/configure-ios.diff-
+++ /dev/null
@@ -1,339 +0,0 @@
-diff -ur node-v12.3.1/common.gypi node-v12.3.1+iPhone/common.gypi
---- node-v12.3.1/common.gypi 2019-05-22 12:21:51.000000000 +0000
-+++ node-v12.3.1+iPhone/common.gypi 2019-05-24 23:00:22.300728306 +0000
-@@ -95,7 +95,7 @@
- 'os_posix': 1,
- 'v8_postmortem_support%': 1,
- }],
-- ['OS == "mac"', {
-+ ['OS == "mac" or OS=="ios"', {
- 'obj_dir%': '<(PRODUCT_DIR)/obj.target',
- 'v8_base': '<(PRODUCT_DIR)/libv8_base.a',
- }],
-@@ -104,7 +104,7 @@
- }, {
- 'openssl_product': '<(STATIC_LIB_PREFIX)openssl<(STATIC_LIB_SUFFIX)',
- }],
-- ['OS=="mac"', {
-+ ['OS=="mac" or OS=="ios"', {
- 'clang%': 1,
- }],
- ],
-@@ -172,7 +172,7 @@
- # pull in V8's postmortem metadata
- 'ldflags': [ '-Wl,-z,allextract' ]
- }],
-- ['OS!="mac" and OS!="win"', {
-+ ['OS!="mac" and OS!="ios" and OS!="win"', {
- 'cflags': [ '-fno-omit-frame-pointer' ],
- }],
- ['OS=="linux"', {
-@@ -293,7 +293,7 @@
- [ 'target_arch=="arm64"', {
- 'msvs_configuration_platform': 'arm64',
- }],
-- ['asan == 1 and OS != "mac"', {
-+ ['asan == 1 and (OS != "mac" or OS != "ios")', {
- 'cflags+': [
- '-fno-omit-frame-pointer',
- '-fsanitize=address',
-@@ -302,7 +302,7 @@
- 'cflags!': [ '-fomit-frame-pointer' ],
- 'ldflags': [ '-fsanitize=address' ],
- }],
-- ['asan == 1 and OS == "mac"', {
-+ ['asan == 1 and (OS == "mac" or OS == "ios")', {
- 'xcode_settings': {
- 'OTHER_CFLAGS+': [
- '-fno-omit-frame-pointer',
-@@ -425,6 +425,21 @@
- }],
- ],
- }],
-+ ['OS=="ios"', {
-+ 'defines': [
-+ '__IPHONEOS__',
-+ 'TARGET_OS_IPHONE',
-+ 'V8_TARGET_OS_IPHONE',
-+ '_DARWIN_USE_64_BIT_INODE',
-+ '__AARCH64EL__',
-+ '_M_ARM64',
-+ ],
-+ 'cflags': [
-+ '-fno-exceptions',
-+ '-fno-rtti',
-+ '-fno-strict-aliasing'
-+ ],
-+ }],
- ['OS=="mac"', {
- 'defines': ['_DARWIN_USE_64_BIT_INODE=1'],
- 'xcode_settings': {
-@@ -436,7 +451,6 @@
- 'GCC_ENABLE_CPP_RTTI': 'NO', # -fno-rtti
- 'GCC_ENABLE_PASCAL_STRINGS': 'NO', # No -mpascal-strings
- 'PREBINDING': 'NO', # No -Wl,-prebind
-- 'MACOSX_DEPLOYMENT_TARGET': '10.10', # -mmacosx-version-min=10.10
- 'USE_HEADERMAP': 'NO',
- 'OTHER_CFLAGS': [
- '-fno-strict-aliasing',
-@@ -465,6 +479,9 @@
- ['target_arch=="x64"', {
- 'xcode_settings': {'ARCHS': ['x86_64']},
- }],
-+ [ 'target_arch=="arm64"', {
-+ 'xcode_settings': {'ARCHS': ['arm64']},
-+ }],
- ['clang==1', {
- 'xcode_settings': {
- 'GCC_VERSION': 'com.apple.compilers.llvm.clang.1_0',
-diff -ur node-v12.3.1/configure.py node-v12.3.1+iPhone/configure.py
---- node-v12.3.1/configure.py 2019-05-22 12:21:51.000000000 +0000
-+++ node-v12.3.1+iPhone/configure.py 2019-05-24 23:00:22.300728306 +0000
-@@ -44,7 +44,7 @@
- parser = optparse.OptionParser()
-
- valid_os = ('win', 'mac', 'solaris', 'freebsd', 'openbsd', 'linux',
-- 'android', 'aix', 'cloudabi')
-+ 'ios', 'android', 'aix', 'cloudabi')
- valid_arch = ('arm', 'arm64', 'ia32', 'ppc',
- 'ppc64', 'x32','x64', 'x86', 'x86_64', 's390', 's390x')
- valid_arm_float_abi = ('soft', 'softfp', 'hard')
-@@ -908,6 +908,8 @@
- def configure_node(o):
- if options.dest_os == 'android':
- o['variables']['OS'] = 'android'
-+ if options.dest_os == 'ios':
-+ o['variables']['OS'] = 'ios'
- o['variables']['node_prefix'] = options.prefix
- o['variables']['node_install_npm'] = b(not options.without_npm)
- o['variables']['node_report'] = b(not options.without_report)
-@@ -1069,12 +1071,7 @@
- o['variables']['node_shared'] = b(options.shared)
- node_module_version = getmoduleversion.get_version()
-
-- if sys.platform == 'darwin':
-- shlib_suffix = '%s.dylib'
-- elif sys.platform.startswith('aix'):
-- shlib_suffix = '%s.a'
-- else:
-- shlib_suffix = 'so.%s'
-+ shlib_suffix = '%s.dylib'
-
- shlib_suffix %= node_module_version
- o['variables']['node_module_version'] = int(node_module_version)
-diff -ur node-v12.3.1/deps/brotli/brotli.gyp node-v12.3.1+iPhone/deps/brotli/brotli.gyp
---- node-v12.3.1/deps/brotli/brotli.gyp 2019-05-22 12:21:51.000000000 +0000
-+++ node-v12.3.1+iPhone/deps/brotli/brotli.gyp 2019-05-24 23:00:22.300728306 +0000
-@@ -15,7 +15,7 @@
- 'OS_FREEBSD'
- ]
- }],
-- ['OS=="mac"', {
-+ ['OS=="mac" or OS=="ios"', {
- 'defines': [
- 'OS_MACOSX'
- ]
-diff -ur node-v12.3.1/deps/cares/cares.gyp node-v12.3.1+iPhone/deps/cares/cares.gyp
---- node-v12.3.1/deps/cares/cares.gyp 2019-05-22 12:21:51.000000000 +0000
-+++ node-v12.3.1+iPhone/deps/cares/cares.gyp 2019-05-24 23:00:22.300728306 +0000
-@@ -145,7 +145,7 @@
- 'include_dirs': [ 'config/linux' ],
- 'sources': [ 'config/linux/ares_config.h' ]
- }],
-- [ 'OS=="mac"', {
-+ [ 'OS=="mac" or OS=="ios"', {
- 'include_dirs': [ 'config/darwin' ],
- 'sources': [ 'config/darwin/ares_config.h' ]
- }],
-diff -ur node-v12.3.1/deps/npm/node_modules/node-gyp/addon.gypi node-v12.3.1+iPhone/deps/npm/node_modules/node-gyp/addon.gypi
---- node-v12.3.1/deps/npm/node_modules/node-gyp/addon.gypi 2019-05-22 12:21:51.000000000 +0000
-+++ node-v12.3.1+iPhone/deps/npm/node_modules/node-gyp/addon.gypi 2019-05-24 23:00:22.304728309 +0000
-@@ -79,7 +79,7 @@
- ],
-
- 'conditions': [
-- [ 'OS=="mac"', {
-+ [ 'OS=="mac" or OS=="ios"', {
- 'defines': [
- '_DARWIN_USE_64_BIT_INODE=1'
- ],
-diff -ur node-v12.3.1/deps/npm/node_modules/node-gyp/gyp/tools/emacs/testdata/media.gyp node-v12.3.1+iPhone/deps/npm/node_modules/node-gyp/gyp/tools/emacs/testdata/media.gyp
---- node-v12.3.1/deps/npm/node_modules/node-gyp/gyp/tools/emacs/testdata/media.gyp 2019-05-22 12:21:51.000000000 +0000
-+++ node-v12.3.1+iPhone/deps/npm/node_modules/node-gyp/gyp/tools/emacs/testdata/media.gyp 2019-05-24 23:00:22.304728309 +0000
-@@ -545,12 +545,12 @@
- 'base/simd/scale_yuv_to_rgb_sse2_x64.asm',
- ],
- }],
-- [ 'os_posix == 1 and OS != "mac" and OS != "android"', {
-+ [ 'os_posix == 1 and OS != "mac" and OS != "ios" and OS != "android"', {
- 'cflags': [
- '-msse2',
- ],
- }],
-- [ 'OS == "mac"', {
-+ [ 'OS == "mac" or OS == "ios"', {
- 'configurations': {
- 'Debug': {
- 'xcode_settings': {
-@@ -572,7 +572,7 @@
- ],
- },
- }],
-- [ 'OS=="mac"', {
-+ [ 'OS=="mac" or OS=="ios"', {
- 'variables': {
- 'yasm_flags': [
- '-DPREFIX',
-@@ -582,7 +582,7 @@
- ],
- },
- }],
-- [ 'os_posix==1 and OS!="mac"', {
-+ [ 'os_posix==1 and OS!="mac" and OS!="ios"', {
- 'variables': {
- 'conditions': [
- [ 'target_arch=="ia32"', {
-@@ -710,7 +710,7 @@
- 'webm/webm_parser_unittest.cc',
- ],
- 'conditions': [
-- ['os_posix==1 and OS!="mac"', {
-+ ['os_posix==1 and OS!="mac" and OS!="ios"', {
- 'conditions': [
- ['linux_use_tcmalloc==1', {
- 'dependencies': [
-@@ -930,7 +930,7 @@
- },
- ],
- }],
-- ['os_posix == 1 and OS != "mac" and OS != "android"', {
-+ ['os_posix == 1 and OS != "mac" and OS != "ios" and OS != "android"', {
- 'targets': [
- {
- 'target_name': 'player_x11',
-@@ -1064,7 +1064,7 @@
- 'filters/pipeline_integration_test_base.cc',
- ],
- 'conditions': [
-- ['os_posix==1 and OS!="mac"', {
-+ ['os_posix==1 and OS!="mac" and OS!="ios"', {
- 'conditions': [
- ['linux_use_tcmalloc==1', {
- 'dependencies': [
-diff -ur node-v12.3.1/deps/uv/common.gypi node-v12.3.1+iPhone/deps/uv/common.gypi
---- node-v12.3.1/deps/uv/common.gypi 2019-05-22 12:21:52.000000000 +0000
-+++ node-v12.3.1+iPhone/deps/uv/common.gypi 2019-05-24 23:00:22.304728309 +0000
-@@ -168,6 +168,13 @@
- }],
- ],
- }],
-+ ['OS=="ios"', {
-+ 'cflags': [
-+ '-fno-exceptions',
-+ '-fno-rtti',
-+ '-fno-threadsafe-statics'
-+ ],
-+ }],
- ['OS=="mac"', {
- 'xcode_settings': {
- 'ALWAYS_SEARCH_USER_PATHS': 'NO',
-diff -ur node-v12.3.1/deps/uv/uv.gyp node-v12.3.1+iPhone/deps/uv/uv.gyp
---- node-v12.3.1/deps/uv/uv.gyp 2019-05-22 12:21:52.000000000 +0000
-+++ node-v12.3.1+iPhone/deps/uv/uv.gyp 2019-05-24 23:00:22.304728309 +0000
-@@ -198,7 +198,7 @@
- }],
- ],
- }],
-- ['uv_library=="shared_library" and OS!="mac" and OS!="zos"', {
-+ ['uv_library=="shared_library" and OS!="mac" and OS!="ios" and OS!="zos"', {
- # This will cause gyp to set soname
- # Must correspond with UV_VERSION_MAJOR
- # in include/uv/version.h
-diff -ur node-v12.3.1/node.gyp node-v12.3.1+iPhone/node.gyp
---- node-v12.3.1/node.gyp 2019-05-22 12:21:54.000000000 +0000
-+++ node-v12.3.1+iPhone/node.gyp 2019-05-24 23:00:22.304728309 +0000
-@@ -760,7 +760,7 @@
- '<(SHARED_INTERMEDIATE_DIR)/node_dtrace_provider.o'
- ],
- }],
-- [ 'OS!="mac" and OS!="linux"', {
-+ [ 'OS!="mac" and OS!="ios" and OS!="linux"', {
- 'sources': [
- 'src/node_dtrace_ustack.cc',
- 'src/node_dtrace_provider.cc',
-@@ -939,7 +939,7 @@
- 'target_name': 'node_dtrace_provider',
- 'type': 'none',
- 'conditions': [
-- [ 'node_use_dtrace=="true" and OS!="mac" and OS!="linux"', {
-+ [ 'node_use_dtrace=="true" and OS!="mac" and OS!="ios" and OS!="linux"', {
- 'actions': [
- {
- 'action_name': 'node_dtrace_provider_o',
-@@ -974,7 +974,7 @@
- 'target_name': 'node_dtrace_ustack',
- 'type': 'none',
- 'conditions': [
-- [ 'node_use_dtrace=="true" and OS!="mac" and OS!="linux"', {
-+ [ 'node_use_dtrace=="true" and OS!="mac" and OS!="ios" and OS!="linux"', {
- 'actions': [
- {
- 'action_name': 'node_dtrace_ustack_constants',
-diff -ur node-v12.3.1/node.gypi node-v12.3.1+iPhone/node.gypi
---- node-v12.3.1/node.gypi 2019-05-22 12:21:54.000000000 +0000
-+++ node-v12.3.1+iPhone/node.gypi 2019-05-24 23:01:07.844752503 +0000
-@@ -141,7 +141,7 @@
- },
- },
- 'conditions': [
-- ['OS!="aix" and node_shared=="false"', {
-+ ['OS!="aix" and OS!="ios" and node_shared=="false"', {
- 'ldflags': [
- '-Wl,--whole-archive,'
- '<(obj_dir)/deps/zlib/<(STATIC_LIB_PREFIX)zlib<(STATIC_LIB_SUFFIX)',
-@@ -182,7 +182,7 @@
- },
- },
- 'conditions': [
-- ['OS!="aix" and node_shared=="false"', {
-+ ['OS!="aix" and OS!="ios" and node_shared=="false"', {
- 'ldflags': [
- '-Wl,--whole-archive,'
- '<(obj_dir)/deps/uv/<(STATIC_LIB_PREFIX)uv<(STATIC_LIB_SUFFIX)',
-@@ -202,7 +202,7 @@
- 'dependencies': [ 'deps/brotli/brotli.gyp:brotli' ],
- }],
-
-- [ 'OS=="mac"', {
-+ [ 'OS=="mac" or OS=="ios"', {
- # linking Corefoundation is needed since certain OSX debugging tools
- # like Instruments require it for some features
- 'libraries': [ '-framework CoreFoundation' ],
-diff -ur node-v12.3.1/tools/v8_gypfiles/d8.gyp node-v12.3.1+iPhone/tools/v8_gypfiles/d8.gyp
---- node-v12.3.1/tools/v8_gypfiles/d8.gyp 2019-05-22 12:21:55.000000000 +0000
-+++ node-v12.3.1+iPhone/tools/v8_gypfiles/d8.gyp 2019-05-24 23:00:22.308728311 +0000
-@@ -43,7 +43,7 @@
- 'd8_js2c#host',
- ],
- }],
-- ['(OS=="linux" or OS=="mac" or OS=="freebsd" or OS=="netbsd" \
-+ ['(OS=="linux" or OS=="mac" or OS=="ios" or OS=="freebsd" or OS=="netbsd" \
- or OS=="openbsd" or OS=="solaris" or OS=="android" \
- or OS=="qnx" or OS=="aix")', {
- 'sources': [ '../src/d8-posix.cc', ]
-diff -ur node-v12.3.1/tools/v8_gypfiles/v8.gyp node-v12.3.1+iPhone/tools/v8_gypfiles/v8.gyp
---- node-v12.3.1/tools/v8_gypfiles/v8.gyp 2019-05-22 12:21:55.000000000 +0000
-+++ node-v12.3.1+iPhone/tools/v8_gypfiles/v8.gyp 2019-05-24 23:00:22.308728311 +0000
-@@ -128,6 +128,12 @@
- 'OTHER_LDFLAGS': ['-dynamiclib', '-all_load']
- },
- }],
-+ ['OS=="ios"', {
-+ 'ldflags': [
-+ '-dynamiclib',
-+ '-all_load'
-+ ],
-+ }],
- ['soname_version!=""', {
- 'product_extension': 'so.<(soname_version)',
- }],
diff --git a/data/node/install.diff b/data/node/install.diff
new file mode 100644
index 000000000..be725d702
--- /dev/null
+++ b/data/node/install.diff
@@ -0,0 +1,26 @@
+diff -ur node-v12.3.1/tools/install.py node-v12.3.1+iPhone/tools/install.py
+--- node-v12.3.1/tools/install.py 2019-05-22 12:21:55.000000000 +0000
++++ node-v12.3.1+iPhone/tools/install.py 2019-05-28 00:22:25.356341629 +0000
+@@ -134,8 +134,8 @@
+ output_file = 'lib' + output_file + '.' + variables.get('shlib_suffix')
+ # GYP will output to lib.target except on OS X, this is hardcoded
+ # in its source - see the _InstallableTargetInstallPath function.
+- if sys.platform != 'darwin':
+- output_prefix += 'lib.target/'
++# if sys.platform != 'darwin':
++# output_prefix += 'lib.target/'
+
+ if 'false' == variables.get('node_shared'):
+ action([output_prefix + output_file], 'bin/' + output_file)
+@@ -151,10 +151,7 @@
+ action(['deps/v8/tools/gdbinit'], 'share/doc/node/')
+ action(['deps/v8/tools/lldb_commands.py'], 'share/doc/node/')
+
+- if 'freebsd' in sys.platform or 'openbsd' in sys.platform:
+- action(['doc/node.1'], 'man/man1/')
+- else:
+- action(['doc/node.1'], 'share/man/man1/')
++ action(['doc/node.1'], 'share/man/man1/')
+
+ if 'true' == variables.get('node_install_npm'): npm_files(action)
+
diff --git a/data/node/make.sh b/data/node/make.sh
index da11ae85a..a7c375eaf 100644
--- a/data/node/make.sh
+++ b/data/node/make.sh
@@ -24,8 +24,13 @@ export LDFLAGS_target="${LDFLAGS}"
GYP_CROSSCOMPILE=1 \
GYP_DEFINES="v8_enable_inspector=1 target_arch=arm64 v8_target_arch=arm64 host_os=$(uname -s | sed -e 's/Linux/linux/;s/Darwin/mac/') node_v8_options='--jitless'" \
-./configure --prefix="${PKG_TAPF}" --without-snapshot --cross-compiling --dest-os=ios --dest-cpu=arm64 --without-intl --without-npm --shared-zlib --shared-cares --shared-openssl --shared
+./configure --prefix="${PKG_TAPF}" --without-snapshot --cross-compiling --dest-os=ios --dest-cpu=arm64 --without-intl --shared-zlib --shared-cares --shared-openssl --shared
-# TODO: Fix tool/install.py and the Makefile
-make BUILDTYPE=Release -j2 # Don't use pkg:make, CC_host gets overwritten
-make BUILDTYPE=Release install DESTDIR="${PKG_DEST}"
+# Don't use pkg:make, CC_host gets overwritten
+make BUILDTYPE=Release DESTCPU=arm64 install DESTDIR="${PKG_DEST}"
+
+# TODO: Fix tool/install.py and the Makefile
+if [[ ! -x "${PKG_TAPF}"/bin/node ]]; then
+ pkg: mkdir -p "${PKG_TAPF}"/bin
+ cp out/Release/node "${PKG_DEST}"/"${PKG_TAPF}"/bin
+fi