diff options
author | Bradley T. Hughes <bhughes@FreeBSD.org> | 2020-10-29 13:57:50 +0000 |
---|---|---|
committer | Bradley T. Hughes <bhughes@FreeBSD.org> | 2020-10-29 13:57:50 +0000 |
commit | 2ef526793bb53d9e5cc83d7b0fc781819608f6fd (patch) | |
tree | dce2162c1e00bce125404ba0b8e5d780e96e188d /www/node14/files | |
parent | 62446c39466deb12952fc92786c0f43c1f0ef40c (diff) | |
download | ports-2ef526793bb53d9e5cc83d7b0fc781819608f6fd.tar.gz ports-2ef526793bb53d9e5cc83d7b0fc781819608f6fd.zip |
www/node14: copy from www/node, update 14.14.0 -> 14.15.0 (LTS)
Create a new port for the latest Node.js 14.15.0 LTS release. Update
CONFLICTS for the existing Node.js ports to include the new node14 port
and remove non-existent ports.
https://nodejs.org/en/blog/release/v14.15.0/
Sponsored by: Miles AS
Notes
Notes:
svn path=/head/; revision=553618
Diffstat (limited to 'www/node14/files')
14 files changed, 226 insertions, 0 deletions
diff --git a/www/node14/files/extra-patch-common.gypi b/www/node14/files/extra-patch-common.gypi new file mode 100644 index 000000000000..8e817a2959c9 --- /dev/null +++ b/www/node14/files/extra-patch-common.gypi @@ -0,0 +1,13 @@ +--- common.gypi.orig 2019-10-01 15:32:40.000000000 +0200 ++++ common.gypi 2019-10-16 12:47:09.236138000 +0200 +@@ -390,8 +390,8 @@ + 'ldflags': [ '-m32' ], + }], + [ 'target_arch=="ppc64" and OS!="aix"', { +- 'cflags': [ '-m64', '-mminimal-toc' ], +- 'ldflags': [ '-m64' ], ++ 'cflags': [ '-m64' ], ++ 'ldflags': [ '-m64' ], + }], + [ 'target_arch=="s390x"', { + 'cflags': [ '-m64', '-march=z196' ], diff --git a/www/node14/files/extra-patch-tools_v8__gypfiles_v8.gyp b/www/node14/files/extra-patch-tools_v8__gypfiles_v8.gyp new file mode 100644 index 000000000000..2bee41970fff --- /dev/null +++ b/www/node14/files/extra-patch-tools_v8__gypfiles_v8.gyp @@ -0,0 +1,11 @@ +--- tools/v8_gypfiles/v8.gyp.orig 2020-04-25 08:50:20 UTC ++++ tools/v8_gypfiles/v8.gyp +@@ -805,7 +805,7 @@ + }], + # Platforms that don't have Compare-And-Swap (CAS) support need to link atomic library + # to implement atomic memory access +- ['v8_current_cpu in ["mips", "mipsel", "mips64", "mips64el", "ppc", "arm"]', { ++ ['v8_current_cpu in ["mips", "mipsel", "mips64", "mips64el", "ppc"]', { + 'link_settings': { + 'libraries': ['-latomic', ], + }, diff --git a/www/node14/files/patch-deps_openssl_config_archs_linux-elf_no-asm_openssl-cl.gypi b/www/node14/files/patch-deps_openssl_config_archs_linux-elf_no-asm_openssl-cl.gypi new file mode 100644 index 000000000000..aae558fe58db --- /dev/null +++ b/www/node14/files/patch-deps_openssl_config_archs_linux-elf_no-asm_openssl-cl.gypi @@ -0,0 +1,11 @@ +--- deps/openssl/config/archs/linux-elf/no-asm/openssl-cl.gypi.orig 2019-08-06 20:46:23 UTC ++++ deps/openssl/config/archs/linux-elf/no-asm/openssl-cl.gypi +@@ -12,7 +12,7 @@ + '-Wall -O3 -fomit-frame-pointer', + ], + 'openssl_ex_libs_linux-elf': [ +- '-ldl -pthread', ++ '-pthread', + ], + 'openssl_cli_srcs_linux-elf': [ + 'openssl/apps/asn1pars.c', diff --git a/www/node14/files/patch-deps_openssl_config_archs_linux-elf_no-asm_openssl.gypi b/www/node14/files/patch-deps_openssl_config_archs_linux-elf_no-asm_openssl.gypi new file mode 100644 index 000000000000..552266b703f0 --- /dev/null +++ b/www/node14/files/patch-deps_openssl_config_archs_linux-elf_no-asm_openssl.gypi @@ -0,0 +1,11 @@ +--- deps/openssl/config/archs/linux-elf/no-asm/openssl.gypi.orig 2019-08-06 20:46:23 UTC ++++ deps/openssl/config/archs/linux-elf/no-asm/openssl.gypi +@@ -696,7 +696,7 @@ + '-Wall -O3 -fomit-frame-pointer', + ], + 'openssl_ex_libs_linux-elf': [ +- '-ldl -pthread', ++ '-pthread', + ], + }, + 'include_dirs': [ diff --git a/www/node14/files/patch-deps_openssl_openssl-cl__no__asm.gypi b/www/node14/files/patch-deps_openssl_openssl-cl__no__asm.gypi new file mode 100644 index 000000000000..8966d6b4ba0d --- /dev/null +++ b/www/node14/files/patch-deps_openssl_openssl-cl__no__asm.gypi @@ -0,0 +1,17 @@ +--- deps/openssl/openssl-cl_no_asm.gypi.orig 2020-09-08 12:17:10 UTC ++++ deps/openssl/openssl-cl_no_asm.gypi +@@ -1,4 +1,5 @@ + { ++ 'defines': ['OPENSSL_NO_ASM'], + 'conditions': [ + ['target_arch=="ppc" and OS=="aix"', { + 'includes': ['config/archs/aix-gcc/no-asm/openssl-cl.gypi'], +@@ -47,7 +48,7 @@ + 'includes': ['config/archs/linux64-mips64/no-asm/openssl-cl.gypi'], + }, { + # Other architectures don't use assembly +- 'includes': ['config/archs/linux-x86_64/no-asm/openssl-cl.gypi'], ++ 'includes': ['config/archs/linux-elf/no-asm/openssl-cl.gypi'], + }], + ], + } diff --git a/www/node14/files/patch-deps_openssl_openssl__no__asm.gypi b/www/node14/files/patch-deps_openssl_openssl__no__asm.gypi new file mode 100644 index 000000000000..1fef0c4ca71f --- /dev/null +++ b/www/node14/files/patch-deps_openssl_openssl__no__asm.gypi @@ -0,0 +1,11 @@ +--- deps/openssl/openssl_no_asm.gypi.orig 2020-09-08 12:17:11 UTC ++++ deps/openssl/openssl_no_asm.gypi +@@ -48,7 +48,7 @@ + 'includes': ['config/archs/linux64-mips64/no-asm/openssl.gypi'], + }, { + # Other architectures don't use assembly +- 'includes': ['config/archs/linux-x86_64/no-asm/openssl.gypi'], ++ 'includes': ['config/archs/linux-elf/no-asm/openssl.gypi'], + }], + ], + } diff --git a/www/node14/files/patch-deps_v8_src_base_platform_platform-freebsd.cc b/www/node14/files/patch-deps_v8_src_base_platform_platform-freebsd.cc new file mode 100644 index 000000000000..c504d7134dd4 --- /dev/null +++ b/www/node14/files/patch-deps_v8_src_base_platform_platform-freebsd.cc @@ -0,0 +1,62 @@ +--- deps/v8/src/base/platform/platform-freebsd.cc.orig 2020-06-30 17:49:16 UTC ++++ deps/v8/src/base/platform/platform-freebsd.cc +@@ -82,8 +82,8 @@ std::vector<OS::SharedLibraryAddress> OS::GetSharedLib + lib_name = std::string(path); + } + result.push_back(SharedLibraryAddress( +- lib_name, reinterpret_cast<uintptr_t>(map->kve_start), +- reinterpret_cast<uintptr_t>(map->kve_end))); ++ lib_name, static_cast<uintptr_t>(map->kve_start), ++ static_cast<uintptr_t>(map->kve_end))); + } + + start += ssize; +@@ -94,6 +94,48 @@ std::vector<OS::SharedLibraryAddress> OS::GetSharedLib + } + + void OS::SignalCodeMovingGC() {} ++ ++#ifdef __arm__ ++ ++bool OS::ArmUsingHardFloat() { ++// GCC versions 4.6 and above define __ARM_PCS or __ARM_PCS_VFP to specify ++// the Floating Point ABI used (PCS stands for Procedure Call Standard). ++// We use these as well as a couple of other defines to statically determine ++// what FP ABI used. ++// GCC versions 4.4 and below don't support hard-fp. ++// GCC versions 4.5 may support hard-fp without defining __ARM_PCS or ++// __ARM_PCS_VFP. ++ ++#define GCC_VERSION \ ++ (__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__) ++#if GCC_VERSION >= 40600 && !defined(__clang__) ++#if defined(__ARM_PCS_VFP) ++ return true; ++#else ++ return false; ++#endif ++ ++#elif GCC_VERSION < 40500 && !defined(__clang__) ++ return false; ++ ++#else ++#if defined(__ARM_PCS_VFP) ++ return true; ++#elif defined(__ARM_PCS) || defined(__SOFTFP__) || defined(__SOFTFP) || \ ++ !defined(__VFP_FP__) ++ return false; ++#else ++#error \ ++ "Your version of compiler does not report the FP ABI compiled for." \ ++ "Please report it on this issue" \ ++ "http://code.google.com/p/v8/issues/detail?id=2140" ++ ++#endif ++#endif ++#undef GCC_VERSION ++} ++ ++#endif // def __arm__ + + void OS::AdjustSchedulingParams() {} + diff --git a/www/node14/files/patch-deps_v8_src_codegen_ppc_constants-ppc.h b/www/node14/files/patch-deps_v8_src_codegen_ppc_constants-ppc.h new file mode 100644 index 000000000000..449278ef9271 --- /dev/null +++ b/www/node14/files/patch-deps_v8_src_codegen_ppc_constants-ppc.h @@ -0,0 +1,20 @@ +--- deps/v8/src/codegen/ppc/constants-ppc.h.orig 2020-06-30 17:49:17 UTC ++++ deps/v8/src/codegen/ppc/constants-ppc.h +@@ -36,7 +36,7 @@ + #endif + + #if !(V8_HOST_ARCH_PPC || V8_HOST_ARCH_PPC64) || !V8_TARGET_ARCH_PPC64 || \ +- V8_TARGET_LITTLE_ENDIAN || (defined(_CALL_ELF) && _CALL_ELF == 2) ++ (defined(_CALL_ELF) && _CALL_ELF == 2) + #define ABI_RETURNS_OBJECT_PAIRS_IN_REGS 1 + #else + #define ABI_RETURNS_OBJECT_PAIRS_IN_REGS 0 +@@ -44,7 +44,7 @@ + + #if !(V8_HOST_ARCH_PPC || V8_HOST_ARCH_PPC64) || \ + (V8_TARGET_ARCH_PPC64 && \ +- (V8_TARGET_LITTLE_ENDIAN || (defined(_CALL_ELF) && _CALL_ELF == 2))) ++ (defined(_CALL_ELF) && _CALL_ELF == 2)) + #define ABI_CALL_VIA_IP 1 + #else + #define ABI_CALL_VIA_IP 0 diff --git a/www/node14/files/patch-deps_v8_src_compiler_backend_instruction-selector.cc b/www/node14/files/patch-deps_v8_src_compiler_backend_instruction-selector.cc new file mode 100644 index 000000000000..b8985dcef76d --- /dev/null +++ b/www/node14/files/patch-deps_v8_src_compiler_backend_instruction-selector.cc @@ -0,0 +1,11 @@ +--- deps/v8/src/compiler/backend/instruction-selector.cc.orig 2020-07-20 22:18:45 UTC ++++ deps/v8/src/compiler/backend/instruction-selector.cc +@@ -2808,7 +2808,7 @@ void InstructionSelector::VisitCall(Node* node, BasicB + switch (call_descriptor->kind()) { + case CallDescriptor::kCallAddress: { + int misc_field = static_cast<int>(call_descriptor->ParameterCount()); +-#if defined(_AIX) ++#if defined(_AIX) || (V8_TARGET_ARCH_PPC_BE && (!defined(_CALL_ELF) || _CALL_ELF == 1)) + // Highest misc_field bit is used on AIX to indicate if a CFunction call + // has function descriptor or not. + if (!call_descriptor->NoFunctionDescriptor()) { diff --git a/www/node14/files/patch-deps_v8_src_compiler_backend_ppc_code-generator-ppc.cc b/www/node14/files/patch-deps_v8_src_compiler_backend_ppc_code-generator-ppc.cc new file mode 100644 index 000000000000..a69dfeecd00f --- /dev/null +++ b/www/node14/files/patch-deps_v8_src_compiler_backend_ppc_code-generator-ppc.cc @@ -0,0 +1,12 @@ +--- deps/v8/src/compiler/backend/ppc/code-generator-ppc.cc.orig 2020-07-20 22:18:45 UTC ++++ deps/v8/src/compiler/backend/ppc/code-generator-ppc.cc +@@ -1038,8 +1038,7 @@ CodeGenerator::CodeGenResult CodeGenerator::AssembleAr + bool isWasmCapiFunction = + linkage()->GetIncomingDescriptor()->IsWasmCapiFunction(); + int offset = (FLAG_enable_embedded_constant_pool ? 20 : 23) * kInstrSize; +- +-#if defined(_AIX) ++#if defined(_AIX) || (V8_TARGET_ARCH_PPC_BE && (!defined(_CALL_ELF) || _CALL_ELF == 1)) + // AIX/PPC64BE Linux uses a function descriptor + int kNumParametersMask = kHasFunctionDescriptorBitMask - 1; + num_parameters = kNumParametersMask & misc_field; diff --git a/www/node14/files/patch-deps_v8_src_execution_simulator.h b/www/node14/files/patch-deps_v8_src_execution_simulator.h new file mode 100644 index 000000000000..2523115279b1 --- /dev/null +++ b/www/node14/files/patch-deps_v8_src_execution_simulator.h @@ -0,0 +1,11 @@ +--- deps/v8/src/execution/simulator.h.orig 2019-11-21 21:14:01 UTC ++++ deps/v8/src/execution/simulator.h +@@ -128,7 +128,7 @@ class GeneratedCode { + #if defined(V8_TARGET_OS_WIN) && !defined(V8_OS_WIN) + FATAL("Generated code execution not possible during cross-compilation."); + #endif // defined(V8_TARGET_OS_WIN) && !defined(V8_OS_WIN) +-#if V8_OS_AIX ++#if V8_OS_AIX || (V8_TARGET_ARCH_PPC_BE && (!defined(_CALL_ELF) || _CALL_ELF == 1)) + // AIX ABI requires function descriptors (FD). Artificially create a pseudo + // FD to ensure correct dispatch to generated code. The 'volatile' + // declaration is required to avoid the compiler from not observing the diff --git a/www/node14/files/patch-deps_v8_src_libsampler_sampler.cc b/www/node14/files/patch-deps_v8_src_libsampler_sampler.cc new file mode 100644 index 000000000000..74fce64be593 --- /dev/null +++ b/www/node14/files/patch-deps_v8_src_libsampler_sampler.cc @@ -0,0 +1,13 @@ +--- deps/v8/src/libsampler/sampler.cc.orig 2020-06-30 17:49:17 UTC ++++ deps/v8/src/libsampler/sampler.cc +@@ -482,6 +482,10 @@ void SignalHandler::FillRegisterState(void* context, R + state->pc = reinterpret_cast<void*>(mcontext.__gregs[_REG_PC]); + state->sp = reinterpret_cast<void*>(mcontext.__gregs[_REG_SP]); + state->fp = reinterpret_cast<void*>(mcontext.__gregs[_REG_FP]); ++#elif V8_TARGET_ARCH_PPC_BE ++ state->pc = reinterpret_cast<void*>(mcontext.mc_srr0); ++ state->sp = reinterpret_cast<void*>(mcontext.mc_frame[1]); ++ state->fp = reinterpret_cast<void*>(mcontext.mc_frame[31]); + #endif // V8_HOST_ARCH_* + #elif V8_OS_NETBSD + #if V8_HOST_ARCH_IA32 diff --git a/www/node14/files/patch-node.gypi b/www/node14/files/patch-node.gypi new file mode 100644 index 000000000000..57871fff3e10 --- /dev/null +++ b/www/node14/files/patch-node.gypi @@ -0,0 +1,12 @@ +--- node.gypi.orig 2020-03-05 00:41:47 UTC ++++ node.gypi +@@ -322,6 +322,9 @@ + ['openssl_fips != "" or openssl_is_fips=="true"', { + 'defines': [ 'NODE_FIPS_MODE' ], + }], ++ ['openssl_no_asm==1', { ++ 'defines': [ 'OPENSSL_NO_ASM' ], ++ }], + [ 'node_shared_openssl=="false"', { + 'dependencies': [ + './deps/openssl/openssl.gyp:openssl', diff --git a/www/node14/files/patch-tools_genv8constants.py b/www/node14/files/patch-tools_genv8constants.py new file mode 100644 index 000000000000..da6a86d513f2 --- /dev/null +++ b/www/node14/files/patch-tools_genv8constants.py @@ -0,0 +1,11 @@ +--- tools/genv8constants.py.orig 2020-08-20 20:43:20 UTC ++++ tools/genv8constants.py +@@ -20,7 +20,7 @@ if len(sys.argv) != 3: + outfile = open(sys.argv[1], 'w') + try: + pipe = subprocess.Popen([ 'objdump', '-z', '-D', sys.argv[2] ], +- bufsize=-1, stdout=subprocess.PIPE).stdout ++ bufsize=-1, stdout=subprocess.PIPE, universal_newlines=True).stdout + except OSError as e: + if e.errno == errno.ENOENT: + print(''' |