forked from autogits/nodejs21
189 lines
6.3 KiB
Diff
189 lines
6.3 KiB
Diff
|
Author: Adam Majer <amajer@suse.de>
|
||
|
Date: Fri May 11 16:10:16 CEST 2018
|
||
|
Summary: Generate versioned binaries
|
||
|
|
||
|
Generate versioned binaries and install paths
|
||
|
so we can allow concurrent installations and
|
||
|
management via update_alternatives.
|
||
|
|
||
|
This is also important for generation of binary
|
||
|
modules for multiple versions of NodeJS
|
||
|
Index: node-v20.5.1/Makefile
|
||
|
===================================================================
|
||
|
--- node-v20.5.1.orig/Makefile
|
||
|
+++ node-v20.5.1/Makefile
|
||
|
@@ -76,7 +76,7 @@ BUILDTYPE_LOWER := $(shell echo $(BUILDT
|
||
|
EXEEXT := $(shell $(PYTHON) -c \
|
||
|
"import sys; print('.exe' if sys.platform == 'win32' else '')")
|
||
|
|
||
|
-NODE_EXE = node$(EXEEXT)
|
||
|
+NODE_EXE = node21$(EXEEXT)
|
||
|
NODE ?= ./$(NODE_EXE)
|
||
|
NODE_G_EXE = node_g$(EXEEXT)
|
||
|
NPM ?= ./deps/npm/bin/npm-cli.js
|
||
|
Index: node-v20.5.1/tools/install.py
|
||
|
===================================================================
|
||
|
--- node-v20.5.1.orig/tools/install.py
|
||
|
+++ node-v20.5.1/tools/install.py
|
||
|
@@ -86,7 +86,7 @@ def uninstall(paths, dst):
|
||
|
try_remove(path, dst)
|
||
|
|
||
|
def package_files(action, name, bins):
|
||
|
- target_path = libdir() + '/node_modules/' + name + '/'
|
||
|
+ target_path = libdir() + '/node_modules/' + name + '21/'
|
||
|
|
||
|
# don't install npm if the target path is a symlink, it probably means
|
||
|
# that a dev version of npm is installed there
|
||
|
@@ -106,19 +106,19 @@ def package_files(action, name, bins):
|
||
|
if action == uninstall:
|
||
|
action([link_path], 'bin/' + bin_name)
|
||
|
elif action == install:
|
||
|
- try_symlink('../' + libdir() + '/node_modules/' + name + '/' + bin_target, link_path)
|
||
|
+ try_symlink('../' + libdir() + '/node_modules/' + name + '21/' + bin_target, link_path)
|
||
|
else:
|
||
|
assert 0 # unhandled action type
|
||
|
|
||
|
def npm_files(action):
|
||
|
package_files(action, 'npm', {
|
||
|
- 'npm': 'bin/npm-cli.js',
|
||
|
- 'npx': 'bin/npx-cli.js',
|
||
|
+ 'npm21': 'bin/npm-cli.js',
|
||
|
+ 'npx21': 'bin/npx-cli.js',
|
||
|
})
|
||
|
|
||
|
def corepack_files(action):
|
||
|
package_files(action, 'corepack', {
|
||
|
- 'corepack': 'dist/corepack.js',
|
||
|
+ 'corepack21': 'dist/corepack.js',
|
||
|
# Not the default just yet:
|
||
|
# 'yarn': 'dist/yarn.js',
|
||
|
# 'yarnpkg': 'dist/yarn.js',
|
||
|
@@ -147,7 +147,7 @@ def subdir_files(path, dest, action):
|
||
|
|
||
|
def files(action):
|
||
|
is_windows = sys.platform == 'win32'
|
||
|
- output_file = 'node'
|
||
|
+ output_file = 'node21'
|
||
|
output_prefix = 'out/Release/'
|
||
|
|
||
|
if is_windows:
|
||
|
@@ -189,7 +189,7 @@ def files(action):
|
||
|
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/node21.1')
|
||
|
|
||
|
if 'true' == variables.get('node_install_npm'):
|
||
|
npm_files(action)
|
||
|
@@ -276,28 +276,28 @@ def headers(action):
|
||
|
'src/node_buffer.h',
|
||
|
'src/node_object_wrap.h',
|
||
|
'src/node_version.h',
|
||
|
- ], 'include/node/')
|
||
|
+ ], 'include/node21/')
|
||
|
|
||
|
# Add the expfile that is created on AIX
|
||
|
if sys.platform.startswith('aix') or sys.platform == "os400":
|
||
|
- action(['out/Release/node.exp'], 'include/node/')
|
||
|
+ action(['out/Release/node.exp'], 'include/node21/')
|
||
|
|
||
|
- subdir_files('deps/v8/include', 'include/node/', wanted_v8_headers)
|
||
|
+ subdir_files('deps/v8/include', 'include/node21/', wanted_v8_headers)
|
||
|
|
||
|
if 'false' == variables.get('node_shared_libuv'):
|
||
|
- subdir_files('deps/uv/include', 'include/node/', action)
|
||
|
+ subdir_files('deps/uv/include', 'include/node21/', action)
|
||
|
|
||
|
if 'true' == variables.get('node_use_openssl') and \
|
||
|
'false' == variables.get('node_shared_openssl'):
|
||
|
- subdir_files('deps/openssl/openssl/include/openssl', 'include/node/openssl/', action)
|
||
|
- subdir_files('deps/openssl/config/archs', 'include/node/openssl/archs', action)
|
||
|
- subdir_files('deps/openssl/config', 'include/node/openssl', action)
|
||
|
+ subdir_files('deps/openssl/openssl/include/openssl', 'include/node21/openssl/', action)
|
||
|
+ subdir_files('deps/openssl/config/archs', 'include/node21/openssl/archs', action)
|
||
|
+ subdir_files('deps/openssl/config', 'include/node21/openssl', action)
|
||
|
|
||
|
if 'false' == variables.get('node_shared_zlib'):
|
||
|
action([
|
||
|
'deps/zlib/zconf.h',
|
||
|
'deps/zlib/zlib.h',
|
||
|
- ], 'include/node/')
|
||
|
+ ], 'include/node21/')
|
||
|
|
||
|
if sys.platform == 'zos':
|
||
|
zoslibinc = os.environ.get('ZOSLIB_INCLUDES')
|
||
|
Index: node-v20.5.1/doc/node.1
|
||
|
===================================================================
|
||
|
--- node-v20.5.1.orig/doc/node.1
|
||
|
+++ node-v20.5.1/doc/node.1
|
||
|
@@ -31,24 +31,24 @@
|
||
|
.Dt NODE 1
|
||
|
.
|
||
|
.Sh NAME
|
||
|
-.Nm node
|
||
|
+.Nm node21
|
||
|
.Nd server-side JavaScript runtime
|
||
|
.
|
||
|
.\"======================================================================
|
||
|
.Sh SYNOPSIS
|
||
|
-.Nm node
|
||
|
+.Nm node21
|
||
|
.Op Ar options
|
||
|
.Op Ar v8-options
|
||
|
.Op Fl e Ar string | Ar script.js | Fl
|
||
|
.Op Fl -
|
||
|
.Op Ar arguments ...
|
||
|
.
|
||
|
-.Nm node
|
||
|
+.Nm node21
|
||
|
.Cm inspect
|
||
|
.Op Fl e Ar string | Ar script.js | Fl | Ar <host>:<port>
|
||
|
.Ar ...
|
||
|
.
|
||
|
-.Nm node
|
||
|
+.Nm node21
|
||
|
.Op Fl -v8-options
|
||
|
.
|
||
|
.\"======================================================================
|
||
|
Index: node-v20.5.1/src/node_main.cc
|
||
|
===================================================================
|
||
|
--- node-v20.5.1.orig/src/node_main.cc
|
||
|
+++ node-v20.5.1/src/node_main.cc
|
||
|
@@ -94,6 +94,7 @@ int wmain(int argc, wchar_t* wargv[]) {
|
||
|
// UNIX
|
||
|
|
||
|
int main(int argc, char* argv[]) {
|
||
|
+ setenv("NODE_VERSION", "21", 0);
|
||
|
return node::Start(argc, argv);
|
||
|
}
|
||
|
#endif
|
||
|
Index: node-v20.5.1/tools/test.py
|
||
|
===================================================================
|
||
|
--- node-v20.5.1.orig/tools/test.py
|
||
|
+++ node-v20.5.1/tools/test.py
|
||
|
@@ -947,7 +947,7 @@ class Context(object):
|
||
|
if self.vm is not None:
|
||
|
return self.vm
|
||
|
if arch == 'none':
|
||
|
- name = 'out/Debug/node' if mode == 'debug' else 'out/Release/node'
|
||
|
+ name = 'out/Debug/node' if mode == 'debug' else 'out/Release/node21'
|
||
|
else:
|
||
|
name = 'out/%s.%s/node' % (arch, mode)
|
||
|
|
||
|
Index: node-v20.5.1/node.gyp
|
||
|
===================================================================
|
||
|
--- node-v20.5.1.orig/node.gyp
|
||
|
+++ node-v20.5.1/node.gyp
|
||
|
@@ -23,8 +23,8 @@
|
||
|
'node_shared_openssl%': 'false',
|
||
|
'node_v8_options%': '',
|
||
|
'node_enable_v8_vtunejit%': 'false',
|
||
|
- 'node_core_target_name%': 'node',
|
||
|
- 'node_lib_target_name%': 'libnode',
|
||
|
+ 'node_core_target_name%': 'node21',
|
||
|
+ 'node_lib_target_name%': 'libnode21',
|
||
|
'node_intermediate_lib_type%': 'static_library',
|
||
|
'node_builtin_modules_path%': '',
|
||
|
'linked_module_files': [
|