summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMCApollo <34170230+MCApollo@users.noreply.github.com>2020-05-27 00:57:51 -0500
committerMCApollo <34170230+MCApollo@users.noreply.github.com>2020-05-27 01:08:14 -0500
commit8aa826ef31578d7d1738744c506d6996be92121a (patch)
treec10a7d518f86b9eba5cf7ba7f12599307a57af88
parentabdd9a04698a4a77058d83ed0dae59d3053618f7 (diff)
Updates to NodeJS
Bugs - dyld will refuse to load a dylib with a bad id path - import patch from nodejs-mobile to fix a bad sys call error
-rw-r--r--data/nodejs/README32
-rw-r--r--data/nodejs/_metadata/version2
-rw-r--r--data/nodejs/make.sh6
-rw-r--r--data/nodejs/node-v12.17.0.tar.gz (renamed from data/nodejs/node-v12.3.1.tar.gz)bin49112048 -> 52417986 bytes
-rw-r--r--data/nodejs/nodejs-mobile-filecopy.diff28
5 files changed, 35 insertions, 33 deletions
diff --git a/data/nodejs/README b/data/nodejs/README
deleted file mode 100644
index 38aae846f..000000000
--- a/data/nodejs/README
+++ /dev/null
@@ -1,32 +0,0 @@
-MCApollo's Notes.
-
-In the case of linux, Clang 8 is required due to v8.
-
-TODO (if bored): fix the usage of libs for target on host toolchain.
-I've disable/fixed the other issue for now (mksnapshot/want_seperate_toolchain).
-
-TODO: Fix the Makefile/install.py for a smoother install.
-
-TODO: Set all values uv cannot detect, like
-os.cpus, os.hwfreq, the sysctl values are missing.
-
-TODO: Figure a less hacky way to get jitless working,
-It doesn't work as v8 claims it should work or I'm doing something wrong.
-Cleaner patches next time ^
- SIGCHLD will stop node.
-
--> Setting CS_DEBUGGED in unc0ver doesn't work as intented?
-
-Shoutouts:
--> Coolstar/PPSSP maintainers, since I borrowed PPSSP's code to set CS_DEBUGGED.
--> Shawn Presser's version of node for iOS
- He didn't try for jit it seems, Xcode just sets CS_DEBUGGED
- when running from Xcode and it works for him I guess.
- https://github.com/shawwn/node/tree/ios-release?files=1
--> Node chakracore/nodejs-mobile maintainers for gyp edits and
- leading me to try v8 node.
-
-Callouts:
--> Screw Node's build system, that's all.
-
-Knock down one language, go to the next.
diff --git a/data/nodejs/_metadata/version b/data/nodejs/_metadata/version
index 9c028e25d..dfd39f4bf 100644
--- a/data/nodejs/_metadata/version
+++ b/data/nodejs/_metadata/version
@@ -1 +1 @@
-12.3.1
+12.17.0
diff --git a/data/nodejs/make.sh b/data/nodejs/make.sh
index c3f4c737b..3e1d29dc4 100644
--- a/data/nodejs/make.sh
+++ b/data/nodejs/make.sh
@@ -33,3 +33,9 @@ make BUILDTYPE=Release DESTCPU=arm64 install DESTDIR="${PKG_DEST}" -j16
pkg: mkdir -p /usr/bin
pkg: cp out/Release/node /usr/bin/
ldid -S"${PKG_DATA}/node.xml" "${PKG_DEST}/usr/bin/node"
+
+export INSTALL_NAME_TOOL="${PKG_TARG}-install_name_tool"
+test command -v ${INSTALL_NAME_TOOL} &>/dev/null || \
+ export INSTALL_NAME_TOOL="install_name_tool"
+LIBNODE="$(echo ${PKG_DEST}/usr/lib/libnode.*.dylib)"
+${INSTALL_NAME_TOOL} "${LIBNODE}" -id "/usr/lib/${LIBNODE##*/}"
diff --git a/data/nodejs/node-v12.3.1.tar.gz b/data/nodejs/node-v12.17.0.tar.gz
index 7c8799095..034f7ecf3 100644
--- a/data/nodejs/node-v12.3.1.tar.gz
+++ b/data/nodejs/node-v12.17.0.tar.gz
Binary files differ
diff --git a/data/nodejs/nodejs-mobile-filecopy.diff b/data/nodejs/nodejs-mobile-filecopy.diff
new file mode 100644
index 000000000..600d96c96
--- /dev/null
+++ b/data/nodejs/nodejs-mobile-filecopy.diff
@@ -0,0 +1,28 @@
+--- node-v12.17.0/deps/uv/src/unix/fs.c 2020-05-26 06:53:32.000000000 -0500
++++ node-v12.17.0+iPhone/deps/uv/src/unix/fs.c 2020-05-27 00:54:19.883409601 -0500
+@@ -1102,6 +1102,17 @@
+ }
+
+ static ssize_t uv__fs_copyfile(uv_fs_t* req) {
++#if defined(__APPLE__)
++ /* On macOS, use the native copyfile(3). */
++ copyfile_flags_t flags;
++
++ flags = COPYFILE_ALL;
++
++ if (req->flags & UV_FS_COPYFILE_EXCL)
++ flags |= COPYFILE_EXCL;
++
++ return copyfile(req->path, req->new_path, NULL, flags);
++#else
+ uv_fs_t fs_req;
+ uv_file srcfd;
+ uv_file dstfd;
+@@ -1258,6 +1269,7 @@
+
+ errno = UV__ERR(result);
+ return -1;
++#endif
+ }
+
+ static void uv__to_stat(struct stat* src, uv_stat_t* dst) {