summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoradam <adam@pkgsrc.org>2019-12-09 20:05:40 +0000
committeradam <adam@pkgsrc.org>2019-12-09 20:05:40 +0000
commit49ea69cdd0c298cb5eabe9783e20d0ca35ee2df3 (patch)
tree5897f4f1895b7d237e00c7743d3a7c401112f160
parent1afb180aba7a610b512681b99625da549dc20239 (diff)
downloadpkgsrc-49ea69cdd0c298cb5eabe9783e20d0ca35ee2df3.tar.gz
nodejs: added version 12.13.1, removed version 6.14.3
Moved nodejs to nodejs10 - version 10.17.0 Version 12.13.1 'Erbium' (LTS): Notable changes Experimental support for building Node.js with Python 3 is improved. ICU time zone data is updated to version 2019c. This fixes the date offset in Brazil.
-rw-r--r--lang/Makefile5
-rw-r--r--lang/nodejs10/DESCR (renamed from lang/nodejs6/DESCR)2
-rw-r--r--lang/nodejs10/Makefile44
-rw-r--r--lang/nodejs10/PLIST432
-rw-r--r--lang/nodejs10/buildlink3.mk40
-rw-r--r--lang/nodejs10/distinfo43
-rw-r--r--lang/nodejs10/options.mk (renamed from lang/nodejs6/options.mk)12
-rw-r--r--lang/nodejs10/patches/patch-common.gypi20
-rw-r--r--lang/nodejs10/patches/patch-configure.py16
-rw-r--r--lang/nodejs10/patches/patch-deps_cares_cares.gyp17
-rw-r--r--lang/nodejs10/patches/patch-deps_openssl_config_archs_linux-elf_asm_openssl-cl.gypi23
-rw-r--r--lang/nodejs10/patches/patch-deps_openssl_config_bn__conf__asm.h32
-rw-r--r--lang/nodejs10/patches/patch-deps_openssl_config_bn__conf__no-asm.h30
-rw-r--r--lang/nodejs10/patches/patch-deps_openssl_config_dso__conf__asm.h32
-rw-r--r--lang/nodejs10/patches/patch-deps_openssl_config_dso__conf__no-asm.h30
-rw-r--r--lang/nodejs10/patches/patch-deps_openssl_config_opensslconf__asm.h29
-rw-r--r--lang/nodejs10/patches/patch-deps_openssl_config_opensslconf__no-asm.h30
-rw-r--r--lang/nodejs10/patches/patch-deps_openssl_openssl-cl__asm.gypi30
-rw-r--r--lang/nodejs10/patches/patch-deps_openssl_openssl-cl__no__asm.gypi36
-rw-r--r--lang/nodejs10/patches/patch-deps_openssl_openssl__asm.gypi30
-rw-r--r--lang/nodejs10/patches/patch-deps_openssl_openssl__no__asm.gypi30
-rw-r--r--lang/nodejs10/patches/patch-deps_openssl_openssl_crypto_rand_rand__unix.c16
-rw-r--r--lang/nodejs10/patches/patch-deps_uv_common.gypi (renamed from lang/nodejs6/patches/patch-deps_uv_common.gypi)10
-rw-r--r--lang/nodejs10/patches/patch-deps_uv_src_unix_netbsd.c26
-rw-r--r--lang/nodejs10/patches/patch-deps_v8_src_arm_assembler-arm-inl.h13
-rw-r--r--lang/nodejs10/patches/patch-deps_v8_src_arm_assembler-arm.cc22
-rw-r--r--lang/nodejs10/patches/patch-deps_v8_src_arm_cpu-arm.cc (renamed from lang/nodejs6/patches/patch-deps_v8_src_arm_cpu-arm.cc)2
-rw-r--r--lang/nodejs10/patches/patch-deps_v8_src_base_atomicops.h (renamed from lang/nodejs6/patches/patch-deps_v8_src_base_atomicops.h)8
-rw-r--r--lang/nodejs10/patches/patch-deps_v8_src_base_platform_platform-freebsd.cc (renamed from lang/nodejs6/patches/patch-deps_v8_src_base_platform_platform-freebsd.cc)14
-rw-r--r--lang/nodejs10/patches/patch-deps_v8_src_base_platform_platform-openbsd.cc (renamed from lang/nodejs6/patches/patch-deps_v8_src_base_platform_platform-openbsd.cc)12
-rw-r--r--lang/nodejs10/patches/patch-deps_v8_src_base_platform_platform-posix.cc (renamed from lang/nodejs6/patches/patch-deps_v8_src_base_platform_platform-posix.cc)14
-rw-r--r--lang/nodejs10/patches/patch-deps_v8_src_base_platform_semaphore.cc17
-rw-r--r--lang/nodejs10/patches/patch-deps_v8_src_compiler_types.h21
-rw-r--r--lang/nodejs10/patches/patch-deps_v8_src_globals.h14
-rw-r--r--lang/nodejs10/patches/patch-deps_v8_src_log-utils.h17
-rw-r--r--lang/nodejs10/patches/patch-deps_v8_tools_run-llprof.sh (renamed from lang/nodejs6/patches/patch-deps_v8_tools_run-llprof.sh)2
-rw-r--r--lang/nodejs10/patches/patch-node.gypi14
-rw-r--r--lang/nodejs10/patches/patch-src_cares__wrap.cc15
-rw-r--r--lang/nodejs10/patches/patch-src_inspector__agent.cc (renamed from lang/nodejs6/patches/patch-src_node.cc)12
-rw-r--r--lang/nodejs10/patches/patch-src_node__postmortem__metadata.cc15
-rw-r--r--lang/nodejs10/patches/patch-tools_gyp_pylib_gyp_common.py14
-rw-r--r--lang/nodejs10/patches/patch-tools_gyp_pylib_gyp_generator_make.py (renamed from lang/nodejs6/patches/patch-tools_gyp_pylib_gyp_generator_make.py)2
-rw-r--r--lang/nodejs10/patches/patch-tools_gyp_pylib_gyp_xcode__emulation.py15
-rw-r--r--lang/nodejs10/patches/patch-tools_install.py (renamed from lang/nodejs6/patches/patch-tools_install.py)4
-rw-r--r--lang/nodejs12/DESCR4
-rw-r--r--lang/nodejs12/Makefile42
-rw-r--r--lang/nodejs12/PLIST464
-rw-r--r--lang/nodejs12/buildlink3.mk40
-rw-r--r--lang/nodejs12/distinfo38
-rw-r--r--lang/nodejs12/options.mk34
-rw-r--r--lang/nodejs12/patches/patch-common.gypi20
-rw-r--r--lang/nodejs12/patches/patch-deps_cares_cares.gyp17
-rw-r--r--lang/nodejs12/patches/patch-deps_openssl_config_archs_linux-elf_asm_openssl-cl.gypi23
-rw-r--r--lang/nodejs12/patches/patch-deps_openssl_config_bn__conf__asm.h32
-rw-r--r--lang/nodejs12/patches/patch-deps_openssl_config_bn__conf__no-asm.h30
-rw-r--r--lang/nodejs12/patches/patch-deps_openssl_config_dso__conf__asm.h32
-rw-r--r--lang/nodejs12/patches/patch-deps_openssl_config_dso__conf__no-asm.h30
-rw-r--r--lang/nodejs12/patches/patch-deps_openssl_config_opensslconf__asm.h29
-rw-r--r--lang/nodejs12/patches/patch-deps_openssl_config_opensslconf__no-asm.h30
-rw-r--r--lang/nodejs12/patches/patch-deps_openssl_openssl-cl__asm.gypi30
-rw-r--r--lang/nodejs12/patches/patch-deps_openssl_openssl-cl__no__asm.gypi36
-rw-r--r--lang/nodejs12/patches/patch-deps_openssl_openssl__asm.gypi30
-rw-r--r--lang/nodejs12/patches/patch-deps_openssl_openssl__no__asm.gypi28
-rw-r--r--lang/nodejs12/patches/patch-deps_openssl_openssl_crypto_rand_rand__unix.c16
-rw-r--r--lang/nodejs12/patches/patch-deps_uv_common.gypi15
-rw-r--r--lang/nodejs12/patches/patch-deps_uv_src_unix_netbsd.c26
-rw-r--r--lang/nodejs12/patches/patch-deps_v8_src_base_atomicops.h18
-rw-r--r--lang/nodejs12/patches/patch-deps_v8_src_base_platform_platform-freebsd.cc32
-rw-r--r--lang/nodejs12/patches/patch-deps_v8_src_base_platform_platform-openbsd.cc55
-rw-r--r--lang/nodejs12/patches/patch-deps_v8_src_base_platform_platform-posix.cc39
-rw-r--r--lang/nodejs12/patches/patch-deps_v8_src_base_platform_semaphore.cc18
-rw-r--r--lang/nodejs12/patches/patch-deps_v8_src_common_globals.h14
-rw-r--r--lang/nodejs12/patches/patch-deps_v8_src_compiler_types.h21
-rw-r--r--lang/nodejs12/patches/patch-deps_v8_tools_run-llprof.sh15
-rw-r--r--lang/nodejs12/patches/patch-node.gypi14
-rw-r--r--lang/nodejs12/patches/patch-src_cares__wrap.cc15
-rw-r--r--lang/nodejs12/patches/patch-src_inspector__agent.cc13
-rw-r--r--lang/nodejs12/patches/patch-src_node__postmortem__metadata.cc15
-rw-r--r--lang/nodejs12/patches/patch-tools_gyp_pylib_gyp_common.py14
-rw-r--r--lang/nodejs12/patches/patch-tools_gyp_pylib_gyp_generator_make.py25
-rw-r--r--lang/nodejs12/patches/patch-tools_gyp_pylib_gyp_xcode__emulation.py15
-rw-r--r--lang/nodejs12/patches/patch-tools_install.py18
-rw-r--r--lang/nodejs6/Makefile8
-rw-r--r--lang/nodejs6/PLIST26
-rw-r--r--lang/nodejs6/buildlink3.mk31
-rw-r--r--lang/nodejs6/distinfo27
-rw-r--r--lang/nodejs6/patches/patch-common.gypi15
-rw-r--r--lang/nodejs6/patches/patch-deps_cares_cares.gyp36
-rw-r--r--lang/nodejs6/patches/patch-deps_uv_src_unix_netbsd.c28
-rw-r--r--lang/nodejs6/patches/patch-deps_uv_uv.gyp42
-rw-r--r--lang/nodejs6/patches/patch-deps_v8__inspector_third__party_v8__inspector_platform_v8__inspector_PlatformSTL.h15
-rw-r--r--lang/nodejs6/patches/patch-deps_v8_src_base_atomicops__internals__arm__gcc.h25
-rw-r--r--lang/nodejs6/patches/patch-deps_v8_src_base_platform_semaphore.cc26
-rw-r--r--lang/nodejs6/patches/patch-deps_v8_src_log-utils.h17
-rw-r--r--lang/nodejs6/patches/patch-deps_v8_src_types.h21
-rw-r--r--lang/nodejs6/patches/patch-src_cares__wrap.cc17
-rw-r--r--lang/nodejs6/patches/patch-tools_gyp_pylib_gyp_common.py16
97 files changed, 2599 insertions, 400 deletions
diff --git a/lang/Makefile b/lang/Makefile
index 5d42b3f911f..2e769b80809 100644
--- a/lang/Makefile
+++ b/lang/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.529 2019/12/07 21:35:18 bsiegert Exp $
+# $NetBSD: Makefile,v 1.530 2019/12/09 20:05:40 adam Exp $
#
COMMENT= Programming languages
@@ -159,7 +159,8 @@ SUBDIR+= newsqueak
SUBDIR+= nhc98
SUBDIR+= nim
SUBDIR+= nodejs
-SUBDIR+= nodejs6
+SUBDIR+= nodejs10
+SUBDIR+= nodejs12
SUBDIR+= nodejs8
SUBDIR+= npm
SUBDIR+= nqp
diff --git a/lang/nodejs6/DESCR b/lang/nodejs10/DESCR
index e69c2740a03..83598f5ed43 100644
--- a/lang/nodejs6/DESCR
+++ b/lang/nodejs10/DESCR
@@ -1,4 +1,4 @@
Node.js is an evented I/O framework for the V8 JavaScript engine. It is
intended for writing scalable network programs such as web servers.
-This package holds the 6.x LTS release.
+This package holds the 10.x LTS release.
diff --git a/lang/nodejs10/Makefile b/lang/nodejs10/Makefile
new file mode 100644
index 00000000000..5271ba742a3
--- /dev/null
+++ b/lang/nodejs10/Makefile
@@ -0,0 +1,44 @@
+# $NetBSD: Makefile,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+DISTNAME= node-v10.17.0
+
+USE_LANGUAGES= c gnu++14
+
+# Stated by the changelog as of 8.2.0
+GCC_REQD+= 4.9.4
+
+# Stated by the changelog
+BUILDLINK_API_DEPENDS.libuv+= libuv>=1.23
+
+# Requires http_parser_set_max_header_size
+BUILDLINK_API_DEPENDS.http-parser+= http-parser>=2.9.0
+
+.include "../../mk/bsd.prefs.mk"
+
+# XXX: figure out a way to add rpaths to torque
+MAKE_ENV+= LD_LIBRARY_PATH=${PREFIX}/lib
+
+# Optional OpenSSL support in nghttp2 conflicts with OpenSSL 1.1.x
+# bundled and built by lang/nodejs.
+# Uncomment when we switch to openssl>=1.1
+# CONFIGURE_ARGS+= --shared-nghttp2
+CONFIGURE_ARGS+= --with-intl=system-icu
+CONFIGURE_ARGS+= --shared-http-parser
+
+CHECK_PORTABILITY_SKIP+= deps/openssl/openssl/.travis-create-release.sh
+
+.if ${MACHINE_ARCH} == "i386"
+# 64 bit atomic ops are required
+CXXFLAGS+= -march=i586
+# required for SSE2 code under i386.
+CXXFLAGS+= -mstackrealign
+.endif
+
+.include "options.mk"
+
+.include "../../lang/nodejs/Makefile.common"
+.include "../../textproc/icu/buildlink3.mk"
+.include "../../www/http-parser/buildlink3.mk"
+# Uncomment when we switch to openssl>=1.1
+# .include "../../www/nghttp2/buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/lang/nodejs10/PLIST b/lang/nodejs10/PLIST
new file mode 100644
index 00000000000..0f738f8fe34
--- /dev/null
+++ b/lang/nodejs10/PLIST
@@ -0,0 +1,432 @@
+@comment $NetBSD: PLIST,v 1.1 2019/12/09 20:05:40 adam Exp $
+bin/node
+include/node/common.gypi
+include/node/config.gypi
+include/node/libplatform/libplatform-export.h
+include/node/libplatform/libplatform.h
+include/node/libplatform/v8-tracing.h
+include/node/node.h
+include/node/node_api.h
+include/node/node_api_types.h
+include/node/node_buffer.h
+include/node/node_object_wrap.h
+include/node/node_version.h
+${PLIST.openssl}include/node/openssl/aes.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86_64/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86_64/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86_64/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86_64/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86_64/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86_64/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86_64/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86_64/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86_64/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86_64/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86_64/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86_64/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86_64/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN32/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN32/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN32/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN32/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN32/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN32/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN32/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN32/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN32/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN32/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN32/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN32/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN32/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64-ARM/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64-ARM/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64-ARM/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64A/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64A/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64A/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64A/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64A/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64A/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64A/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64A/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64A/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64A/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64A/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64A/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64A/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/aix-gcc/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/aix-gcc/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/aix-gcc/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/aix-gcc/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/aix-gcc/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/aix-gcc/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/aix-gcc/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/aix-gcc/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/aix-gcc/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/aix-gcc/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/aix-gcc/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/aix-gcc/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/aix-gcc/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/aix-gcc/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/aix-gcc/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/aix64-gcc/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/aix64-gcc/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/aix64-gcc/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/aix64-gcc/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/aix64-gcc/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/aix64-gcc/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/aix64-gcc/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/aix64-gcc/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/aix64-gcc/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/aix64-gcc/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/aix64-gcc/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/aix64-gcc/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/aix64-gcc/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/aix64-gcc/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/aix64-gcc/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/darwin-i386-cc/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/darwin-i386-cc/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/darwin-i386-cc/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/darwin-i386-cc/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/darwin-i386-cc/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/darwin-i386-cc/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/darwin-i386-cc/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/darwin-i386-cc/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/darwin-i386-cc/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/darwin-i386-cc/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/darwin-i386-cc/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/darwin64-x86_64-cc/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/darwin64-x86_64-cc/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/darwin64-x86_64-cc/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/darwin64-x86_64-cc/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/darwin64-x86_64-cc/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/darwin64-x86_64-cc/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/darwin64-x86_64-cc/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-aarch64/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-aarch64/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-aarch64/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-aarch64/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-aarch64/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-aarch64/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-aarch64/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-aarch64/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-aarch64/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-aarch64/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-aarch64/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-aarch64/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-aarch64/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-armv4/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-armv4/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-armv4/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-armv4/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-armv4/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-armv4/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-armv4/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-armv4/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-armv4/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-armv4/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-armv4/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-armv4/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-armv4/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-armv4/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-elf/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-elf/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-elf/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-elf/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-elf/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-elf/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-elf/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-elf/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-elf/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-elf/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-elf/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-elf/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-elf/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-elf/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64le/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64le/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64le/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64le/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64le/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64le/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64le/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64le/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64le/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64le/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64le/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64le/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64le/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-x32/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x32/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x32/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x32/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x32/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-x32/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x32/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x32/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x32/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x32/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-x32/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x32/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x32/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x32/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x32/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-x86_64/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x86_64/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x86_64/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x86_64/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x86_64/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-x86_64/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x86_64/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x86_64/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x86_64/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-x86_64/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x86_64/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x86_64/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x86_64/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux32-s390x/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux32-s390x/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux32-s390x/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux32-s390x/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux32-s390x/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux32-s390x/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux32-s390x/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux32-s390x/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux32-s390x/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux32-s390x/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux32-s390x/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux32-s390x/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux32-s390x/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux64-s390x/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-s390x/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-s390x/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-s390x/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-s390x/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux64-s390x/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-s390x/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-s390x/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-s390x/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux64-s390x/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-s390x/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-s390x/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-s390x/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/solaris-x86-gcc/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/solaris-x86-gcc/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/solaris-x86-gcc/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/solaris-x86-gcc/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/solaris-x86-gcc/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/solaris-x86-gcc/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/solaris-x86-gcc/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/solaris-x86-gcc/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/solaris-x86-gcc/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/solaris-x86-gcc/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/solaris-x86-gcc/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/solaris64-x86_64-gcc/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/solaris64-x86_64-gcc/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/solaris64-x86_64-gcc/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/asn1.h
+${PLIST.openssl}include/node/openssl/asn1_mac.h
+${PLIST.openssl}include/node/openssl/asn1err.h
+${PLIST.openssl}include/node/openssl/asn1t.h
+${PLIST.openssl}include/node/openssl/async.h
+${PLIST.openssl}include/node/openssl/asyncerr.h
+${PLIST.openssl}include/node/openssl/bio.h
+${PLIST.openssl}include/node/openssl/bioerr.h
+${PLIST.openssl}include/node/openssl/blowfish.h
+${PLIST.openssl}include/node/openssl/bn.h
+${PLIST.openssl}include/node/openssl/bn_conf.h
+${PLIST.openssl}include/node/openssl/bn_conf_asm.h
+${PLIST.openssl}include/node/openssl/bn_conf_no-asm.h
+${PLIST.openssl}include/node/openssl/bnerr.h
+${PLIST.openssl}include/node/openssl/buffer.h
+${PLIST.openssl}include/node/openssl/buffererr.h
+${PLIST.openssl}include/node/openssl/camellia.h
+${PLIST.openssl}include/node/openssl/cast.h
+${PLIST.openssl}include/node/openssl/cmac.h
+${PLIST.openssl}include/node/openssl/cms.h
+${PLIST.openssl}include/node/openssl/cmserr.h
+${PLIST.openssl}include/node/openssl/comp.h
+${PLIST.openssl}include/node/openssl/comperr.h
+${PLIST.openssl}include/node/openssl/conf.h
+${PLIST.openssl}include/node/openssl/conf_api.h
+${PLIST.openssl}include/node/openssl/conferr.h
+${PLIST.openssl}include/node/openssl/crypto.h
+${PLIST.openssl}include/node/openssl/cryptoerr.h
+${PLIST.openssl}include/node/openssl/ct.h
+${PLIST.openssl}include/node/openssl/cterr.h
+${PLIST.openssl}include/node/openssl/des.h
+${PLIST.openssl}include/node/openssl/dh.h
+${PLIST.openssl}include/node/openssl/dherr.h
+${PLIST.openssl}include/node/openssl/dsa.h
+${PLIST.openssl}include/node/openssl/dsaerr.h
+${PLIST.openssl}include/node/openssl/dso_conf.h
+${PLIST.openssl}include/node/openssl/dso_conf_asm.h
+${PLIST.openssl}include/node/openssl/dso_conf_no-asm.h
+${PLIST.openssl}include/node/openssl/dtls1.h
+${PLIST.openssl}include/node/openssl/e_os2.h
+${PLIST.openssl}include/node/openssl/ebcdic.h
+${PLIST.openssl}include/node/openssl/ec.h
+${PLIST.openssl}include/node/openssl/ecdh.h
+${PLIST.openssl}include/node/openssl/ecdsa.h
+${PLIST.openssl}include/node/openssl/ecerr.h
+${PLIST.openssl}include/node/openssl/engine.h
+${PLIST.openssl}include/node/openssl/engineerr.h
+${PLIST.openssl}include/node/openssl/err.h
+${PLIST.openssl}include/node/openssl/evp.h
+${PLIST.openssl}include/node/openssl/evperr.h
+${PLIST.openssl}include/node/openssl/hmac.h
+${PLIST.openssl}include/node/openssl/idea.h
+${PLIST.openssl}include/node/openssl/kdf.h
+${PLIST.openssl}include/node/openssl/kdferr.h
+${PLIST.openssl}include/node/openssl/lhash.h
+${PLIST.openssl}include/node/openssl/md2.h
+${PLIST.openssl}include/node/openssl/md4.h
+${PLIST.openssl}include/node/openssl/md5.h
+${PLIST.openssl}include/node/openssl/mdc2.h
+${PLIST.openssl}include/node/openssl/modes.h
+${PLIST.openssl}include/node/openssl/obj_mac.h
+${PLIST.openssl}include/node/openssl/objects.h
+${PLIST.openssl}include/node/openssl/objectserr.h
+${PLIST.openssl}include/node/openssl/ocsp.h
+${PLIST.openssl}include/node/openssl/ocsperr.h
+${PLIST.openssl}include/node/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/opensslconf_asm.h
+${PLIST.openssl}include/node/openssl/opensslconf_no-asm.h
+${PLIST.openssl}include/node/openssl/opensslv.h
+${PLIST.openssl}include/node/openssl/ossl_typ.h
+${PLIST.openssl}include/node/openssl/pem.h
+${PLIST.openssl}include/node/openssl/pem2.h
+${PLIST.openssl}include/node/openssl/pemerr.h
+${PLIST.openssl}include/node/openssl/pkcs12.h
+${PLIST.openssl}include/node/openssl/pkcs12err.h
+${PLIST.openssl}include/node/openssl/pkcs7.h
+${PLIST.openssl}include/node/openssl/pkcs7err.h
+${PLIST.openssl}include/node/openssl/rand.h
+${PLIST.openssl}include/node/openssl/rand_drbg.h
+${PLIST.openssl}include/node/openssl/randerr.h
+${PLIST.openssl}include/node/openssl/rc2.h
+${PLIST.openssl}include/node/openssl/rc4.h
+${PLIST.openssl}include/node/openssl/rc5.h
+${PLIST.openssl}include/node/openssl/ripemd.h
+${PLIST.openssl}include/node/openssl/rsa.h
+${PLIST.openssl}include/node/openssl/rsaerr.h
+${PLIST.openssl}include/node/openssl/safestack.h
+${PLIST.openssl}include/node/openssl/seed.h
+${PLIST.openssl}include/node/openssl/sha.h
+${PLIST.openssl}include/node/openssl/srp.h
+${PLIST.openssl}include/node/openssl/srtp.h
+${PLIST.openssl}include/node/openssl/ssl.h
+${PLIST.openssl}include/node/openssl/ssl2.h
+${PLIST.openssl}include/node/openssl/ssl3.h
+${PLIST.openssl}include/node/openssl/sslerr.h
+${PLIST.openssl}include/node/openssl/stack.h
+${PLIST.openssl}include/node/openssl/store.h
+${PLIST.openssl}include/node/openssl/storeerr.h
+${PLIST.openssl}include/node/openssl/symhacks.h
+${PLIST.openssl}include/node/openssl/tls1.h
+${PLIST.openssl}include/node/openssl/ts.h
+${PLIST.openssl}include/node/openssl/tserr.h
+${PLIST.openssl}include/node/openssl/txt_db.h
+${PLIST.openssl}include/node/openssl/ui.h
+${PLIST.openssl}include/node/openssl/uierr.h
+${PLIST.openssl}include/node/openssl/whrlpool.h
+${PLIST.openssl}include/node/openssl/x509.h
+${PLIST.openssl}include/node/openssl/x509_vfy.h
+${PLIST.openssl}include/node/openssl/x509err.h
+${PLIST.openssl}include/node/openssl/x509v3.h
+${PLIST.openssl}include/node/openssl/x509v3err.h
+include/node/v8-inspector-protocol.h
+include/node/v8-inspector.h
+include/node/v8-platform.h
+include/node/v8-profiler.h
+include/node/v8-testing.h
+include/node/v8-util.h
+include/node/v8-value-serializer-version.h
+include/node/v8-version-string.h
+include/node/v8-version.h
+include/node/v8.h
+include/node/v8config.h
+${PLIST.dtrace}lib/dtrace/node.d
+man/man1/node.1
+share/doc/node/gdbinit
+share/doc/node/lldb_commands.py
+share/doc/node/lldbinit
+share/systemtap/tapset/node.stp
diff --git a/lang/nodejs10/buildlink3.mk b/lang/nodejs10/buildlink3.mk
new file mode 100644
index 00000000000..01b55e8b1d8
--- /dev/null
+++ b/lang/nodejs10/buildlink3.mk
@@ -0,0 +1,40 @@
+# $NetBSD: buildlink3.mk,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+BUILDLINK_TREE+= nodejs
+
+.if !defined(NODEJS_BUILDLINK3_MK)
+NODEJS_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.nodejs+= nodejs>=10
+BUILDLINK_ABI_DEPENDS.nodejs?= nodejs>=10.15.3nb2
+BUILDLINK_PKGSRCDIR.nodejs?= ../../lang/nodejs10
+
+.include "../../mk/bsd.fast.prefs.mk"
+
+.if ${OPSYS} != "Darwin"
+.include "../../devel/libexecinfo/buildlink3.mk"
+.endif
+# Stated by the changelog
+BUILDLINK_API_DEPENDS.libuv+= libuv>=1.23
+.include "../../devel/libuv/buildlink3.mk"
+.include "../../devel/zlib/buildlink3.mk"
+.include "../../net/libcares/buildlink3.mk"
+.include "../../textproc/icu/buildlink3.mk"
+# Requires http_parser_set_max_header_size
+BUILDLINK_API_DEPENDS.http-parser+= http-parser>=2.9.0
+.include "../../www/http-parser/buildlink3.mk"
+# Uncomment when we switch to openssl>=1.1
+# .include "../../www/nghttp2/buildlink3.mk"
+.include "../../mk/pthread.buildlink3.mk"
+
+pkgbase := nodejs
+.include "../../mk/pkg-build-options.mk"
+
+# Enable when we start using pkgsrc openssl-1.1.x
+#.if !empty(PKG_BUILD_OPTIONS.nodejs:Mopenssl)
+#. include "../../security/openssl/buildlink3.mk"
+#.endif
+
+.endif # NODEJS_BUILDLINK3_MK
+
+BUILDLINK_TREE+= -nodejs
diff --git a/lang/nodejs10/distinfo b/lang/nodejs10/distinfo
new file mode 100644
index 00000000000..2021f522309
--- /dev/null
+++ b/lang/nodejs10/distinfo
@@ -0,0 +1,43 @@
+$NetBSD: distinfo,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+SHA1 (node-v10.17.0.tar.gz) = c702535dc9470b4b7dc1321077287702997813a1
+RMD160 (node-v10.17.0.tar.gz) = 793415ea68bfb4fa6f9354a059fda3d11d139471
+SHA512 (node-v10.17.0.tar.gz) = e569efde671285411668281d8673d6b7a1ac3ac96ffbbd0fb1d9c737151cb04666ebbd1bedfb7150f214c35d8f20401e56bae2195ac98ca5ae0bea6ea59b7139
+Size (node-v10.17.0.tar.gz) = 45814546 bytes
+SHA1 (patch-common.gypi) = de37949f38d9bd39a18b59d59ec74e528bd323ac
+SHA1 (patch-configure.py) = 077e0b223d441d17495641d2e4048c8831a54393
+SHA1 (patch-deps_cares_cares.gyp) = 22b44f2ac59963f694dfe4f4585e08960b3dec32
+SHA1 (patch-deps_openssl_config_archs_linux-elf_asm_openssl-cl.gypi) = 12c91ca27ced24cabd714902fad9c9eb0ba40f9b
+SHA1 (patch-deps_openssl_config_bn__conf__asm.h) = a4cf4f0771c96fb09a00b76b25d35000d65ef92f
+SHA1 (patch-deps_openssl_config_bn__conf__no-asm.h) = c13b305c7a93b7adf61186d50ac637a6d180fa18
+SHA1 (patch-deps_openssl_config_dso__conf__asm.h) = ae8285306fd165dc881fd8c6783cf0977d73371a
+SHA1 (patch-deps_openssl_config_dso__conf__no-asm.h) = 78fe6bf2251940ad27913a624abdfb892e69f438
+SHA1 (patch-deps_openssl_config_opensslconf__asm.h) = e9bb26b66431595d13d4173d3ed5f3e583bd009f
+SHA1 (patch-deps_openssl_config_opensslconf__no-asm.h) = 63c493a4e2b98fb630a094908aa5c4b629181d15
+SHA1 (patch-deps_openssl_openssl-cl__asm.gypi) = addb5837ea7b8ea2732cd2f5aaa8a24289b1199f
+SHA1 (patch-deps_openssl_openssl-cl__no__asm.gypi) = 73368f336dbe500e45f0ba6bbb7656416a27b294
+SHA1 (patch-deps_openssl_openssl__asm.gypi) = b85e1f5a9f862d469afcb36ff6e1ad202bea704a
+SHA1 (patch-deps_openssl_openssl__no__asm.gypi) = b549ea34f51e26669a41a64da0db10e92f0d0a99
+SHA1 (patch-deps_openssl_openssl_crypto_rand_rand__unix.c) = ba8d4602c3386801ad8d3c33c757c69ad3d25a34
+SHA1 (patch-deps_uv_common.gypi) = d38a9c8d9e3522f15812aec2f5b1e1e636d4bab3
+SHA1 (patch-deps_uv_src_unix_netbsd.c) = 76b27ae86aa80582554ee824146ee7c42c33883b
+SHA1 (patch-deps_v8_src_arm_assembler-arm-inl.h) = 56a5d6539d31e19673ef61cc91f003109c69dc29
+SHA1 (patch-deps_v8_src_arm_assembler-arm.cc) = f32d5d2a1096f822c813eaf6d02b9348564213f6
+SHA1 (patch-deps_v8_src_arm_cpu-arm.cc) = d0d11ac474ab109a6f40b26fa457b12d742eb48d
+SHA1 (patch-deps_v8_src_base_atomicops.h) = 552d2b7781b39b93392fd00043b1cf4cb10802da
+SHA1 (patch-deps_v8_src_base_platform_platform-freebsd.cc) = 427c7712fc1c2872fc48e593f7ab491c69ee44e3
+SHA1 (patch-deps_v8_src_base_platform_platform-openbsd.cc) = 5e593879dbab095f99e82593272a0de91043f9a8
+SHA1 (patch-deps_v8_src_base_platform_platform-posix.cc) = 0d80cc6587af9220832de112834e9f50242f819f
+SHA1 (patch-deps_v8_src_base_platform_semaphore.cc) = aa84bf1dbaac5808529f6b01502d117c88751649
+SHA1 (patch-deps_v8_src_compiler_types.h) = 711cc94535200374104c3cd1f0fbbd00994701a6
+SHA1 (patch-deps_v8_src_globals.h) = 6695a381000844ad9837bdbc3edbe9040ec4d5ff
+SHA1 (patch-deps_v8_src_log-utils.h) = 765e4e4af2cb11e38c033174ac92fbb6ee1fd480
+SHA1 (patch-deps_v8_tools_run-llprof.sh) = 39aa3faf77492ef8dd35b411b7b0e4605b469af3
+SHA1 (patch-node.gypi) = 4a104dba6c22702211009bc60a6be6f87554e2fa
+SHA1 (patch-src_cares__wrap.cc) = a26a162f130468cbc0650a33b27b71377d273704
+SHA1 (patch-src_inspector__agent.cc) = 6066c01b671a1d416440b073a7a21fdf22eef926
+SHA1 (patch-src_node__postmortem__metadata.cc) = 9938482d724ad6636af5dc3fa719ec26ed8539ff
+SHA1 (patch-tools_gyp_pylib_gyp_common.py) = 8d76b78e46b0ba2fef08294872e17a068d595f32
+SHA1 (patch-tools_gyp_pylib_gyp_generator_make.py) = be3cc1aaa85c3d59b6f2758df813cb5ad8d8f74e
+SHA1 (patch-tools_gyp_pylib_gyp_xcode__emulation.py) = 15937c419f3226ab280c7bcd5d726773cb5add57
+SHA1 (patch-tools_install.py) = aae60d31e8c2e74f18c61c328913412545943d79
diff --git a/lang/nodejs6/options.mk b/lang/nodejs10/options.mk
index 783e3415a3a..e8fd2bf36ab 100644
--- a/lang/nodejs6/options.mk
+++ b/lang/nodejs10/options.mk
@@ -1,4 +1,4 @@
-# $NetBSD: options.mk,v 1.2 2018/05/03 21:12:23 fhajny Exp $
+# $NetBSD: options.mk,v 1.1 2019/12/09 20:05:40 adam Exp $
PKG_OPTIONS_VAR= PKG_OPTIONS.node
PKG_SUPPORTED_OPTIONS= openssl dtrace
@@ -13,7 +13,7 @@ PKG_SUGGESTED_OPTIONS+= dtrace
.include "../../mk/bsd.options.mk"
-PLIST_VARS+= dtrace
+PLIST_VARS+= dtrace openssl
.if !empty(PKG_OPTIONS:Mdtrace)
CONFIGURE_ARGS+= --with-dtrace
@@ -24,13 +24,11 @@ CONFIGURE_ARGS+= --without-dtrace
# print-PLIST helper
PRINT_PLIST_AWK+= {if ($$0 ~ /lib\/dtrace/) {$$0 = "$${PLIST.dtrace}" $$0;}}
+PRINT_PLIST_AWK+= {if ($$0 ~ /include\/node\/openssl/) {$$0 = "$${PLIST.openssl}" $$0;}}
.if !empty(PKG_OPTIONS:Mopenssl)
-BUILDLINK_API_DEPENDS.openssl+= openssl>=1.0.2
-.include "../../security/openssl/buildlink3.mk"
-CONFIGURE_ARGS+= --shared-openssl
-_WRAP_EXTRA_ARGS.CXX+= ${COMPILER_RPATH_FLAG}${BUILDLINK_PREFIX.openssl}/lib
-CWRAPPERS_APPEND.cxx+= ${COMPILER_RPATH_FLAG}${BUILDLINK_PREFIX.openssl}/lib
+# nodejs 10.x requires OpenSSL 1.1.x. Use embedded source until we have such.
+PLIST.openssl= yes
.else
CONFIGURE_ARGS+= --without-ssl
.endif
diff --git a/lang/nodejs10/patches/patch-common.gypi b/lang/nodejs10/patches/patch-common.gypi
new file mode 100644
index 00000000000..3de0a9d55d1
--- /dev/null
+++ b/lang/nodejs10/patches/patch-common.gypi
@@ -0,0 +1,20 @@
+$NetBSD: patch-common.gypi,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Add support for NetBSD.
+
+--- common.gypi.orig 2018-04-24 14:41:15.000000000 +0000
++++ common.gypi
+@@ -315,11 +315,11 @@
+ 'BUILDING_UV_SHARED=1',
+ ],
+ }],
+- [ 'OS in "linux freebsd openbsd solaris aix"', {
++ [ 'OS in "linux freebsd openbsd netbsd solaris aix"', {
+ 'cflags': [ '-pthread' ],
+ 'ldflags': [ '-pthread' ],
+ }],
+- [ 'OS in "linux freebsd openbsd solaris android aix cloudabi"', {
++ [ 'OS in "linux freebsd openbsd netbsd netbsd solaris android aix cloudabi"', {
+ 'cflags': [ '-Wall', '-Wextra', '-Wno-unused-parameter', ],
+ 'cflags_cc': [ '-fno-rtti', '-fno-exceptions', '-std=gnu++1y' ],
+ 'ldflags': [ '-rdynamic' ],
diff --git a/lang/nodejs10/patches/patch-configure.py b/lang/nodejs10/patches/patch-configure.py
new file mode 100644
index 00000000000..45a2c26e08c
--- /dev/null
+++ b/lang/nodejs10/patches/patch-configure.py
@@ -0,0 +1,16 @@
+$NetBSD: patch-configure.py,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Support Clang/LLVM 10+
+https://github.com/nodejs/node/issues/29536
+
+--- configure.py.orig 2019-08-15 19:20:03.000000000 +0000
++++ configure.py
+@@ -705,7 +705,7 @@ def get_nasm_version(asm):
+
+ def get_llvm_version(cc):
+ return get_version_helper(
+- cc, r"(^(?:FreeBSD )?clang version|based on LLVM) ([3-9]\.[0-9]+)")
++ cc, r"(^(?:FreeBSD )?clang version|based on LLVM) ((\d{2}|[3-9])\.[0-9]+)")
+
+ def get_xcode_version(cc):
+ return get_version_helper(
diff --git a/lang/nodejs10/patches/patch-deps_cares_cares.gyp b/lang/nodejs10/patches/patch-deps_cares_cares.gyp
new file mode 100644
index 00000000000..90b6c3a0f58
--- /dev/null
+++ b/lang/nodejs10/patches/patch-deps_cares_cares.gyp
@@ -0,0 +1,17 @@
+$NetBSD: patch-deps_cares_cares.gyp,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Add support for NetBSD.
+
+--- deps/cares/cares.gyp.orig 2013-03-14 10:55:24.000000000 +0900
++++ deps/cares/cares.gyp 2013-03-14 10:55:47.000000000 +0900
+@@ -140,6 +140,10 @@
+ 'include_dirs': [ 'config/freebsd' ],
+ 'sources': [ 'config/freebsd/ares_config.h' ]
+ }],
++ [ 'OS=="netbsd"', {
++ 'include_dirs': [ 'config/netbsd' ],
++ 'sources': [ 'config/netbsd/ares_config.h' ]
++ }],
+ [ 'OS=="openbsd"', {
+ 'include_dirs': [ 'config/openbsd' ],
+ 'sources': [ 'config/openbsd/ares_config.h' ]
diff --git a/lang/nodejs10/patches/patch-deps_openssl_config_archs_linux-elf_asm_openssl-cl.gypi b/lang/nodejs10/patches/patch-deps_openssl_config_archs_linux-elf_asm_openssl-cl.gypi
new file mode 100644
index 00000000000..bb75c142d73
--- /dev/null
+++ b/lang/nodejs10/patches/patch-deps_openssl_config_archs_linux-elf_asm_openssl-cl.gypi
@@ -0,0 +1,23 @@
+$NetBSD: patch-deps_openssl_config_archs_linux-elf_asm_openssl-cl.gypi,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+--- deps/openssl/config/archs/linux-elf/asm/openssl-cl.gypi.orig 2019-05-28 21:32:15.000000000 +0000
++++ deps/openssl/config/archs/linux-elf/asm/openssl-cl.gypi
+@@ -30,8 +30,16 @@
+ '-pthread',
+ '-Wall -O3 -fomit-frame-pointer',
+ ],
+- 'openssl_ex_libs_linux-elf': [
+- '-ldl -pthread',
++ 'conditions': [
++ ['OS=="linux"', {
++ 'openssl_ex_libs_linux-elf': [
++ '-ldl -pthread',
++ ],
++ }, {
++ 'openssl_ex_libs_linux-elf': [
++ '',
++ ],
++ }],
+ ],
+ 'openssl_cli_srcs_linux-elf': [
+ 'openssl/apps/asn1pars.c',
diff --git a/lang/nodejs10/patches/patch-deps_openssl_config_bn__conf__asm.h b/lang/nodejs10/patches/patch-deps_openssl_config_bn__conf__asm.h
new file mode 100644
index 00000000000..43a3388cc63
--- /dev/null
+++ b/lang/nodejs10/patches/patch-deps_openssl_config_bn__conf__asm.h
@@ -0,0 +1,32 @@
+$NetBSD: patch-deps_openssl_config_bn__conf__asm.h,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Support NetBSD/arm,aarch64,i386,amd64 (and hopefully other ILP32 archs)
+
+--- deps/openssl/config/bn_conf_asm.h.orig 2019-01-29 16:20:45.000000000 +0900
++++ deps/openssl/config/bn_conf_asm.h 2019-02-24 10:23:14.508941933 +0900
+@@ -9,9 +9,9 @@
+ # include "./archs/linux-x32/asm/crypto/include/internal/bn_conf.h"
+ #elif defined(OPENSSL_LINUX) && defined(__x86_64__)
+ # include "./archs/linux-x86_64/asm/crypto/include/internal/bn_conf.h"
+-#elif defined(OPENSSL_LINUX) && defined(__arm__)
++#elif (defined(OPENSSL_LINUX) || defined(__NetBSD__)) && defined(__arm__)
+ # include "./archs/linux-armv4/asm/crypto/include/internal/bn_conf.h"
+-#elif defined(OPENSSL_LINUX) && defined(__aarch64__)
++#elif (defined(OPENSSL_LINUX) || defined(__NetBSD__)) && defined(__aarch64__)
+ # include "./archs/linux-aarch64/asm/crypto/include/internal/bn_conf.h"
+ #elif defined(__APPLE__) && defined(__MACH__) && defined(__i386__)
+ # include "./archs/darwin-i386-cc/asm/crypto/include/internal/bn_conf.h"
+@@ -21,9 +21,10 @@
+ # include "./archs/VC-WIN32/asm/crypto/include/internal/bn_conf.h"
+ #elif defined(_WIN32) && defined(_M_X64)
+ # include "./archs/VC-WIN64A/asm/crypto/include/internal/bn_conf.h"
+-#elif (defined(__FreeBSD__) || defined(__OpenBSD__)) && defined(__i386__)
+-# include "./archs/BSD-x86/asm/crypto/include/internal/bn_conf.h"
+-#elif (defined(__FreeBSD__) || defined(__OpenBSD__)) && defined(__x86_64__)
++// XXX missing
++//#elif (defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__)) && defined(__i386__)
++//# include "./archs/BSD-x86/asm/crypto/include/internal/bn_conf.h"
++#elif (defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__)) && defined(__x86_64__)
+ # include "./archs/BSD-x86_64/asm/crypto/include/internal/bn_conf.h"
+ #elif defined(__sun) && defined(__i386__)
+ # include "./archs/solaris-x86-gcc/asm/crypto/include/internal/bn_conf.h"
diff --git a/lang/nodejs10/patches/patch-deps_openssl_config_bn__conf__no-asm.h b/lang/nodejs10/patches/patch-deps_openssl_config_bn__conf__no-asm.h
new file mode 100644
index 00000000000..08a37b93f12
--- /dev/null
+++ b/lang/nodejs10/patches/patch-deps_openssl_config_bn__conf__no-asm.h
@@ -0,0 +1,30 @@
+$NetBSD: patch-deps_openssl_config_bn__conf__no-asm.h,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Support NetBSD/arm,aarch64,i386,amd64 (and hopefully other ILP32 archs)
+
+--- deps/openssl/config/bn_conf_no-asm.h.orig 2019-05-28 21:32:16.000000000 +0000
++++ deps/openssl/config/bn_conf_no-asm.h
+@@ -9,9 +9,9 @@
+ # include "./archs/linux-x32/no-asm/crypto/include/internal/bn_conf.h"
+ #elif defined(OPENSSL_LINUX) && defined(__x86_64__)
+ # include "./archs/linux-x86_64/no-asm/crypto/include/internal/bn_conf.h"
+-#elif defined(OPENSSL_LINUX) && defined(__arm__)
++#elif (defined(OPENSSL_LINUX) || defined(__NetBSD__)) && defined(__arm__)
+ # include "./archs/linux-armv4/no-asm/crypto/include/internal/bn_conf.h"
+-#elif defined(OPENSSL_LINUX) && defined(__aarch64__)
++#elif (defined(OPENSSL_LINUX) || defined(__NetBSD__)) && defined(__aarch64__)
+ # include "./archs/linux-aarch64/no-asm/crypto/include/internal/bn_conf.h"
+ #elif defined(__APPLE__) && defined(__MACH__) && defined(__i386__)
+ # include "./archs/darwin-i386-cc/no-asm/crypto/include/internal/bn_conf.h"
+@@ -23,9 +23,9 @@
+ # include "./archs/VC-WIN64A/no-asm/crypto/include/internal/bn_conf.h"
+ #elif defined(_WIN32) && defined(_M_ARM64)
+ # include "./archs/VC-WIN64-ARM/no-asm/crypto/include/internal/bn_conf.h"
+-#elif (defined(__FreeBSD__) || defined(__OpenBSD__)) && defined(__i386__)
++#elif (defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__)) && defined(__i386__)
+ # include "./archs/BSD-x86/no-asm/crypto/include/internal/bn_conf.h"
+-#elif (defined(__FreeBSD__) || defined(__OpenBSD__)) && defined(__x86_64__)
++#elif (defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__)) && defined(__x86_64__)
+ # include "./archs/BSD-x86_64/no-asm/crypto/include/internal/bn_conf.h"
+ #elif defined(__sun) && defined(__i386__)
+ # include "./archs/solaris-x86-gcc/no-asm/crypto/include/internal/bn_conf.h"
diff --git a/lang/nodejs10/patches/patch-deps_openssl_config_dso__conf__asm.h b/lang/nodejs10/patches/patch-deps_openssl_config_dso__conf__asm.h
new file mode 100644
index 00000000000..cce3538f854
--- /dev/null
+++ b/lang/nodejs10/patches/patch-deps_openssl_config_dso__conf__asm.h
@@ -0,0 +1,32 @@
+$NetBSD: patch-deps_openssl_config_dso__conf__asm.h,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Support NetBSD/arm,aarch64,i386,amd64 (and hopefully other ILP32 archs)
+
+--- deps/openssl/config/dso_conf_asm.h.orig 2019-02-24 10:37:55.875191472 +0900
++++ deps/openssl/config/dso_conf_asm.h 2019-02-24 10:24:24.895671320 +0900
+@@ -9,9 +9,9 @@
+ # include "./archs/linux-x32/asm/crypto/include/internal/dso_conf.h"
+ #elif defined(OPENSSL_LINUX) && defined(__x86_64__)
+ # include "./archs/linux-x86_64/asm/crypto/include/internal/dso_conf.h"
+-#elif defined(OPENSSL_LINUX) && defined(__arm__)
++#elif (defined(OPENSSL_LINUX) || defined(__NetBSD__)) && defined(__arm__)
+ # include "./archs/linux-armv4/asm/crypto/include/internal/dso_conf.h"
+-#elif defined(OPENSSL_LINUX) && defined(__aarch64__)
++#elif (defined(OPENSSL_LINUX) || defined(__NetBSD__)) && defined(__aarch64__)
+ # include "./archs/linux-aarch64/asm/crypto/include/internal/dso_conf.h"
+ #elif defined(__APPLE__) && defined(__MACH__) && defined(__i386__)
+ # include "./archs/darwin-i386-cc/asm/crypto/include/internal/dso_conf.h"
+@@ -21,9 +21,10 @@
+ # include "./archs/VC-WIN32/asm/crypto/include/internal/dso_conf.h"
+ #elif defined(_WIN32) && defined(_M_X64)
+ # include "./archs/VC-WIN64A/asm/crypto/include/internal/dso_conf.h"
+-#elif (defined(__FreeBSD__) || defined(__OpenBSD__)) && defined(__i386__)
+-# include "./archs/BSD-x86/asm/crypto/include/internal/dso_conf.h"
+-#elif (defined(__FreeBSD__) || defined(__OpenBSD__)) && defined(__x86_64__)
++// XXX missing
++//#elif (defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__)) && defined(__i386__)
++//# include "./archs/BSD-x86/asm/crypto/include/internal/dso_conf.h"
++#elif (defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__)) && defined(__x86_64__)
+ # include "./archs/BSD-x86_64/asm/crypto/include/internal/dso_conf.h"
+ #elif defined(__sun) && defined(__i386__)
+ # include "./archs/solaris-x86-gcc/asm/crypto/include/internal/dso_conf.h"
diff --git a/lang/nodejs10/patches/patch-deps_openssl_config_dso__conf__no-asm.h b/lang/nodejs10/patches/patch-deps_openssl_config_dso__conf__no-asm.h
new file mode 100644
index 00000000000..6b8a7561648
--- /dev/null
+++ b/lang/nodejs10/patches/patch-deps_openssl_config_dso__conf__no-asm.h
@@ -0,0 +1,30 @@
+$NetBSD: patch-deps_openssl_config_dso__conf__no-asm.h,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Support NetBSD/arm,aarch64,i386,amd64 (and hopefully other ILP32 archs)
+
+--- deps/openssl/config/dso_conf_no-asm.h.orig 2019-05-28 21:32:16.000000000 +0000
++++ deps/openssl/config/dso_conf_no-asm.h
+@@ -9,9 +9,9 @@
+ # include "./archs/linux-x32/no-asm/crypto/include/internal/dso_conf.h"
+ #elif defined(OPENSSL_LINUX) && defined(__x86_64__)
+ # include "./archs/linux-x86_64/no-asm/crypto/include/internal/dso_conf.h"
+-#elif defined(OPENSSL_LINUX) && defined(__arm__)
++#elif (defined(OPENSSL_LINUX) || defined(__NetBSD__)) && defined(__arm__)
+ # include "./archs/linux-armv4/no-asm/crypto/include/internal/dso_conf.h"
+-#elif defined(OPENSSL_LINUX) && defined(__aarch64__)
++#elif (defined(OPENSSL_LINUX) || defined(__NetBSD__)) && defined(__aarch64__)
+ # include "./archs/linux-aarch64/no-asm/crypto/include/internal/dso_conf.h"
+ #elif defined(__APPLE__) && defined(__MACH__) && defined(__i386__)
+ # include "./archs/darwin-i386-cc/no-asm/crypto/include/internal/dso_conf.h"
+@@ -23,9 +23,9 @@
+ # include "./archs/VC-WIN64A/no-asm/crypto/include/internal/dso_conf.h"
+ #elif defined(_WIN32) && defined(_M_ARM64)
+ # include "./archs/VC-WIN64-ARM/no-asm/crypto/include/internal/dso_conf.h"
+-#elif (defined(__FreeBSD__) || defined(__OpenBSD__)) && defined(__i386__)
++#elif (defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__)) && defined(__i386__)
+ # include "./archs/BSD-x86/no-asm/crypto/include/internal/dso_conf.h"
+-#elif (defined(__FreeBSD__) || defined(__OpenBSD__)) && defined(__x86_64__)
++#elif (defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__)) && defined(__x86_64__)
+ # include "./archs/BSD-x86_64/no-asm/crypto/include/internal/dso_conf.h"
+ #elif defined(__sun) && defined(__i386__)
+ # include "./archs/solaris-x86-gcc/no-asm/crypto/include/internal/dso_conf.h"
diff --git a/lang/nodejs10/patches/patch-deps_openssl_config_opensslconf__asm.h b/lang/nodejs10/patches/patch-deps_openssl_config_opensslconf__asm.h
new file mode 100644
index 00000000000..a154a6bac19
--- /dev/null
+++ b/lang/nodejs10/patches/patch-deps_openssl_config_opensslconf__asm.h
@@ -0,0 +1,29 @@
+$NetBSD: patch-deps_openssl_config_opensslconf__asm.h,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Support NetBSD/arm,aarch64,i386,amd64 (and hopefully other ILP32 archs)
+
+--- deps/openssl/config/opensslconf_asm.h.orig 2019-01-29 16:20:45.000000000 +0900
++++ deps/openssl/config/opensslconf_asm.h 2019-02-24 09:05:18.803688546 +0900
+@@ -96,9 +96,9 @@
+ # include "./archs/linux-x32/asm/include/openssl/opensslconf.h"
+ #elif defined(OPENSSL_LINUX) && defined(__x86_64__)
+ # include "./archs/linux-x86_64/asm/include/openssl/opensslconf.h"
+-#elif defined(OPENSSL_LINUX) && defined(__arm__)
++#elif (defined(OPENSSL_LINUX) || defined(__NetBSD__)) && defined(__arm__)
+ # include "./archs/linux-armv4/asm/include/openssl/opensslconf.h"
+-#elif defined(OPENSSL_LINUX) && defined(__aarch64__)
++#elif (defined(OPENSSL_LINUX) || defined(__NetBSD__)) && defined(__aarch64__)
+ # include "./archs/linux-aarch64/asm/include/openssl/opensslconf.h"
+ #elif defined(__APPLE__) && defined(__MACH__) && defined(__i386__)
+ # include "./archs/darwin-i386-cc/asm/include/openssl/opensslconf.h"
+@@ -108,9 +108,7 @@
+ # include "./archs/VC-WIN32/asm/include/openssl/opensslconf.h"
+ #elif defined(_WIN32) && defined(_M_X64)
+ # include "./archs/VC-WIN64A/asm/include/openssl/opensslconf.h"
+-#elif (defined(__FreeBSD__) || defined(__OpenBSD__)) && defined(__i386__)
+-# include "./archs/BSD-x86/asm/include/openssl/opensslconf.h"
+-#elif (defined(__FreeBSD__) || defined(__OpenBSD__)) && defined(__x86_64__)
++#elif (defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__)) && defined(__x86_64__)
+ # include "./archs/BSD-x86_64/asm/include/openssl/opensslconf.h"
+ #elif defined(__sun) && defined(__i386__)
+ # include "./archs/solaris-x86-gcc/asm/include/openssl/opensslconf.h"
diff --git a/lang/nodejs10/patches/patch-deps_openssl_config_opensslconf__no-asm.h b/lang/nodejs10/patches/patch-deps_openssl_config_opensslconf__no-asm.h
new file mode 100644
index 00000000000..4687a73a406
--- /dev/null
+++ b/lang/nodejs10/patches/patch-deps_openssl_config_opensslconf__no-asm.h
@@ -0,0 +1,30 @@
+$NetBSD: patch-deps_openssl_config_opensslconf__no-asm.h,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Support NetBSD/arm,aarch64,i386,amd64 (and hopefully other ILP32 archs)
+
+--- deps/openssl/config/opensslconf_no-asm.h.orig 2019-05-28 21:32:16.000000000 +0000
++++ deps/openssl/config/opensslconf_no-asm.h
+@@ -4,9 +4,9 @@
+ # include "./archs/linux-x32/no-asm/include/openssl/opensslconf.h"
+ #elif defined(OPENSSL_LINUX) && defined(__x86_64__)
+ # include "./archs/linux-x86_64/no-asm/include/openssl/opensslconf.h"
+-#elif defined(OPENSSL_LINUX) && defined(__arm__)
++#elif (defined(OPENSSL_LINUX) || defined(__NetBSD__)) && defined(__arm__)
+ # include "./archs/linux-armv4/no-asm/include/openssl/opensslconf.h"
+-#elif defined(OPENSSL_LINUX) && defined(__aarch64__)
++#elif (defined(OPENSSL_LINUX) || defined(__NetBSD__)) && defined(__aarch64__)
+ # include "./archs/linux-aarch64/no-asm/include/openssl/opensslconf.h"
+ #elif defined(__APPLE__) && defined(__MACH__) && defined(__i386__)
+ # include "./archs/darwin-i386-cc/no-asm/include/openssl/opensslconf.h"
+@@ -18,9 +18,9 @@
+ # include "./archs/VC-WIN64A/no-asm/include/openssl/opensslconf.h"
+ #elif defined(_WIN32) && defined(_M_ARM64)
+ # include "./archs/VC-WIN64-ARM/no-asm/include/openssl/opensslconf.h"
+-#elif (defined(__FreeBSD__) || defined(__OpenBSD__)) && defined(__i386__)
++#elif (defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__)) && defined(__i386__)
+ # include "./archs/BSD-x86/no-asm/include/openssl/opensslconf.h"
+-#elif (defined(__FreeBSD__) || defined(__OpenBSD__)) && defined(__x86_64__)
++#elif (defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__)) && defined(__x86_64__)
+ # include "./archs/BSD-x86_64/no-asm/include/openssl/opensslconf.h"
+ #elif defined(__sun) && defined(__i386__)
+ # include "./archs/solaris-x86-gcc/no-asm/include/openssl/opensslconf.h"
diff --git a/lang/nodejs10/patches/patch-deps_openssl_openssl-cl__asm.gypi b/lang/nodejs10/patches/patch-deps_openssl_openssl-cl__asm.gypi
new file mode 100644
index 00000000000..8712e722682
--- /dev/null
+++ b/lang/nodejs10/patches/patch-deps_openssl_openssl-cl__asm.gypi
@@ -0,0 +1,30 @@
+$NetBSD: patch-deps_openssl_openssl-cl__asm.gypi,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Support NetBSD/arm,aarch64,i386,amd64 (and hopefully other ILP32 archs)
+
+XXX Change default to linux-elf instead of linux-x86_64 (from FreeBSD ports)
+
+--- deps/openssl/openssl-cl_asm.gypi.orig 2019-01-29 16:20:45.000000000 +0900
++++ deps/openssl/openssl-cl_asm.gypi 2019-02-24 10:28:36.290301337 +0900
+@@ -31,6 +31,12 @@
+ 'includes': ['config/archs/linux-elf/asm/openssl-cl.gypi'],
+ }, 'target_arch=="x64" and OS=="freebsd"', {
+ 'includes': ['config/archs/BSD-x86_64/asm/openssl-cl.gypi'],
++ }, 'target_arch=="arm" and OS=="netbsd"', {
++ 'includes': ['config/archs/linux-armv4/asm/openssl-cl.gypi'],
++ }, 'target_arch=="arm64" and OS=="netbsd"', {
++ 'includes': ['config/archs/linux-aarch64/asm/openssl-cl.gypi'],
++ }, 'target_arch=="x64" and OS=="netbsd"', {
++ 'includes': ['config/archs/BSD-x86_64/asm/openssl-cl.gypi'],
+ }, 'target_arch=="x64" and OS=="mac"', {
+ 'includes': ['config/archs/darwin64-x86_64-cc/asm/openssl-cl.gypi'],
+ }, 'target_arch=="x64" and OS=="solaris"', {
+@@ -41,7 +47,7 @@
+ 'includes': ['config/archs/linux-x86_64/asm/openssl-cl.gypi'],
+ }, {
+ # Other architectures don't use assembly
+- 'includes': ['config/archs/linux-x86_64/asm/openssl-cl.gypi'],
++ 'includes': ['config/archs/linux-elf/asm/openssl-cl.gypi'],
+ }],
+ ],
+ }
diff --git a/lang/nodejs10/patches/patch-deps_openssl_openssl-cl__no__asm.gypi b/lang/nodejs10/patches/patch-deps_openssl_openssl-cl__no__asm.gypi
new file mode 100644
index 00000000000..b9ac4519fc7
--- /dev/null
+++ b/lang/nodejs10/patches/patch-deps_openssl_openssl-cl__no__asm.gypi
@@ -0,0 +1,36 @@
+$NetBSD: patch-deps_openssl_openssl-cl__no__asm.gypi,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Support NetBSD/arm,aarch64,i386,amd64 (and hopefully other ILP32 archs)
+
+XXX Change default to linux-elf instead of linux-x86_64 (from FreeBSD ports)
+
+--- deps/openssl/openssl-cl_no_asm.gypi.orig 2019-01-29 16:20:45.000000000 +0900
++++ deps/openssl/openssl-cl_no_asm.gypi 2019-02-24 10:28:59.344517509 +0900
+@@ -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'],
+@@ -31,6 +32,12 @@
+ 'includes': ['config/archs/linux-elf/no-asm/openssl-cl.gypi'],
+ }, 'target_arch=="x64" and OS=="freebsd"', {
+ 'includes': ['config/archs/BSD-x86_64/no-asm/openssl-cl.gypi'],
++ }, 'target_arch=="arm" and OS=="netbsd"', {
++ 'includes': ['config/archs/linux-armv4/no-asm/openssl-cl.gypi'],
++ }, 'target_arch=="arm64" and OS=="netbsd"', {
++ 'includes': ['config/archs/linux-aarch64/no-asm/openssl-cl.gypi'],
++ }, 'target_arch=="x64" and OS=="netbsd"', {
++ 'includes': ['config/archs/BSD-x86_64/no-asm/openssl-cl.gypi'],
+ }, 'target_arch=="x64" and OS=="mac"', {
+ 'includes': ['config/archs/darwin64-x86_64-cc/no-asm/openssl-cl.gypi'],
+ }, 'target_arch=="x64" and OS=="solaris"', {
+@@ -41,7 +48,7 @@
+ 'includes': ['config/archs/linux-x86_64/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/lang/nodejs10/patches/patch-deps_openssl_openssl__asm.gypi b/lang/nodejs10/patches/patch-deps_openssl_openssl__asm.gypi
new file mode 100644
index 00000000000..85146a3fbf6
--- /dev/null
+++ b/lang/nodejs10/patches/patch-deps_openssl_openssl__asm.gypi
@@ -0,0 +1,30 @@
+$NetBSD: patch-deps_openssl_openssl__asm.gypi,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Support NetBSD/arm,aarch64,i386,amd64 (and hopefully other ILP32 archs)
+
+XXX Change default to linux-elf instead of linux-x86_64 (from FreeBSD ports)
+
+--- deps/openssl/openssl_asm.gypi.orig 2019-01-29 16:20:46.000000000 +0900
++++ deps/openssl/openssl_asm.gypi 2019-02-24 12:11:23.696088048 +0900
+@@ -46,6 +46,12 @@
+ 'includes': ['config/archs/linux-elf/asm/openssl.gypi'],
+ }, 'target_arch=="x64" and OS=="freebsd"', {
+ 'includes': ['config/archs/BSD-x86_64/asm/openssl.gypi'],
++ }, 'target_arch=="arm" and OS=="netbsd"', {
++ 'includes': ['config/archs/linux-armv4/asm/openssl.gypi'],
++ }, 'target_arch=="arm64" and OS=="netbsd"', {
++ 'includes': ['config/archs/linux-aarch64/asm/openssl.gypi'],
++ }, 'target_arch=="x64" and OS=="netbsd"', {
++ 'includes': ['config/archs/BSD-x86_64/asm/openssl.gypi'],
+ }, 'target_arch=="x64" and OS=="mac"', {
+ 'includes': ['config/archs/darwin64-x86_64-cc/asm/openssl.gypi'],
+ }, 'target_arch=="x64" and OS=="solaris"', {
+@@ -75,7 +81,7 @@
+ 'includes': ['config/archs/linux-x86_64/asm/openssl.gypi'],
+ }, {
+ # Other architectures don't use assembly
+- 'includes': ['config/archs/linux-x86_64/asm/openssl.gypi'],
++ 'includes': ['config/archs/linux-elf/asm/openssl.gypi'],
+ }],
+ ],
+ }
diff --git a/lang/nodejs10/patches/patch-deps_openssl_openssl__no__asm.gypi b/lang/nodejs10/patches/patch-deps_openssl_openssl__no__asm.gypi
new file mode 100644
index 00000000000..ebe65d520f3
--- /dev/null
+++ b/lang/nodejs10/patches/patch-deps_openssl_openssl__no__asm.gypi
@@ -0,0 +1,30 @@
+$NetBSD: patch-deps_openssl_openssl__no__asm.gypi,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Support NetBSD/arm,aarch64,i386,amd64 (and hopefully other ILP32 archs)
+
+XXX Change default to linux-elf instead of linux-x86_64 (from FreeBSD ports)
+
+--- deps/openssl/openssl_no_asm.gypi.orig 2019-01-29 16:20:46.000000000 +0900
++++ deps/openssl/openssl_no_asm.gypi 2019-02-24 10:29:47.246812244 +0900
+@@ -32,6 +32,12 @@
+ 'includes': ['config/archs/linux-elf/no-asm/openssl.gypi'],
+ }, 'target_arch=="x64" and OS=="freebsd"', {
+ 'includes': ['config/archs/BSD-x86_64/no-asm/openssl.gypi'],
++ }, 'target_arch=="arm" and OS=="netbsd"', {
++ 'includes': ['config/archs/linux-armv4/no-asm/openssl.gypi'],
++ }, 'target_arch=="arm64" and OS=="netbsd"', {
++ 'includes': ['config/archs/linux-aarch64/no-asm/openssl.gypi'],
++ }, 'target_arch=="x64" and OS=="netbsd"', {
++ 'includes': ['config/archs/BSD-x86_64/no-asm/openssl.gypi'],
+ }, 'target_arch=="x64" and OS=="mac"', {
+ 'includes': ['config/archs/darwin64-x86_64-cc/no-asm/openssl.gypi'],
+ }, 'target_arch=="x64" and OS=="solaris"', {
+@@ -42,7 +48,7 @@
+ 'includes': ['config/archs/linux-x86_64/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/lang/nodejs10/patches/patch-deps_openssl_openssl_crypto_rand_rand__unix.c b/lang/nodejs10/patches/patch-deps_openssl_openssl_crypto_rand_rand__unix.c
new file mode 100644
index 00000000000..71be2459e1a
--- /dev/null
+++ b/lang/nodejs10/patches/patch-deps_openssl_openssl_crypto_rand_rand__unix.c
@@ -0,0 +1,16 @@
+$NetBSD: patch-deps_openssl_openssl_crypto_rand_rand__unix.c,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Don't try to automatically call getentropy(3C) on SunOS, it fails if
+built on a platform that doesn't have it.
+
+--- deps/openssl/openssl/crypto/rand/rand_unix.c.orig 2019-05-28 21:32:16.000000000 +0000
++++ deps/openssl/openssl/crypto/rand/rand_unix.c
+@@ -301,7 +301,7 @@ static ssize_t syscall_random(void *buf,
+ * - Linux since 3.17 with glibc 2.25
+ * - FreeBSD since 12.0 (1200061)
+ */
+-# if defined(__GNUC__) && __GNUC__>=2 && defined(__ELF__) && !defined(__hpux)
++# if defined(__GNUC__) && __GNUC__>=2 && defined(__ELF__) && !defined(__hpux) && !defined(__sun)
+ extern int getentropy(void *buffer, size_t length) __attribute__((weak));
+
+ if (getentropy != NULL)
diff --git a/lang/nodejs6/patches/patch-deps_uv_common.gypi b/lang/nodejs10/patches/patch-deps_uv_common.gypi
index 73856a41833..bd6c522ec31 100644
--- a/lang/nodejs6/patches/patch-deps_uv_common.gypi
+++ b/lang/nodejs10/patches/patch-deps_uv_common.gypi
@@ -1,15 +1,15 @@
-$NetBSD: patch-deps_uv_common.gypi,v 1.1 2016/10/25 19:54:00 fhajny Exp $
+$NetBSD: patch-deps_uv_common.gypi,v 1.1 2019/12/09 20:05:40 adam Exp $
Add support for NetBSD.
---- deps/uv/common.gypi.orig 2015-03-31 22:13:01.000000000 +0000
+--- deps/uv/common.gypi.orig 2018-04-24 14:41:22.000000000 +0000
+++ deps/uv/common.gypi
-@@ -128,7 +128,7 @@
+@@ -134,7 +134,7 @@
}]
]
}],
-- ['OS in "freebsd dragonflybsd linux openbsd solaris android"', {
-+ ['OS in "freebsd dragonflybsd linux openbsd solaris android netbsd"', {
+- ['OS in "freebsd dragonflybsd linux openbsd solaris android aix"', {
++ ['OS in "freebsd dragonflybsd linux openbsd netbsd solaris android aix"', {
'cflags': [ '-Wall' ],
'cflags_cc': [ '-fno-rtti', '-fno-exceptions' ],
'target_conditions': [
diff --git a/lang/nodejs10/patches/patch-deps_uv_src_unix_netbsd.c b/lang/nodejs10/patches/patch-deps_uv_src_unix_netbsd.c
new file mode 100644
index 00000000000..cbbf0e672a0
--- /dev/null
+++ b/lang/nodejs10/patches/patch-deps_uv_src_unix_netbsd.c
@@ -0,0 +1,26 @@
+$NetBSD: patch-deps_uv_src_unix_netbsd.c,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Bring back support for NetBSD<8.
+
+--- deps/uv/src/unix/netbsd.c.orig 2019-05-28 21:32:17.000000000 +0000
++++ deps/uv/src/unix/netbsd.c
+@@ -32,6 +32,7 @@
+ #include <stdlib.h>
+ #include <fcntl.h>
+
++#include <sys/param.h>
+ #include <sys/resource.h>
+ #include <sys/types.h>
+ #include <sys/sysctl.h>
+@@ -78,7 +79,11 @@ int uv_exepath(char* buffer, size_t* siz
+ mib[0] = CTL_KERN;
+ mib[1] = KERN_PROC_ARGS;
+ mib[2] = -1;
++#if __NetBSD_Version__ >= 799000000
+ mib[3] = KERN_PROC_PATHNAME;
++#else
++ mib[3] = KERN_PROC_ARGV;
++#endif
+ int_size = ARRAY_SIZE(int_buf);
+
+ if (sysctl(mib, 4, int_buf, &int_size, NULL, 0))
diff --git a/lang/nodejs10/patches/patch-deps_v8_src_arm_assembler-arm-inl.h b/lang/nodejs10/patches/patch-deps_v8_src_arm_assembler-arm-inl.h
new file mode 100644
index 00000000000..8ff07cfc79a
--- /dev/null
+++ b/lang/nodejs10/patches/patch-deps_v8_src_arm_assembler-arm-inl.h
@@ -0,0 +1,13 @@
+$NetBSD: patch-deps_v8_src_arm_assembler-arm-inl.h,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+--- deps/v8/src/arm/assembler-arm-inl.h.orig 2018-12-10 21:19:05.000000000 +0000
++++ deps/v8/src/arm/assembler-arm-inl.h
+@@ -386,7 +386,7 @@ void Assembler::set_target_address_at(Ad
+ IsOrrImmed(Memory::int32_at(pc + 2 * kInstrSize)) &&
+ IsOrrImmed(Memory::int32_at(pc + 3 * kInstrSize)));
+ uint32_t* instr_ptr = reinterpret_cast<uint32_t*>(pc);
+- uint32_t immediate = reinterpret_cast<uint32_t>(target);
++ uint32_t immediate = static_cast<uint32_t>(target);
+ instr_ptr[0] = PatchShiftImm(instr_ptr[0], immediate & kImm8Mask);
+ instr_ptr[1] = PatchShiftImm(instr_ptr[1], immediate & (kImm8Mask << 8));
+ instr_ptr[2] = PatchShiftImm(instr_ptr[2], immediate & (kImm8Mask << 16));
diff --git a/lang/nodejs10/patches/patch-deps_v8_src_arm_assembler-arm.cc b/lang/nodejs10/patches/patch-deps_v8_src_arm_assembler-arm.cc
new file mode 100644
index 00000000000..c6540d1df94
--- /dev/null
+++ b/lang/nodejs10/patches/patch-deps_v8_src_arm_assembler-arm.cc
@@ -0,0 +1,22 @@
+$NetBSD: patch-deps_v8_src_arm_assembler-arm.cc,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+--- deps/v8/src/arm/assembler-arm.cc.orig 2018-12-26 05:26:14.000000000 +0000
++++ deps/v8/src/arm/assembler-arm.cc
+@@ -343,7 +343,7 @@ Address RelocInfo::embedded_address() co
+ }
+
+ uint32_t RelocInfo::embedded_size() const {
+- return reinterpret_cast<uint32_t>(
++ return static_cast<uint32_t>(
+ Assembler::target_address_at(pc_, constant_pool_));
+ }
+
+@@ -354,7 +354,7 @@ void RelocInfo::set_embedded_address(Add
+
+ void RelocInfo::set_embedded_size(uint32_t size, ICacheFlushMode flush_mode) {
+ Assembler::set_target_address_at(pc_, constant_pool_,
+- reinterpret_cast<Address>(size), flush_mode);
++ static_cast<Address>(size), flush_mode);
+ }
+
+ void RelocInfo::set_js_to_wasm_address(Address address,
diff --git a/lang/nodejs6/patches/patch-deps_v8_src_arm_cpu-arm.cc b/lang/nodejs10/patches/patch-deps_v8_src_arm_cpu-arm.cc
index c31e952f2ef..f48d8ecc692 100644
--- a/lang/nodejs6/patches/patch-deps_v8_src_arm_cpu-arm.cc
+++ b/lang/nodejs10/patches/patch-deps_v8_src_arm_cpu-arm.cc
@@ -1,4 +1,4 @@
-$NetBSD: patch-deps_v8_src_arm_cpu-arm.cc,v 1.1 2016/10/25 19:54:00 fhajny Exp $
+$NetBSD: patch-deps_v8_src_arm_cpu-arm.cc,v 1.1 2019/12/09 20:05:40 adam Exp $
--- deps/v8/src/arm/cpu-arm.cc.orig 2016-04-26 19:50:10.000000000 +0000
+++ deps/v8/src/arm/cpu-arm.cc
diff --git a/lang/nodejs6/patches/patch-deps_v8_src_base_atomicops.h b/lang/nodejs10/patches/patch-deps_v8_src_base_atomicops.h
index 87548635f50..0fce674ff16 100644
--- a/lang/nodejs6/patches/patch-deps_v8_src_base_atomicops.h
+++ b/lang/nodejs10/patches/patch-deps_v8_src_base_atomicops.h
@@ -1,10 +1,10 @@
-$NetBSD: patch-deps_v8_src_base_atomicops.h,v 1.1 2016/10/25 19:54:00 fhajny Exp $
+$NetBSD: patch-deps_v8_src_base_atomicops.h,v 1.1 2019/12/09 20:05:40 adam Exp $
---- deps/v8/src/base/atomicops.h.orig 2015-10-13 17:20:07.000000000 +0000
+--- deps/v8/src/base/atomicops.h.orig 2016-10-25 13:26:03.000000000 +0000
+++ deps/v8/src/base/atomicops.h
-@@ -54,9 +54,13 @@ typedef intptr_t Atomic64;
+@@ -52,9 +52,13 @@ typedef intptr_t Atomic64;
+ #endif // defined(__ILP32__)
#endif // defined(V8_HOST_ARCH_64_BIT)
- #endif // defined(__native_client__)
+#if defined(__NetBSD__) && defined(__arm__)
+typedef int32_t AtomicWord;
diff --git a/lang/nodejs6/patches/patch-deps_v8_src_base_platform_platform-freebsd.cc b/lang/nodejs10/patches/patch-deps_v8_src_base_platform_platform-freebsd.cc
index f8efd39b776..e118f10e264 100644
--- a/lang/nodejs6/patches/patch-deps_v8_src_base_platform_platform-freebsd.cc
+++ b/lang/nodejs10/patches/patch-deps_v8_src_base_platform_platform-freebsd.cc
@@ -1,11 +1,11 @@
-$NetBSD: patch-deps_v8_src_base_platform_platform-freebsd.cc,v 1.1 2016/10/25 19:54:00 fhajny Exp $
+$NetBSD: patch-deps_v8_src_base_platform_platform-freebsd.cc,v 1.1 2019/12/09 20:05:40 adam Exp $
Overlapping variables, taken from https://github.com/joyent/node/issues/9175
---- deps/v8/src/base/platform/platform-freebsd.cc.orig 2015-05-23 03:06:54.000000000 +0000
+--- deps/v8/src/base/platform/platform-freebsd.cc.orig 2018-04-24 14:41:24.000000000 +0000
+++ deps/v8/src/base/platform/platform-freebsd.cc
-@@ -122,10 +122,10 @@ static unsigned StringToLong(char* buffe
-
+@@ -45,10 +45,10 @@ static unsigned StringToLong(char* buffe
+ }
std::vector<OS::SharedLibraryAddress> OS::GetSharedLibraryAddresses() {
- std::vector<SharedLibraryAddress> result;
@@ -17,9 +17,9 @@ Overlapping variables, taken from https://github.com/joyent/node/issues/9175
while (true) {
char addr_buffer[11];
addr_buffer[0] = '0';
-@@ -156,10 +156,10 @@ std::vector<OS::SharedLibraryAddress> OS
+@@ -78,10 +78,10 @@ std::vector<OS::SharedLibraryAddress> OS
// There may be no filename in this line. Skip to next.
- if (start_of_path == NULL) continue;
+ if (start_of_path == nullptr) continue;
buffer[bytes_read] = 0;
- result.push_back(SharedLibraryAddress(start_of_path, start, end));
+ address_result.push_back(SharedLibraryAddress(start_of_path, start, end));
@@ -29,4 +29,4 @@ Overlapping variables, taken from https://github.com/joyent/node/issues/9175
+ return address_result;
}
-
+ void OS::SignalCodeMovingGC() {}
diff --git a/lang/nodejs6/patches/patch-deps_v8_src_base_platform_platform-openbsd.cc b/lang/nodejs10/patches/patch-deps_v8_src_base_platform_platform-openbsd.cc
index feeb73745e3..25fa4e6568b 100644
--- a/lang/nodejs6/patches/patch-deps_v8_src_base_platform_platform-openbsd.cc
+++ b/lang/nodejs10/patches/patch-deps_v8_src_base_platform_platform-openbsd.cc
@@ -1,6 +1,8 @@
-$NetBSD: patch-deps_v8_src_base_platform_platform-openbsd.cc,v 1.1 2016/10/25 19:54:00 fhajny Exp $
+$NetBSD: patch-deps_v8_src_base_platform_platform-openbsd.cc,v 1.1 2019/12/09 20:05:40 adam Exp $
---- deps/v8/src/base/platform/platform-openbsd.cc.orig 2015-10-13 17:20:07.000000000 +0000
+Add support for NetBSD/arm.
+
+--- deps/v8/src/base/platform/platform-openbsd.cc.orig 2017-09-26 21:14:30.000000000 +0000
+++ deps/v8/src/base/platform/platform-openbsd.cc
@@ -34,6 +34,48 @@
namespace v8 {
@@ -48,6 +50,6 @@ $NetBSD: patch-deps_v8_src_base_platform_platform-openbsd.cc,v 1.1 2016/10/25 19
+
+#endif // def __arm__
+
-
- const char* OS::LocalTimezone(double time, TimezoneCache* cache) {
- if (std::isnan(time)) return "";
+ TimezoneCache* OS::CreateTimezoneCache() {
+ return new PosixDefaultTimezoneCache();
+ }
diff --git a/lang/nodejs6/patches/patch-deps_v8_src_base_platform_platform-posix.cc b/lang/nodejs10/patches/patch-deps_v8_src_base_platform_platform-posix.cc
index 822fb528ffa..e4ff1a1f8ce 100644
--- a/lang/nodejs6/patches/patch-deps_v8_src_base_platform_platform-posix.cc
+++ b/lang/nodejs10/patches/patch-deps_v8_src_base_platform_platform-posix.cc
@@ -1,11 +1,11 @@
-$NetBSD: patch-deps_v8_src_base_platform_platform-posix.cc,v 1.1 2016/10/25 19:54:00 fhajny Exp $
+$NetBSD: patch-deps_v8_src_base_platform_platform-posix.cc,v 1.1 2019/12/09 20:05:40 adam Exp $
Use sysconf(_SC_THREAD_STACK_MIN) instead of PTHREAD_STACK_MIN.
Cast explicitly.
---- deps/v8/src/base/platform/platform-posix.cc.orig 2015-09-08 15:30:38.000000000 +0000
+--- deps/v8/src/base/platform/platform-posix.cc.orig 2018-04-24 14:41:24.000000000 +0000
+++ deps/v8/src/base/platform/platform-posix.cc
-@@ -329,6 +329,8 @@ int OS::GetCurrentThreadId() {
+@@ -480,6 +480,8 @@ int OS::GetCurrentThreadId() {
return static_cast<int>(syscall(__NR_gettid));
#elif V8_OS_ANDROID
return static_cast<int>(gettid());
@@ -13,11 +13,11 @@ Cast explicitly.
+ return static_cast<int>(reinterpret_cast<intptr_t>(pthread_self()));
#elif V8_OS_AIX
return static_cast<int>(thread_self());
- #elif V8_OS_SOLARIS
-@@ -535,8 +537,13 @@ Thread::Thread(const Options& options)
+ #elif V8_OS_FUCHSIA
+@@ -670,8 +672,13 @@ Thread::Thread(const Options& options)
: data_(new PlatformData),
stack_size_(options.stack_size()),
- start_semaphore_(NULL) {
+ start_semaphore_(nullptr) {
+#if defined(__NetBSD__)
+ if (stack_size_ > 0 && static_cast<size_t>(stack_size_) < sysconf(_SC_THREAD_STACK_MIN)) {
+ stack_size_ = sysconf(_SC_THREAD_STACK_MIN);
@@ -28,7 +28,7 @@ Cast explicitly.
}
set_name(options.name());
}
-@@ -552,7 +559,7 @@ static void SetThreadName(const char* na
+@@ -687,7 +694,7 @@ static void SetThreadName(const char* na
pthread_set_name_np(pthread_self(), name);
#elif V8_OS_NETBSD
STATIC_ASSERT(Thread::kMaxThreadNameLength <= PTHREAD_MAX_NAMELEN_NP);
diff --git a/lang/nodejs10/patches/patch-deps_v8_src_base_platform_semaphore.cc b/lang/nodejs10/patches/patch-deps_v8_src_base_platform_semaphore.cc
new file mode 100644
index 00000000000..22521f0a836
--- /dev/null
+++ b/lang/nodejs10/patches/patch-deps_v8_src_base_platform_semaphore.cc
@@ -0,0 +1,17 @@
+$NetBSD: patch-deps_v8_src_base_platform_semaphore.cc,v 1.1 2019/12/09 20:05:40 adam Exp $
+Work around lack of sem_timedwait(3) in NetBSD < 6.99.4.
+Adapted from d4f11c0cf476dd854eaebec1cbacb1afc7bea18e of the Chromium V8 sources.
+
+--- deps/v8/src/base/platform/semaphore.cc.orig 2016-10-25 13:26:03.000000000 +0000
++++ deps/v8/src/base/platform/semaphore.cc
+@@ -11,6 +11,10 @@
+
+ #include <errno.h>
+
++#if V8_OS_NETBSD
++#include <sys/param.h> // for __NetBSD_Version__
++#endif
++
+ #include "src/base/logging.h"
+ #include "src/base/platform/elapsed-timer.h"
+ #include "src/base/platform/time.h"
diff --git a/lang/nodejs10/patches/patch-deps_v8_src_compiler_types.h b/lang/nodejs10/patches/patch-deps_v8_src_compiler_types.h
new file mode 100644
index 00000000000..85a002ee40b
--- /dev/null
+++ b/lang/nodejs10/patches/patch-deps_v8_src_compiler_types.h
@@ -0,0 +1,21 @@
+$NetBSD: patch-deps_v8_src_compiler_types.h,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+NetBSD 6 doesn't have nearbyint/nearbyintf.
+
+--- deps/v8/src/compiler/types.h.orig 2017-05-30 17:31:37.000000000 +0000
++++ deps/v8/src/compiler/types.h
+@@ -5,6 +5,14 @@
+ #ifndef V8_COMPILER_TYPES_H_
+ #define V8_COMPILER_TYPES_H_
+
++#ifdef __NetBSD__
++#include <sys/param.h>
++#if __NetBSD_Version__ - 0 < 699001700
++#define nearbyint rint
++#define nearbyintf rintf
++#endif
++#endif
++
+ #include "src/base/compiler-specific.h"
+ #include "src/conversions.h"
+ #include "src/globals.h"
diff --git a/lang/nodejs10/patches/patch-deps_v8_src_globals.h b/lang/nodejs10/patches/patch-deps_v8_src_globals.h
new file mode 100644
index 00000000000..3cf6e557543
--- /dev/null
+++ b/lang/nodejs10/patches/patch-deps_v8_src_globals.h
@@ -0,0 +1,14 @@
+$NetBSD: patch-deps_v8_src_globals.h,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+stdarg.h needed for va_list on at least NetBSD.
+
+--- deps/v8/src/globals.h.orig 2018-04-24 14:41:26.000000000 +0000
++++ deps/v8/src/globals.h
+@@ -7,6 +7,7 @@
+
+ #include <stddef.h>
+ #include <stdint.h>
++#include <stdarg.h>
+
+ #include <limits>
+ #include <ostream>
diff --git a/lang/nodejs10/patches/patch-deps_v8_src_log-utils.h b/lang/nodejs10/patches/patch-deps_v8_src_log-utils.h
new file mode 100644
index 00000000000..888bba8e544
--- /dev/null
+++ b/lang/nodejs10/patches/patch-deps_v8_src_log-utils.h
@@ -0,0 +1,17 @@
+$NetBSD: patch-deps_v8_src_log-utils.h,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Need stdarg.h for va_list.
+
+--- deps/v8/src/log-utils.h.orig 2018-04-24 14:41:27.000000000 +0000
++++ deps/v8/src/log-utils.h
+@@ -15,6 +15,10 @@
+ #include "src/flags.h"
+ #include "src/ostreams.h"
+
++#if defined(__NetBSD__)
++#include <stdarg.h>
++#endif
++
+ namespace v8 {
+ namespace internal {
+
diff --git a/lang/nodejs6/patches/patch-deps_v8_tools_run-llprof.sh b/lang/nodejs10/patches/patch-deps_v8_tools_run-llprof.sh
index 8d897244e13..ea04f1330a1 100644
--- a/lang/nodejs6/patches/patch-deps_v8_tools_run-llprof.sh
+++ b/lang/nodejs10/patches/patch-deps_v8_tools_run-llprof.sh
@@ -1,4 +1,4 @@
-$NetBSD: patch-deps_v8_tools_run-llprof.sh,v 1.1 2016/10/25 19:54:00 fhajny Exp $
+$NetBSD: patch-deps_v8_tools_run-llprof.sh,v 1.1 2019/12/09 20:05:40 adam Exp $
POSIX shell portability.
diff --git a/lang/nodejs10/patches/patch-node.gypi b/lang/nodejs10/patches/patch-node.gypi
new file mode 100644
index 00000000000..4fb4c6e04bb
--- /dev/null
+++ b/lang/nodejs10/patches/patch-node.gypi
@@ -0,0 +1,14 @@
+$NetBSD: patch-node.gypi,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Linking in libcares requires libsocket.
+
+--- node.gypi.orig 2018-04-24 14:41:37.000000000 +0000
++++ node.gypi
+@@ -251,6 +251,7 @@
+ [ 'OS=="solaris"', {
+ 'libraries': [
+ '-lkstat',
++ '-lsocket',
+ '-lumem',
+ ],
+ 'defines!': [
diff --git a/lang/nodejs10/patches/patch-src_cares__wrap.cc b/lang/nodejs10/patches/patch-src_cares__wrap.cc
new file mode 100644
index 00000000000..0bb7db787b2
--- /dev/null
+++ b/lang/nodejs10/patches/patch-src_cares__wrap.cc
@@ -0,0 +1,15 @@
+$NetBSD: patch-src_cares__wrap.cc,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+NetBSD has no AI_V4MAPPED.
+
+--- src/cares_wrap.cc.orig 2017-05-30 17:32:13.000000000 +0000
++++ src/cares_wrap.cc
+@@ -47,7 +47,7 @@
+ # include <arpa/nameser.h>
+ #endif
+
+-#if defined(__OpenBSD__)
++#if defined(__OpenBSD__) || defined(__NetBSD__)
+ # define AI_V4MAPPED 0
+ #endif
+
diff --git a/lang/nodejs6/patches/patch-src_node.cc b/lang/nodejs10/patches/patch-src_inspector__agent.cc
index b1f1d0972d2..4aa4c639a48 100644
--- a/lang/nodejs6/patches/patch-src_node.cc
+++ b/lang/nodejs10/patches/patch-src_inspector__agent.cc
@@ -1,15 +1,13 @@
-$NetBSD: patch-src_node.cc,v 1.1 2016/10/25 19:54:00 fhajny Exp $
+$NetBSD: patch-src_inspector__agent.cc,v 1.1 2019/12/09 20:05:40 adam Exp $
-Handle NetBSD the same way as FreeBSD.
-
---- src/node.cc.orig 2016-05-17 19:53:07.000000000 +0000
-+++ src/node.cc
-@@ -3801,7 +3801,7 @@ static int RegisterDebugSignalHandler()
+--- src/inspector_agent.cc.orig 2017-05-30 17:32:13.000000000 +0000
++++ src/inspector_agent.cc
+@@ -96,7 +96,7 @@ static int RegisterDebugSignalHandler()
// Don't shrink the thread's stack on FreeBSD. Said platform decided to
// follow the pthreads specification to the letter rather than in spirit:
// https://lists.freebsd.org/pipermail/freebsd-current/2014-March/048885.html
-#ifndef __FreeBSD__
-+#if !defined(__FreeBSD__) && !defined(__NetBSD__)
++#if !defined(__FreeBSD__) && !defined(__NetBSD__)
CHECK_EQ(0, pthread_attr_setstacksize(&attr, PTHREAD_STACK_MIN));
#endif // __FreeBSD__
CHECK_EQ(0, pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED));
diff --git a/lang/nodejs10/patches/patch-src_node__postmortem__metadata.cc b/lang/nodejs10/patches/patch-src_node__postmortem__metadata.cc
new file mode 100644
index 00000000000..49e5231b3a5
--- /dev/null
+++ b/lang/nodejs10/patches/patch-src_node__postmortem__metadata.cc
@@ -0,0 +1,15 @@
+$NetBSD: patch-src_node__postmortem__metadata.cc,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+--- src/node_postmortem_metadata.cc.orig 2018-03-23 20:05:49.909811719 +0000
++++ src/node_postmortem_metadata.cc
+@@ -11,6 +11,10 @@
+ #define NODEDBG_OFFSET(Class, Member, Type) \
+ NODEDBG_SYMBOL(offset_ ## Class ## __ ## Member ## __ ## Type)
+
++// Some systems provide macros for the types as well, which get expanded
++// by the nested macros here.
++#undef uintptr_t
++
+ // These are the constants describing Node internal structures. Every constant
+ // should use the format described above. These constants are declared as
+ // global integers so that they'll be present in the generated node binary. They
diff --git a/lang/nodejs10/patches/patch-tools_gyp_pylib_gyp_common.py b/lang/nodejs10/patches/patch-tools_gyp_pylib_gyp_common.py
new file mode 100644
index 00000000000..d579e7db652
--- /dev/null
+++ b/lang/nodejs10/patches/patch-tools_gyp_pylib_gyp_common.py
@@ -0,0 +1,14 @@
+$NetBSD: patch-tools_gyp_pylib_gyp_common.py,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Add support for DragonFly.
+--- tools/gyp/pylib/gyp/common.py.orig 2017-05-03 02:00:16.000000000 +0000
++++ tools/gyp/pylib/gyp/common.py
+@@ -427,6 +427,8 @@ def GetFlavor(params):
+ return 'openbsd'
+ if sys.platform.startswith('netbsd'):
+ return 'netbsd'
++ if sys.platform.startswith('dragonflybsd'):
++ return 'dragonflybsd'
+ if sys.platform.startswith('aix'):
+ return 'aix'
+
diff --git a/lang/nodejs6/patches/patch-tools_gyp_pylib_gyp_generator_make.py b/lang/nodejs10/patches/patch-tools_gyp_pylib_gyp_generator_make.py
index b0822d69f7a..cc1a4d94e73 100644
--- a/lang/nodejs6/patches/patch-tools_gyp_pylib_gyp_generator_make.py
+++ b/lang/nodejs10/patches/patch-tools_gyp_pylib_gyp_generator_make.py
@@ -1,4 +1,4 @@
-$NetBSD: patch-tools_gyp_pylib_gyp_generator_make.py,v 1.1 2016/10/25 19:54:00 fhajny Exp $
+$NetBSD: patch-tools_gyp_pylib_gyp_generator_make.py,v 1.1 2019/12/09 20:05:40 adam Exp $
Add support for NetBSD and DragonFly.
Ensure we use the system libtool on OSX.
diff --git a/lang/nodejs10/patches/patch-tools_gyp_pylib_gyp_xcode__emulation.py b/lang/nodejs10/patches/patch-tools_gyp_pylib_gyp_xcode__emulation.py
new file mode 100644
index 00000000000..7d07ad749c2
--- /dev/null
+++ b/lang/nodejs10/patches/patch-tools_gyp_pylib_gyp_xcode__emulation.py
@@ -0,0 +1,15 @@
+$NetBSD: patch-tools_gyp_pylib_gyp_xcode__emulation.py,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Do not generate debugging symbols (uses lots of disk space).
+
+--- tools/gyp/pylib/gyp/xcode_emulation.py.orig 2017-05-30 14:15:04.000000000 +0000
++++ tools/gyp/pylib/gyp/xcode_emulation.py
+@@ -577,7 +577,7 @@ class XcodeSettings(object):
+
+ self._Appendf(cflags, 'GCC_OPTIMIZATION_LEVEL', '-O%s', default='s')
+
+- if self._Test('GCC_GENERATE_DEBUGGING_SYMBOLS', 'YES', default='YES'):
++ if self._Test('GCC_GENERATE_DEBUGGING_SYMBOLS', 'YES', default='NO'):
+ dbg_format = self._Settings().get('DEBUG_INFORMATION_FORMAT', 'dwarf')
+ if dbg_format == 'dwarf':
+ cflags.append('-gdwarf-2')
diff --git a/lang/nodejs6/patches/patch-tools_install.py b/lang/nodejs10/patches/patch-tools_install.py
index 6712e8bb246..5fde3fadd88 100644
--- a/lang/nodejs6/patches/patch-tools_install.py
+++ b/lang/nodejs10/patches/patch-tools_install.py
@@ -1,8 +1,8 @@
-$NetBSD: patch-tools_install.py,v 1.2 2017/05/03 11:03:43 fhajny Exp $
+$NetBSD: patch-tools_install.py,v 1.1 2019/12/09 20:05:40 adam Exp $
Install man pages under the right directory.
---- tools/install.py.orig 2017-05-02 16:34:27.000000000 +0000
+--- tools/install.py.orig 2017-04-11 15:48:50.000000000 +0000
+++ tools/install.py
@@ -136,10 +136,7 @@ def files(action):
action(['deps/v8/tools/lldbinit'], 'share/doc/node/')
diff --git a/lang/nodejs12/DESCR b/lang/nodejs12/DESCR
new file mode 100644
index 00000000000..d9905ce0cea
--- /dev/null
+++ b/lang/nodejs12/DESCR
@@ -0,0 +1,4 @@
+Node.js is an evented I/O framework for the V8 JavaScript engine. It is
+intended for writing scalable network programs such as web servers.
+
+This package holds the 12.x LTS release.
diff --git a/lang/nodejs12/Makefile b/lang/nodejs12/Makefile
new file mode 100644
index 00000000000..c518d9d2f0d
--- /dev/null
+++ b/lang/nodejs12/Makefile
@@ -0,0 +1,42 @@
+# $NetBSD: Makefile,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+DISTNAME= node-v12.13.1
+
+USE_LANGUAGES= c gnu++14
+
+# Stated by the changelog as of 8.2.0
+GCC_REQD+= 4.9.4
+
+# Stated by the changelog
+BUILDLINK_API_DEPENDS.libuv+= libuv>=1.23
+
+# Requires http_parser_set_max_header_size
+#BUILDLINK_API_DEPENDS.http-parser+= http-parser>=2.9.0
+
+.include "../../mk/bsd.prefs.mk"
+
+# XXX: figure out a way to add rpaths to torque
+MAKE_ENV+= LD_LIBRARY_PATH=${PREFIX}/lib
+
+# Optional OpenSSL support in nghttp2 conflicts with OpenSSL 1.1.x
+# bundled and built by lang/nodejs.
+# Uncomment when we switch to openssl>=1.1
+# CONFIGURE_ARGS+= --shared-nghttp2
+CONFIGURE_ARGS+= --with-intl=system-icu
+
+CHECK_PORTABILITY_SKIP+= deps/openssl/openssl/.travis-create-release.sh
+
+.if ${MACHINE_ARCH} == "i386"
+# 64 bit atomic ops are required
+CXXFLAGS+= -march=i586
+# required for SSE2 code under i386.
+CXXFLAGS+= -mstackrealign
+.endif
+
+.include "options.mk"
+
+.include "../../lang/nodejs/Makefile.common"
+.include "../../textproc/icu/buildlink3.mk"
+# Uncomment when we switch to openssl>=1.1
+# .include "../../www/nghttp2/buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/lang/nodejs12/PLIST b/lang/nodejs12/PLIST
new file mode 100644
index 00000000000..7e6029bb2d2
--- /dev/null
+++ b/lang/nodejs12/PLIST
@@ -0,0 +1,464 @@
+@comment $NetBSD: PLIST,v 1.1 2019/12/09 20:05:40 adam Exp $
+bin/node
+include/node/common.gypi
+include/node/config.gypi
+include/node/js_native_api.h
+include/node/js_native_api_types.h
+include/node/libplatform/libplatform-export.h
+include/node/libplatform/libplatform.h
+include/node/libplatform/v8-tracing.h
+include/node/node.h
+include/node/node_api.h
+include/node/node_api_types.h
+include/node/node_buffer.h
+include/node/node_object_wrap.h
+include/node/node_version.h
+${PLIST.openssl}include/node/openssl/aes.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86_64/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86_64/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86_64/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86_64/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86_64/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86_64/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86_64/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86_64/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86_64/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86_64/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86_64/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86_64/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/BSD-x86_64/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN32/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN32/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN32/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN32/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN32/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN32/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN32/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN32/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN32/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN32/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN32/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN32/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN32/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64-ARM/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64-ARM/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64-ARM/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64A/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64A/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64A/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64A/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64A/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64A/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64A/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64A/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64A/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64A/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64A/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64A/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/VC-WIN64A/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/aix-gcc/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/aix-gcc/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/aix-gcc/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/aix-gcc/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/aix-gcc/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/aix-gcc/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/aix-gcc/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/aix-gcc/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/aix-gcc/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/aix-gcc/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/aix-gcc/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/aix-gcc/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/aix-gcc/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/aix-gcc/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/aix-gcc/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/aix64-gcc/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/aix64-gcc/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/aix64-gcc/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/aix64-gcc/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/aix64-gcc/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/aix64-gcc/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/aix64-gcc/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/aix64-gcc/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/aix64-gcc/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/aix64-gcc/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/aix64-gcc/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/aix64-gcc/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/aix64-gcc/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/aix64-gcc/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/aix64-gcc/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/darwin-i386-cc/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/darwin-i386-cc/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/darwin-i386-cc/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/darwin-i386-cc/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/darwin-i386-cc/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/darwin-i386-cc/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/darwin-i386-cc/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/darwin-i386-cc/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/darwin-i386-cc/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/darwin-i386-cc/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/darwin-i386-cc/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/darwin64-x86_64-cc/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/darwin64-x86_64-cc/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/darwin64-x86_64-cc/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/darwin64-x86_64-cc/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/darwin64-x86_64-cc/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/darwin64-x86_64-cc/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/darwin64-x86_64-cc/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-aarch64/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-aarch64/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-aarch64/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-aarch64/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-aarch64/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-aarch64/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-aarch64/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-aarch64/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-aarch64/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-aarch64/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-aarch64/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-aarch64/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-aarch64/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-armv4/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-armv4/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-armv4/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-armv4/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-armv4/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-armv4/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-armv4/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-armv4/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-armv4/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-armv4/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-armv4/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-armv4/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-armv4/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-armv4/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-elf/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-elf/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-elf/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-elf/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-elf/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-elf/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-elf/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-elf/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-elf/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-elf/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-elf/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-elf/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-elf/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-elf/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64le/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64le/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64le/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64le/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64le/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64le/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64le/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64le/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64le/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64le/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64le/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64le/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-ppc64le/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-x32/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x32/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x32/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x32/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x32/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-x32/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x32/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x32/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x32/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x32/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-x32/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x32/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x32/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x32/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x32/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-x86_64/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x86_64/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x86_64/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x86_64/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x86_64/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-x86_64/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x86_64/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x86_64/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x86_64/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux-x86_64/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x86_64/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x86_64/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux-x86_64/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux32-s390x/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux32-s390x/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux32-s390x/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux32-s390x/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux32-s390x/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux32-s390x/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux32-s390x/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux32-s390x/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux32-s390x/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux32-s390x/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux32-s390x/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux32-s390x/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux32-s390x/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux64-mips64/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-mips64/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-mips64/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-mips64/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-mips64/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux64-mips64/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-mips64/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-mips64/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-mips64/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux64-mips64/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-mips64/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-mips64/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-mips64/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux64-s390x/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-s390x/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-s390x/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-s390x/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-s390x/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux64-s390x/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-s390x/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-s390x/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-s390x/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/linux64-s390x/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-s390x/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-s390x/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/linux64-s390x/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/solaris-x86-gcc/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/solaris-x86-gcc/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/solaris-x86-gcc/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/solaris-x86-gcc/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/solaris-x86-gcc/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/solaris-x86-gcc/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/solaris-x86-gcc/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/solaris-x86-gcc/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/solaris-x86-gcc/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/solaris-x86-gcc/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/solaris-x86-gcc/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/solaris64-x86_64-gcc/asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/solaris64-x86_64-gcc/asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/solaris64-x86_64-gcc/asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/progs.h
+${PLIST.openssl}include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/crypto/buildinf.h
+${PLIST.openssl}include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/crypto/include/internal/bn_conf.h
+${PLIST.openssl}include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/crypto/include/internal/dso_conf.h
+${PLIST.openssl}include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/progs.h
+${PLIST.openssl}include/node/openssl/asn1.h
+${PLIST.openssl}include/node/openssl/asn1_mac.h
+${PLIST.openssl}include/node/openssl/asn1err.h
+${PLIST.openssl}include/node/openssl/asn1t.h
+${PLIST.openssl}include/node/openssl/async.h
+${PLIST.openssl}include/node/openssl/asyncerr.h
+${PLIST.openssl}include/node/openssl/bio.h
+${PLIST.openssl}include/node/openssl/bioerr.h
+${PLIST.openssl}include/node/openssl/blowfish.h
+${PLIST.openssl}include/node/openssl/bn.h
+${PLIST.openssl}include/node/openssl/bn_conf.h
+${PLIST.openssl}include/node/openssl/bn_conf_asm.h
+${PLIST.openssl}include/node/openssl/bn_conf_no-asm.h
+${PLIST.openssl}include/node/openssl/bnerr.h
+${PLIST.openssl}include/node/openssl/buffer.h
+${PLIST.openssl}include/node/openssl/buffererr.h
+${PLIST.openssl}include/node/openssl/camellia.h
+${PLIST.openssl}include/node/openssl/cast.h
+${PLIST.openssl}include/node/openssl/cmac.h
+${PLIST.openssl}include/node/openssl/cms.h
+${PLIST.openssl}include/node/openssl/cmserr.h
+${PLIST.openssl}include/node/openssl/comp.h
+${PLIST.openssl}include/node/openssl/comperr.h
+${PLIST.openssl}include/node/openssl/conf.h
+${PLIST.openssl}include/node/openssl/conf_api.h
+${PLIST.openssl}include/node/openssl/conferr.h
+${PLIST.openssl}include/node/openssl/crypto.h
+${PLIST.openssl}include/node/openssl/cryptoerr.h
+${PLIST.openssl}include/node/openssl/ct.h
+${PLIST.openssl}include/node/openssl/cterr.h
+${PLIST.openssl}include/node/openssl/des.h
+${PLIST.openssl}include/node/openssl/dh.h
+${PLIST.openssl}include/node/openssl/dherr.h
+${PLIST.openssl}include/node/openssl/dsa.h
+${PLIST.openssl}include/node/openssl/dsaerr.h
+${PLIST.openssl}include/node/openssl/dso_conf.h
+${PLIST.openssl}include/node/openssl/dso_conf_asm.h
+${PLIST.openssl}include/node/openssl/dso_conf_no-asm.h
+${PLIST.openssl}include/node/openssl/dtls1.h
+${PLIST.openssl}include/node/openssl/e_os2.h
+${PLIST.openssl}include/node/openssl/ebcdic.h
+${PLIST.openssl}include/node/openssl/ec.h
+${PLIST.openssl}include/node/openssl/ecdh.h
+${PLIST.openssl}include/node/openssl/ecdsa.h
+${PLIST.openssl}include/node/openssl/ecerr.h
+${PLIST.openssl}include/node/openssl/engine.h
+${PLIST.openssl}include/node/openssl/engineerr.h
+${PLIST.openssl}include/node/openssl/err.h
+${PLIST.openssl}include/node/openssl/evp.h
+${PLIST.openssl}include/node/openssl/evperr.h
+${PLIST.openssl}include/node/openssl/hmac.h
+${PLIST.openssl}include/node/openssl/idea.h
+${PLIST.openssl}include/node/openssl/kdf.h
+${PLIST.openssl}include/node/openssl/kdferr.h
+${PLIST.openssl}include/node/openssl/lhash.h
+${PLIST.openssl}include/node/openssl/md2.h
+${PLIST.openssl}include/node/openssl/md4.h
+${PLIST.openssl}include/node/openssl/md5.h
+${PLIST.openssl}include/node/openssl/mdc2.h
+${PLIST.openssl}include/node/openssl/modes.h
+${PLIST.openssl}include/node/openssl/obj_mac.h
+${PLIST.openssl}include/node/openssl/objects.h
+${PLIST.openssl}include/node/openssl/objectserr.h
+${PLIST.openssl}include/node/openssl/ocsp.h
+${PLIST.openssl}include/node/openssl/ocsperr.h
+${PLIST.openssl}include/node/openssl/opensslconf.h
+${PLIST.openssl}include/node/openssl/opensslconf_asm.h
+${PLIST.openssl}include/node/openssl/opensslconf_no-asm.h
+${PLIST.openssl}include/node/openssl/opensslv.h
+${PLIST.openssl}include/node/openssl/ossl_typ.h
+${PLIST.openssl}include/node/openssl/pem.h
+${PLIST.openssl}include/node/openssl/pem2.h
+${PLIST.openssl}include/node/openssl/pemerr.h
+${PLIST.openssl}include/node/openssl/pkcs12.h
+${PLIST.openssl}include/node/openssl/pkcs12err.h
+${PLIST.openssl}include/node/openssl/pkcs7.h
+${PLIST.openssl}include/node/openssl/pkcs7err.h
+${PLIST.openssl}include/node/openssl/rand.h
+${PLIST.openssl}include/node/openssl/rand_drbg.h
+${PLIST.openssl}include/node/openssl/randerr.h
+${PLIST.openssl}include/node/openssl/rc2.h
+${PLIST.openssl}include/node/openssl/rc4.h
+${PLIST.openssl}include/node/openssl/rc5.h
+${PLIST.openssl}include/node/openssl/ripemd.h
+${PLIST.openssl}include/node/openssl/rsa.h
+${PLIST.openssl}include/node/openssl/rsaerr.h
+${PLIST.openssl}include/node/openssl/safestack.h
+${PLIST.openssl}include/node/openssl/seed.h
+${PLIST.openssl}include/node/openssl/sha.h
+${PLIST.openssl}include/node/openssl/srp.h
+${PLIST.openssl}include/node/openssl/srtp.h
+${PLIST.openssl}include/node/openssl/ssl.h
+${PLIST.openssl}include/node/openssl/ssl2.h
+${PLIST.openssl}include/node/openssl/ssl3.h
+${PLIST.openssl}include/node/openssl/sslerr.h
+${PLIST.openssl}include/node/openssl/stack.h
+${PLIST.openssl}include/node/openssl/store.h
+${PLIST.openssl}include/node/openssl/storeerr.h
+${PLIST.openssl}include/node/openssl/symhacks.h
+${PLIST.openssl}include/node/openssl/tls1.h
+${PLIST.openssl}include/node/openssl/ts.h
+${PLIST.openssl}include/node/openssl/tserr.h
+${PLIST.openssl}include/node/openssl/txt_db.h
+${PLIST.openssl}include/node/openssl/ui.h
+${PLIST.openssl}include/node/openssl/uierr.h
+${PLIST.openssl}include/node/openssl/whrlpool.h
+${PLIST.openssl}include/node/openssl/x509.h
+${PLIST.openssl}include/node/openssl/x509_vfy.h
+${PLIST.openssl}include/node/openssl/x509err.h
+${PLIST.openssl}include/node/openssl/x509v3.h
+${PLIST.openssl}include/node/openssl/x509v3err.h
+include/node/v8-internal.h
+include/node/v8-platform.h
+include/node/v8-profiler.h
+include/node/v8-testing.h
+include/node/v8-util.h
+include/node/v8-value-serializer-version.h
+include/node/v8-version-string.h
+include/node/v8-version.h
+include/node/v8-wasm-trap-handler-posix.h
+include/node/v8-wasm-trap-handler-win.h
+include/node/v8.h
+include/node/v8config.h
+${PLIST.dtrace}lib/dtrace/node.d
+man/man1/node.1
+share/doc/node/gdbinit
+share/doc/node/lldb_commands.py
+share/systemtap/tapset/node.stp
diff --git a/lang/nodejs12/buildlink3.mk b/lang/nodejs12/buildlink3.mk
new file mode 100644
index 00000000000..80d574c4f80
--- /dev/null
+++ b/lang/nodejs12/buildlink3.mk
@@ -0,0 +1,40 @@
+# $NetBSD: buildlink3.mk,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+BUILDLINK_TREE+= nodejs
+
+.if !defined(NODEJS_BUILDLINK3_MK)
+NODEJS_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.nodejs+= nodejs>=10
+BUILDLINK_ABI_DEPENDS.nodejs?= nodejs>=10.15.3nb2
+BUILDLINK_PKGSRCDIR.nodejs?= ../../lang/nodejs
+
+.include "../../mk/bsd.fast.prefs.mk"
+
+.if ${OPSYS} != "Darwin"
+.include "../../devel/libexecinfo/buildlink3.mk"
+.endif
+# Stated by the changelog
+BUILDLINK_API_DEPENDS.libuv+= libuv>=1.23
+.include "../../devel/libuv/buildlink3.mk"
+.include "../../devel/zlib/buildlink3.mk"
+.include "../../net/libcares/buildlink3.mk"
+.include "../../textproc/icu/buildlink3.mk"
+# Requires http_parser_set_max_header_size
+BUILDLINK_API_DEPENDS.http-parser+= http-parser>=2.9.0
+#.include "../../www/http-parser/buildlink3.mk"
+# Uncomment when we switch to openssl>=1.1
+# .include "../../www/nghttp2/buildlink3.mk"
+.include "../../mk/pthread.buildlink3.mk"
+
+pkgbase := nodejs
+.include "../../mk/pkg-build-options.mk"
+
+# Enable when we start using pkgsrc openssl-1.1.x
+#.if !empty(PKG_BUILD_OPTIONS.nodejs:Mopenssl)
+#. include "../../security/openssl/buildlink3.mk"
+#.endif
+
+.endif # NODEJS_BUILDLINK3_MK
+
+BUILDLINK_TREE+= -nodejs
diff --git a/lang/nodejs12/distinfo b/lang/nodejs12/distinfo
new file mode 100644
index 00000000000..6ff980e699f
--- /dev/null
+++ b/lang/nodejs12/distinfo
@@ -0,0 +1,38 @@
+$NetBSD: distinfo,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+SHA1 (node-v12.13.1.tar.gz) = 05dab004a8dcdb3ac6e68452b81df20f51fc7b7d
+RMD160 (node-v12.13.1.tar.gz) = e0eacb7f523f97c482c585fd38733e558e458fe2
+SHA512 (node-v12.13.1.tar.gz) = 6da5aad8df117ed5eda566610919f0c5b77a03093182d52e049577777ed5c7adca9459eda28cb074015525d126d3e7e33156cf54756f9dc46369f3895f48908e
+Size (node-v12.13.1.tar.gz) = 50682874 bytes
+SHA1 (patch-common.gypi) = de37949f38d9bd39a18b59d59ec74e528bd323ac
+SHA1 (patch-deps_cares_cares.gyp) = 22b44f2ac59963f694dfe4f4585e08960b3dec32
+SHA1 (patch-deps_openssl_config_archs_linux-elf_asm_openssl-cl.gypi) = 12c91ca27ced24cabd714902fad9c9eb0ba40f9b
+SHA1 (patch-deps_openssl_config_bn__conf__asm.h) = a4cf4f0771c96fb09a00b76b25d35000d65ef92f
+SHA1 (patch-deps_openssl_config_bn__conf__no-asm.h) = c13b305c7a93b7adf61186d50ac637a6d180fa18
+SHA1 (patch-deps_openssl_config_dso__conf__asm.h) = ae8285306fd165dc881fd8c6783cf0977d73371a
+SHA1 (patch-deps_openssl_config_dso__conf__no-asm.h) = 78fe6bf2251940ad27913a624abdfb892e69f438
+SHA1 (patch-deps_openssl_config_opensslconf__asm.h) = e9bb26b66431595d13d4173d3ed5f3e583bd009f
+SHA1 (patch-deps_openssl_config_opensslconf__no-asm.h) = 63c493a4e2b98fb630a094908aa5c4b629181d15
+SHA1 (patch-deps_openssl_openssl-cl__asm.gypi) = 044ef35989d9ad2d55fe7ac965f2ec6e39e246ba
+SHA1 (patch-deps_openssl_openssl-cl__no__asm.gypi) = e40ae90fdc34c53e3761d5486ca58fb8e248a412
+SHA1 (patch-deps_openssl_openssl__asm.gypi) = 7c2b9a876792c66cf29c887d36e406996c61982f
+SHA1 (patch-deps_openssl_openssl__no__asm.gypi) = 3b1bc963308d8b8d4d03aa2921605d0fab61e1b8
+SHA1 (patch-deps_openssl_openssl_crypto_rand_rand__unix.c) = ba8d4602c3386801ad8d3c33c757c69ad3d25a34
+SHA1 (patch-deps_uv_common.gypi) = d38a9c8d9e3522f15812aec2f5b1e1e636d4bab3
+SHA1 (patch-deps_uv_src_unix_netbsd.c) = 76b27ae86aa80582554ee824146ee7c42c33883b
+SHA1 (patch-deps_v8_src_base_atomicops.h) = d1ef20a3fee1d188687bd76836ada6f2c8e0787f
+SHA1 (patch-deps_v8_src_base_platform_platform-freebsd.cc) = 427c7712fc1c2872fc48e593f7ab491c69ee44e3
+SHA1 (patch-deps_v8_src_base_platform_platform-openbsd.cc) = 5e593879dbab095f99e82593272a0de91043f9a8
+SHA1 (patch-deps_v8_src_base_platform_platform-posix.cc) = 0d80cc6587af9220832de112834e9f50242f819f
+SHA1 (patch-deps_v8_src_base_platform_semaphore.cc) = 802a95f1b1d131e0d85c1f99c659cc68b31ba2f6
+SHA1 (patch-deps_v8_src_common_globals.h) = 86637724864389f2b24251904de41669a2f00fbc
+SHA1 (patch-deps_v8_src_compiler_types.h) = 2a212282ab9d71e98ae56827fdb1d9778a6047a5
+SHA1 (patch-deps_v8_tools_run-llprof.sh) = 39aa3faf77492ef8dd35b411b7b0e4605b469af3
+SHA1 (patch-node.gypi) = 4a104dba6c22702211009bc60a6be6f87554e2fa
+SHA1 (patch-src_cares__wrap.cc) = a26a162f130468cbc0650a33b27b71377d273704
+SHA1 (patch-src_inspector__agent.cc) = 2ec2a7be459648700488096f467a4ae6af5a9d91
+SHA1 (patch-src_node__postmortem__metadata.cc) = 9938482d724ad6636af5dc3fa719ec26ed8539ff
+SHA1 (patch-tools_gyp_pylib_gyp_common.py) = 8d76b78e46b0ba2fef08294872e17a068d595f32
+SHA1 (patch-tools_gyp_pylib_gyp_generator_make.py) = be3cc1aaa85c3d59b6f2758df813cb5ad8d8f74e
+SHA1 (patch-tools_gyp_pylib_gyp_xcode__emulation.py) = 15937c419f3226ab280c7bcd5d726773cb5add57
+SHA1 (patch-tools_install.py) = 8058eb63387971b97a1c3573d1875befeb873e77
diff --git a/lang/nodejs12/options.mk b/lang/nodejs12/options.mk
new file mode 100644
index 00000000000..e8fd2bf36ab
--- /dev/null
+++ b/lang/nodejs12/options.mk
@@ -0,0 +1,34 @@
+# $NetBSD: options.mk,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+PKG_OPTIONS_VAR= PKG_OPTIONS.node
+PKG_SUPPORTED_OPTIONS= openssl dtrace
+PKG_SUGGESTED_OPTIONS= openssl
+
+.include "../../mk/bsd.prefs.mk"
+
+.if (${OPSYS} == "SunOS" || ${OPSYS} == "Darwin") \
+ && exists(/usr/sbin/dtrace)
+PKG_SUGGESTED_OPTIONS+= dtrace
+.endif
+
+.include "../../mk/bsd.options.mk"
+
+PLIST_VARS+= dtrace openssl
+
+.if !empty(PKG_OPTIONS:Mdtrace)
+CONFIGURE_ARGS+= --with-dtrace
+PLIST.dtrace= yes
+.else
+CONFIGURE_ARGS+= --without-dtrace
+.endif
+
+# print-PLIST helper
+PRINT_PLIST_AWK+= {if ($$0 ~ /lib\/dtrace/) {$$0 = "$${PLIST.dtrace}" $$0;}}
+PRINT_PLIST_AWK+= {if ($$0 ~ /include\/node\/openssl/) {$$0 = "$${PLIST.openssl}" $$0;}}
+
+.if !empty(PKG_OPTIONS:Mopenssl)
+# nodejs 10.x requires OpenSSL 1.1.x. Use embedded source until we have such.
+PLIST.openssl= yes
+.else
+CONFIGURE_ARGS+= --without-ssl
+.endif
diff --git a/lang/nodejs12/patches/patch-common.gypi b/lang/nodejs12/patches/patch-common.gypi
new file mode 100644
index 00000000000..3de0a9d55d1
--- /dev/null
+++ b/lang/nodejs12/patches/patch-common.gypi
@@ -0,0 +1,20 @@
+$NetBSD: patch-common.gypi,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Add support for NetBSD.
+
+--- common.gypi.orig 2018-04-24 14:41:15.000000000 +0000
++++ common.gypi
+@@ -315,11 +315,11 @@
+ 'BUILDING_UV_SHARED=1',
+ ],
+ }],
+- [ 'OS in "linux freebsd openbsd solaris aix"', {
++ [ 'OS in "linux freebsd openbsd netbsd solaris aix"', {
+ 'cflags': [ '-pthread' ],
+ 'ldflags': [ '-pthread' ],
+ }],
+- [ 'OS in "linux freebsd openbsd solaris android aix cloudabi"', {
++ [ 'OS in "linux freebsd openbsd netbsd netbsd solaris android aix cloudabi"', {
+ 'cflags': [ '-Wall', '-Wextra', '-Wno-unused-parameter', ],
+ 'cflags_cc': [ '-fno-rtti', '-fno-exceptions', '-std=gnu++1y' ],
+ 'ldflags': [ '-rdynamic' ],
diff --git a/lang/nodejs12/patches/patch-deps_cares_cares.gyp b/lang/nodejs12/patches/patch-deps_cares_cares.gyp
new file mode 100644
index 00000000000..90b6c3a0f58
--- /dev/null
+++ b/lang/nodejs12/patches/patch-deps_cares_cares.gyp
@@ -0,0 +1,17 @@
+$NetBSD: patch-deps_cares_cares.gyp,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Add support for NetBSD.
+
+--- deps/cares/cares.gyp.orig 2013-03-14 10:55:24.000000000 +0900
++++ deps/cares/cares.gyp 2013-03-14 10:55:47.000000000 +0900
+@@ -140,6 +140,10 @@
+ 'include_dirs': [ 'config/freebsd' ],
+ 'sources': [ 'config/freebsd/ares_config.h' ]
+ }],
++ [ 'OS=="netbsd"', {
++ 'include_dirs': [ 'config/netbsd' ],
++ 'sources': [ 'config/netbsd/ares_config.h' ]
++ }],
+ [ 'OS=="openbsd"', {
+ 'include_dirs': [ 'config/openbsd' ],
+ 'sources': [ 'config/openbsd/ares_config.h' ]
diff --git a/lang/nodejs12/patches/patch-deps_openssl_config_archs_linux-elf_asm_openssl-cl.gypi b/lang/nodejs12/patches/patch-deps_openssl_config_archs_linux-elf_asm_openssl-cl.gypi
new file mode 100644
index 00000000000..bb75c142d73
--- /dev/null
+++ b/lang/nodejs12/patches/patch-deps_openssl_config_archs_linux-elf_asm_openssl-cl.gypi
@@ -0,0 +1,23 @@
+$NetBSD: patch-deps_openssl_config_archs_linux-elf_asm_openssl-cl.gypi,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+--- deps/openssl/config/archs/linux-elf/asm/openssl-cl.gypi.orig 2019-05-28 21:32:15.000000000 +0000
++++ deps/openssl/config/archs/linux-elf/asm/openssl-cl.gypi
+@@ -30,8 +30,16 @@
+ '-pthread',
+ '-Wall -O3 -fomit-frame-pointer',
+ ],
+- 'openssl_ex_libs_linux-elf': [
+- '-ldl -pthread',
++ 'conditions': [
++ ['OS=="linux"', {
++ 'openssl_ex_libs_linux-elf': [
++ '-ldl -pthread',
++ ],
++ }, {
++ 'openssl_ex_libs_linux-elf': [
++ '',
++ ],
++ }],
+ ],
+ 'openssl_cli_srcs_linux-elf': [
+ 'openssl/apps/asn1pars.c',
diff --git a/lang/nodejs12/patches/patch-deps_openssl_config_bn__conf__asm.h b/lang/nodejs12/patches/patch-deps_openssl_config_bn__conf__asm.h
new file mode 100644
index 00000000000..43a3388cc63
--- /dev/null
+++ b/lang/nodejs12/patches/patch-deps_openssl_config_bn__conf__asm.h
@@ -0,0 +1,32 @@
+$NetBSD: patch-deps_openssl_config_bn__conf__asm.h,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Support NetBSD/arm,aarch64,i386,amd64 (and hopefully other ILP32 archs)
+
+--- deps/openssl/config/bn_conf_asm.h.orig 2019-01-29 16:20:45.000000000 +0900
++++ deps/openssl/config/bn_conf_asm.h 2019-02-24 10:23:14.508941933 +0900
+@@ -9,9 +9,9 @@
+ # include "./archs/linux-x32/asm/crypto/include/internal/bn_conf.h"
+ #elif defined(OPENSSL_LINUX) && defined(__x86_64__)
+ # include "./archs/linux-x86_64/asm/crypto/include/internal/bn_conf.h"
+-#elif defined(OPENSSL_LINUX) && defined(__arm__)
++#elif (defined(OPENSSL_LINUX) || defined(__NetBSD__)) && defined(__arm__)
+ # include "./archs/linux-armv4/asm/crypto/include/internal/bn_conf.h"
+-#elif defined(OPENSSL_LINUX) && defined(__aarch64__)
++#elif (defined(OPENSSL_LINUX) || defined(__NetBSD__)) && defined(__aarch64__)
+ # include "./archs/linux-aarch64/asm/crypto/include/internal/bn_conf.h"
+ #elif defined(__APPLE__) && defined(__MACH__) && defined(__i386__)
+ # include "./archs/darwin-i386-cc/asm/crypto/include/internal/bn_conf.h"
+@@ -21,9 +21,10 @@
+ # include "./archs/VC-WIN32/asm/crypto/include/internal/bn_conf.h"
+ #elif defined(_WIN32) && defined(_M_X64)
+ # include "./archs/VC-WIN64A/asm/crypto/include/internal/bn_conf.h"
+-#elif (defined(__FreeBSD__) || defined(__OpenBSD__)) && defined(__i386__)
+-# include "./archs/BSD-x86/asm/crypto/include/internal/bn_conf.h"
+-#elif (defined(__FreeBSD__) || defined(__OpenBSD__)) && defined(__x86_64__)
++// XXX missing
++//#elif (defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__)) && defined(__i386__)
++//# include "./archs/BSD-x86/asm/crypto/include/internal/bn_conf.h"
++#elif (defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__)) && defined(__x86_64__)
+ # include "./archs/BSD-x86_64/asm/crypto/include/internal/bn_conf.h"
+ #elif defined(__sun) && defined(__i386__)
+ # include "./archs/solaris-x86-gcc/asm/crypto/include/internal/bn_conf.h"
diff --git a/lang/nodejs12/patches/patch-deps_openssl_config_bn__conf__no-asm.h b/lang/nodejs12/patches/patch-deps_openssl_config_bn__conf__no-asm.h
new file mode 100644
index 00000000000..08a37b93f12
--- /dev/null
+++ b/lang/nodejs12/patches/patch-deps_openssl_config_bn__conf__no-asm.h
@@ -0,0 +1,30 @@
+$NetBSD: patch-deps_openssl_config_bn__conf__no-asm.h,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Support NetBSD/arm,aarch64,i386,amd64 (and hopefully other ILP32 archs)
+
+--- deps/openssl/config/bn_conf_no-asm.h.orig 2019-05-28 21:32:16.000000000 +0000
++++ deps/openssl/config/bn_conf_no-asm.h
+@@ -9,9 +9,9 @@
+ # include "./archs/linux-x32/no-asm/crypto/include/internal/bn_conf.h"
+ #elif defined(OPENSSL_LINUX) && defined(__x86_64__)
+ # include "./archs/linux-x86_64/no-asm/crypto/include/internal/bn_conf.h"
+-#elif defined(OPENSSL_LINUX) && defined(__arm__)
++#elif (defined(OPENSSL_LINUX) || defined(__NetBSD__)) && defined(__arm__)
+ # include "./archs/linux-armv4/no-asm/crypto/include/internal/bn_conf.h"
+-#elif defined(OPENSSL_LINUX) && defined(__aarch64__)
++#elif (defined(OPENSSL_LINUX) || defined(__NetBSD__)) && defined(__aarch64__)
+ # include "./archs/linux-aarch64/no-asm/crypto/include/internal/bn_conf.h"
+ #elif defined(__APPLE__) && defined(__MACH__) && defined(__i386__)
+ # include "./archs/darwin-i386-cc/no-asm/crypto/include/internal/bn_conf.h"
+@@ -23,9 +23,9 @@
+ # include "./archs/VC-WIN64A/no-asm/crypto/include/internal/bn_conf.h"
+ #elif defined(_WIN32) && defined(_M_ARM64)
+ # include "./archs/VC-WIN64-ARM/no-asm/crypto/include/internal/bn_conf.h"
+-#elif (defined(__FreeBSD__) || defined(__OpenBSD__)) && defined(__i386__)
++#elif (defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__)) && defined(__i386__)
+ # include "./archs/BSD-x86/no-asm/crypto/include/internal/bn_conf.h"
+-#elif (defined(__FreeBSD__) || defined(__OpenBSD__)) && defined(__x86_64__)
++#elif (defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__)) && defined(__x86_64__)
+ # include "./archs/BSD-x86_64/no-asm/crypto/include/internal/bn_conf.h"
+ #elif defined(__sun) && defined(__i386__)
+ # include "./archs/solaris-x86-gcc/no-asm/crypto/include/internal/bn_conf.h"
diff --git a/lang/nodejs12/patches/patch-deps_openssl_config_dso__conf__asm.h b/lang/nodejs12/patches/patch-deps_openssl_config_dso__conf__asm.h
new file mode 100644
index 00000000000..cce3538f854
--- /dev/null
+++ b/lang/nodejs12/patches/patch-deps_openssl_config_dso__conf__asm.h
@@ -0,0 +1,32 @@
+$NetBSD: patch-deps_openssl_config_dso__conf__asm.h,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Support NetBSD/arm,aarch64,i386,amd64 (and hopefully other ILP32 archs)
+
+--- deps/openssl/config/dso_conf_asm.h.orig 2019-02-24 10:37:55.875191472 +0900
++++ deps/openssl/config/dso_conf_asm.h 2019-02-24 10:24:24.895671320 +0900
+@@ -9,9 +9,9 @@
+ # include "./archs/linux-x32/asm/crypto/include/internal/dso_conf.h"
+ #elif defined(OPENSSL_LINUX) && defined(__x86_64__)
+ # include "./archs/linux-x86_64/asm/crypto/include/internal/dso_conf.h"
+-#elif defined(OPENSSL_LINUX) && defined(__arm__)
++#elif (defined(OPENSSL_LINUX) || defined(__NetBSD__)) && defined(__arm__)
+ # include "./archs/linux-armv4/asm/crypto/include/internal/dso_conf.h"
+-#elif defined(OPENSSL_LINUX) && defined(__aarch64__)
++#elif (defined(OPENSSL_LINUX) || defined(__NetBSD__)) && defined(__aarch64__)
+ # include "./archs/linux-aarch64/asm/crypto/include/internal/dso_conf.h"
+ #elif defined(__APPLE__) && defined(__MACH__) && defined(__i386__)
+ # include "./archs/darwin-i386-cc/asm/crypto/include/internal/dso_conf.h"
+@@ -21,9 +21,10 @@
+ # include "./archs/VC-WIN32/asm/crypto/include/internal/dso_conf.h"
+ #elif defined(_WIN32) && defined(_M_X64)
+ # include "./archs/VC-WIN64A/asm/crypto/include/internal/dso_conf.h"
+-#elif (defined(__FreeBSD__) || defined(__OpenBSD__)) && defined(__i386__)
+-# include "./archs/BSD-x86/asm/crypto/include/internal/dso_conf.h"
+-#elif (defined(__FreeBSD__) || defined(__OpenBSD__)) && defined(__x86_64__)
++// XXX missing
++//#elif (defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__)) && defined(__i386__)
++//# include "./archs/BSD-x86/asm/crypto/include/internal/dso_conf.h"
++#elif (defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__)) && defined(__x86_64__)
+ # include "./archs/BSD-x86_64/asm/crypto/include/internal/dso_conf.h"
+ #elif defined(__sun) && defined(__i386__)
+ # include "./archs/solaris-x86-gcc/asm/crypto/include/internal/dso_conf.h"
diff --git a/lang/nodejs12/patches/patch-deps_openssl_config_dso__conf__no-asm.h b/lang/nodejs12/patches/patch-deps_openssl_config_dso__conf__no-asm.h
new file mode 100644
index 00000000000..6b8a7561648
--- /dev/null
+++ b/lang/nodejs12/patches/patch-deps_openssl_config_dso__conf__no-asm.h
@@ -0,0 +1,30 @@
+$NetBSD: patch-deps_openssl_config_dso__conf__no-asm.h,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Support NetBSD/arm,aarch64,i386,amd64 (and hopefully other ILP32 archs)
+
+--- deps/openssl/config/dso_conf_no-asm.h.orig 2019-05-28 21:32:16.000000000 +0000
++++ deps/openssl/config/dso_conf_no-asm.h
+@@ -9,9 +9,9 @@
+ # include "./archs/linux-x32/no-asm/crypto/include/internal/dso_conf.h"
+ #elif defined(OPENSSL_LINUX) && defined(__x86_64__)
+ # include "./archs/linux-x86_64/no-asm/crypto/include/internal/dso_conf.h"
+-#elif defined(OPENSSL_LINUX) && defined(__arm__)
++#elif (defined(OPENSSL_LINUX) || defined(__NetBSD__)) && defined(__arm__)
+ # include "./archs/linux-armv4/no-asm/crypto/include/internal/dso_conf.h"
+-#elif defined(OPENSSL_LINUX) && defined(__aarch64__)
++#elif (defined(OPENSSL_LINUX) || defined(__NetBSD__)) && defined(__aarch64__)
+ # include "./archs/linux-aarch64/no-asm/crypto/include/internal/dso_conf.h"
+ #elif defined(__APPLE__) && defined(__MACH__) && defined(__i386__)
+ # include "./archs/darwin-i386-cc/no-asm/crypto/include/internal/dso_conf.h"
+@@ -23,9 +23,9 @@
+ # include "./archs/VC-WIN64A/no-asm/crypto/include/internal/dso_conf.h"
+ #elif defined(_WIN32) && defined(_M_ARM64)
+ # include "./archs/VC-WIN64-ARM/no-asm/crypto/include/internal/dso_conf.h"
+-#elif (defined(__FreeBSD__) || defined(__OpenBSD__)) && defined(__i386__)
++#elif (defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__)) && defined(__i386__)
+ # include "./archs/BSD-x86/no-asm/crypto/include/internal/dso_conf.h"
+-#elif (defined(__FreeBSD__) || defined(__OpenBSD__)) && defined(__x86_64__)
++#elif (defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__)) && defined(__x86_64__)
+ # include "./archs/BSD-x86_64/no-asm/crypto/include/internal/dso_conf.h"
+ #elif defined(__sun) && defined(__i386__)
+ # include "./archs/solaris-x86-gcc/no-asm/crypto/include/internal/dso_conf.h"
diff --git a/lang/nodejs12/patches/patch-deps_openssl_config_opensslconf__asm.h b/lang/nodejs12/patches/patch-deps_openssl_config_opensslconf__asm.h
new file mode 100644
index 00000000000..a154a6bac19
--- /dev/null
+++ b/lang/nodejs12/patches/patch-deps_openssl_config_opensslconf__asm.h
@@ -0,0 +1,29 @@
+$NetBSD: patch-deps_openssl_config_opensslconf__asm.h,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Support NetBSD/arm,aarch64,i386,amd64 (and hopefully other ILP32 archs)
+
+--- deps/openssl/config/opensslconf_asm.h.orig 2019-01-29 16:20:45.000000000 +0900
++++ deps/openssl/config/opensslconf_asm.h 2019-02-24 09:05:18.803688546 +0900
+@@ -96,9 +96,9 @@
+ # include "./archs/linux-x32/asm/include/openssl/opensslconf.h"
+ #elif defined(OPENSSL_LINUX) && defined(__x86_64__)
+ # include "./archs/linux-x86_64/asm/include/openssl/opensslconf.h"
+-#elif defined(OPENSSL_LINUX) && defined(__arm__)
++#elif (defined(OPENSSL_LINUX) || defined(__NetBSD__)) && defined(__arm__)
+ # include "./archs/linux-armv4/asm/include/openssl/opensslconf.h"
+-#elif defined(OPENSSL_LINUX) && defined(__aarch64__)
++#elif (defined(OPENSSL_LINUX) || defined(__NetBSD__)) && defined(__aarch64__)
+ # include "./archs/linux-aarch64/asm/include/openssl/opensslconf.h"
+ #elif defined(__APPLE__) && defined(__MACH__) && defined(__i386__)
+ # include "./archs/darwin-i386-cc/asm/include/openssl/opensslconf.h"
+@@ -108,9 +108,7 @@
+ # include "./archs/VC-WIN32/asm/include/openssl/opensslconf.h"
+ #elif defined(_WIN32) && defined(_M_X64)
+ # include "./archs/VC-WIN64A/asm/include/openssl/opensslconf.h"
+-#elif (defined(__FreeBSD__) || defined(__OpenBSD__)) && defined(__i386__)
+-# include "./archs/BSD-x86/asm/include/openssl/opensslconf.h"
+-#elif (defined(__FreeBSD__) || defined(__OpenBSD__)) && defined(__x86_64__)
++#elif (defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__)) && defined(__x86_64__)
+ # include "./archs/BSD-x86_64/asm/include/openssl/opensslconf.h"
+ #elif defined(__sun) && defined(__i386__)
+ # include "./archs/solaris-x86-gcc/asm/include/openssl/opensslconf.h"
diff --git a/lang/nodejs12/patches/patch-deps_openssl_config_opensslconf__no-asm.h b/lang/nodejs12/patches/patch-deps_openssl_config_opensslconf__no-asm.h
new file mode 100644
index 00000000000..4687a73a406
--- /dev/null
+++ b/lang/nodejs12/patches/patch-deps_openssl_config_opensslconf__no-asm.h
@@ -0,0 +1,30 @@
+$NetBSD: patch-deps_openssl_config_opensslconf__no-asm.h,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Support NetBSD/arm,aarch64,i386,amd64 (and hopefully other ILP32 archs)
+
+--- deps/openssl/config/opensslconf_no-asm.h.orig 2019-05-28 21:32:16.000000000 +0000
++++ deps/openssl/config/opensslconf_no-asm.h
+@@ -4,9 +4,9 @@
+ # include "./archs/linux-x32/no-asm/include/openssl/opensslconf.h"
+ #elif defined(OPENSSL_LINUX) && defined(__x86_64__)
+ # include "./archs/linux-x86_64/no-asm/include/openssl/opensslconf.h"
+-#elif defined(OPENSSL_LINUX) && defined(__arm__)
++#elif (defined(OPENSSL_LINUX) || defined(__NetBSD__)) && defined(__arm__)
+ # include "./archs/linux-armv4/no-asm/include/openssl/opensslconf.h"
+-#elif defined(OPENSSL_LINUX) && defined(__aarch64__)
++#elif (defined(OPENSSL_LINUX) || defined(__NetBSD__)) && defined(__aarch64__)
+ # include "./archs/linux-aarch64/no-asm/include/openssl/opensslconf.h"
+ #elif defined(__APPLE__) && defined(__MACH__) && defined(__i386__)
+ # include "./archs/darwin-i386-cc/no-asm/include/openssl/opensslconf.h"
+@@ -18,9 +18,9 @@
+ # include "./archs/VC-WIN64A/no-asm/include/openssl/opensslconf.h"
+ #elif defined(_WIN32) && defined(_M_ARM64)
+ # include "./archs/VC-WIN64-ARM/no-asm/include/openssl/opensslconf.h"
+-#elif (defined(__FreeBSD__) || defined(__OpenBSD__)) && defined(__i386__)
++#elif (defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__)) && defined(__i386__)
+ # include "./archs/BSD-x86/no-asm/include/openssl/opensslconf.h"
+-#elif (defined(__FreeBSD__) || defined(__OpenBSD__)) && defined(__x86_64__)
++#elif (defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__)) && defined(__x86_64__)
+ # include "./archs/BSD-x86_64/no-asm/include/openssl/opensslconf.h"
+ #elif defined(__sun) && defined(__i386__)
+ # include "./archs/solaris-x86-gcc/no-asm/include/openssl/opensslconf.h"
diff --git a/lang/nodejs12/patches/patch-deps_openssl_openssl-cl__asm.gypi b/lang/nodejs12/patches/patch-deps_openssl_openssl-cl__asm.gypi
new file mode 100644
index 00000000000..516f8e3bfa2
--- /dev/null
+++ b/lang/nodejs12/patches/patch-deps_openssl_openssl-cl__asm.gypi
@@ -0,0 +1,30 @@
+$NetBSD: patch-deps_openssl_openssl-cl__asm.gypi,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Support NetBSD/arm,aarch64,i386,amd64 (and hopefully other ILP32 archs)
+
+XXX Change default to linux-elf instead of linux-x86_64 (from FreeBSD ports)
+
+--- deps/openssl/openssl-cl_asm.gypi.orig 2019-11-19 08:29:07.000000000 +0000
++++ deps/openssl/openssl-cl_asm.gypi
+@@ -31,6 +31,12 @@
+ 'includes': ['config/archs/linux-elf/asm/openssl-cl.gypi'],
+ }, 'target_arch=="x64" and OS=="freebsd"', {
+ 'includes': ['config/archs/BSD-x86_64/asm/openssl-cl.gypi'],
++ }, 'target_arch=="arm" and OS=="netbsd"', {
++ 'includes': ['config/archs/linux-armv4/asm/openssl-cl.gypi'],
++ }, 'target_arch=="arm64" and OS=="netbsd"', {
++ 'includes': ['config/archs/linux-aarch64/asm/openssl-cl.gypi'],
++ }, 'target_arch=="x64" and OS=="netbsd"', {
++ 'includes': ['config/archs/BSD-x86_64/asm/openssl-cl.gypi'],
+ }, 'target_arch=="x64" and OS=="mac"', {
+ 'includes': ['config/archs/darwin64-x86_64-cc/asm/openssl-cl.gypi'],
+ }, 'target_arch=="x64" and OS=="solaris"', {
+@@ -43,7 +49,7 @@
+ 'includes': ['config/archs/linux64-mips64/asm/openssl-cl.gypi'],
+ },{
+ # Other architectures don't use assembly
+- 'includes': ['config/archs/linux-x86_64/asm/openssl-cl.gypi'],
++ 'includes': ['config/archs/linux-elf/asm/openssl-cl.gypi'],
+ }],
+ ],
+ }
diff --git a/lang/nodejs12/patches/patch-deps_openssl_openssl-cl__no__asm.gypi b/lang/nodejs12/patches/patch-deps_openssl_openssl-cl__no__asm.gypi
new file mode 100644
index 00000000000..1cf38246e48
--- /dev/null
+++ b/lang/nodejs12/patches/patch-deps_openssl_openssl-cl__no__asm.gypi
@@ -0,0 +1,36 @@
+$NetBSD: patch-deps_openssl_openssl-cl__no__asm.gypi,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Support NetBSD/arm,aarch64,i386,amd64 (and hopefully other ILP32 archs)
+
+XXX Change default to linux-elf instead of linux-x86_64 (from FreeBSD ports)
+
+--- deps/openssl/openssl-cl_no_asm.gypi.orig 2019-11-19 08:29:07.000000000 +0000
++++ 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'],
+@@ -33,6 +34,12 @@
+ 'includes': ['config/archs/linux-elf/no-asm/openssl-cl.gypi'],
+ }, 'target_arch=="x64" and OS=="freebsd"', {
+ 'includes': ['config/archs/BSD-x86_64/no-asm/openssl-cl.gypi'],
++ }, 'target_arch=="arm" and OS=="netbsd"', {
++ 'includes': ['config/archs/linux-armv4/no-asm/openssl-cl.gypi'],
++ }, 'target_arch=="arm64" and OS=="netbsd"', {
++ 'includes': ['config/archs/linux-aarch64/no-asm/openssl-cl.gypi'],
++ }, 'target_arch=="x64" and OS=="netbsd"', {
++ 'includes': ['config/archs/BSD-x86_64/no-asm/openssl-cl.gypi'],
+ }, 'target_arch=="x64" and OS=="mac"', {
+ 'includes': ['config/archs/darwin64-x86_64-cc/no-asm/openssl-cl.gypi'],
+ }, 'target_arch=="x64" and OS=="solaris"', {
+@@ -45,7 +52,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/lang/nodejs12/patches/patch-deps_openssl_openssl__asm.gypi b/lang/nodejs12/patches/patch-deps_openssl_openssl__asm.gypi
new file mode 100644
index 00000000000..e467e2b633c
--- /dev/null
+++ b/lang/nodejs12/patches/patch-deps_openssl_openssl__asm.gypi
@@ -0,0 +1,30 @@
+$NetBSD: patch-deps_openssl_openssl__asm.gypi,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Support NetBSD/arm,aarch64,i386,amd64 (and hopefully other ILP32 archs)
+
+XXX Change default to linux-elf instead of linux-x86_64 (from FreeBSD ports)
+
+--- deps/openssl/openssl_asm.gypi.orig 2019-11-19 08:29:07.000000000 +0000
++++ deps/openssl/openssl_asm.gypi
+@@ -46,6 +46,12 @@
+ 'includes': ['config/archs/linux-elf/asm/openssl.gypi'],
+ }, 'target_arch=="x64" and OS=="freebsd"', {
+ 'includes': ['config/archs/BSD-x86_64/asm/openssl.gypi'],
++ }, 'target_arch=="arm" and OS=="netbsd"', {
++ 'includes': ['config/archs/linux-armv4/asm/openssl.gypi'],
++ }, 'target_arch=="arm64" and OS=="netbsd"', {
++ 'includes': ['config/archs/linux-aarch64/asm/openssl.gypi'],
++ }, 'target_arch=="x64" and OS=="netbsd"', {
++ 'includes': ['config/archs/BSD-x86_64/asm/openssl.gypi'],
+ }, 'target_arch=="x64" and OS=="mac"', {
+ 'includes': ['config/archs/darwin64-x86_64-cc/asm/openssl.gypi'],
+ }, 'target_arch=="x64" and OS=="solaris"', {
+@@ -77,7 +83,7 @@
+ 'includes': ['config/archs/linux64-mips64/asm/openssl.gypi'],
+ }, {
+ # Other architectures don't use assembly
+- 'includes': ['config/archs/linux-x86_64/asm/openssl.gypi'],
++ 'includes': ['config/archs/linux-elf/asm/openssl.gypi'],
+ }],
+ ],
+ }
diff --git a/lang/nodejs12/patches/patch-deps_openssl_openssl__no__asm.gypi b/lang/nodejs12/patches/patch-deps_openssl_openssl__no__asm.gypi
new file mode 100644
index 00000000000..d3e2b3ea27a
--- /dev/null
+++ b/lang/nodejs12/patches/patch-deps_openssl_openssl__no__asm.gypi
@@ -0,0 +1,28 @@
+$NetBSD: patch-deps_openssl_openssl__no__asm.gypi,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Support NetBSD/arm,aarch64,i386,amd64 (and hopefully other ILP32 archs)
+
+--- deps/openssl/openssl_no_asm.gypi.orig 2019-11-19 08:29:07.000000000 +0000
++++ deps/openssl/openssl_no_asm.gypi
+@@ -32,6 +32,12 @@
+ 'includes': ['config/archs/linux-elf/no-asm/openssl.gypi'],
+ }, 'target_arch=="x64" and OS=="freebsd"', {
+ 'includes': ['config/archs/BSD-x86_64/no-asm/openssl.gypi'],
++ }, 'target_arch=="arm" and OS=="netbsd"', {
++ 'includes': ['config/archs/linux-armv4/no-asm/openssl.gypi'],
++ }, 'target_arch=="arm64" and OS=="netbsd"', {
++ 'includes': ['config/archs/linux-aarch64/no-asm/openssl.gypi'],
++ }, 'target_arch=="x64" and OS=="netbsd"', {
++ 'includes': ['config/archs/BSD-x86_64/no-asm/openssl.gypi'],
+ }, 'target_arch=="x64" and OS=="mac"', {
+ 'includes': ['config/archs/darwin64-x86_64-cc/no-asm/openssl.gypi'],
+ }, 'target_arch=="x64" and OS=="solaris"', {
+@@ -46,7 +52,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/lang/nodejs12/patches/patch-deps_openssl_openssl_crypto_rand_rand__unix.c b/lang/nodejs12/patches/patch-deps_openssl_openssl_crypto_rand_rand__unix.c
new file mode 100644
index 00000000000..71be2459e1a
--- /dev/null
+++ b/lang/nodejs12/patches/patch-deps_openssl_openssl_crypto_rand_rand__unix.c
@@ -0,0 +1,16 @@
+$NetBSD: patch-deps_openssl_openssl_crypto_rand_rand__unix.c,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Don't try to automatically call getentropy(3C) on SunOS, it fails if
+built on a platform that doesn't have it.
+
+--- deps/openssl/openssl/crypto/rand/rand_unix.c.orig 2019-05-28 21:32:16.000000000 +0000
++++ deps/openssl/openssl/crypto/rand/rand_unix.c
+@@ -301,7 +301,7 @@ static ssize_t syscall_random(void *buf,
+ * - Linux since 3.17 with glibc 2.25
+ * - FreeBSD since 12.0 (1200061)
+ */
+-# if defined(__GNUC__) && __GNUC__>=2 && defined(__ELF__) && !defined(__hpux)
++# if defined(__GNUC__) && __GNUC__>=2 && defined(__ELF__) && !defined(__hpux) && !defined(__sun)
+ extern int getentropy(void *buffer, size_t length) __attribute__((weak));
+
+ if (getentropy != NULL)
diff --git a/lang/nodejs12/patches/patch-deps_uv_common.gypi b/lang/nodejs12/patches/patch-deps_uv_common.gypi
new file mode 100644
index 00000000000..bd6c522ec31
--- /dev/null
+++ b/lang/nodejs12/patches/patch-deps_uv_common.gypi
@@ -0,0 +1,15 @@
+$NetBSD: patch-deps_uv_common.gypi,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Add support for NetBSD.
+
+--- deps/uv/common.gypi.orig 2018-04-24 14:41:22.000000000 +0000
++++ deps/uv/common.gypi
+@@ -134,7 +134,7 @@
+ }]
+ ]
+ }],
+- ['OS in "freebsd dragonflybsd linux openbsd solaris android aix"', {
++ ['OS in "freebsd dragonflybsd linux openbsd netbsd solaris android aix"', {
+ 'cflags': [ '-Wall' ],
+ 'cflags_cc': [ '-fno-rtti', '-fno-exceptions' ],
+ 'target_conditions': [
diff --git a/lang/nodejs12/patches/patch-deps_uv_src_unix_netbsd.c b/lang/nodejs12/patches/patch-deps_uv_src_unix_netbsd.c
new file mode 100644
index 00000000000..cbbf0e672a0
--- /dev/null
+++ b/lang/nodejs12/patches/patch-deps_uv_src_unix_netbsd.c
@@ -0,0 +1,26 @@
+$NetBSD: patch-deps_uv_src_unix_netbsd.c,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Bring back support for NetBSD<8.
+
+--- deps/uv/src/unix/netbsd.c.orig 2019-05-28 21:32:17.000000000 +0000
++++ deps/uv/src/unix/netbsd.c
+@@ -32,6 +32,7 @@
+ #include <stdlib.h>
+ #include <fcntl.h>
+
++#include <sys/param.h>
+ #include <sys/resource.h>
+ #include <sys/types.h>
+ #include <sys/sysctl.h>
+@@ -78,7 +79,11 @@ int uv_exepath(char* buffer, size_t* siz
+ mib[0] = CTL_KERN;
+ mib[1] = KERN_PROC_ARGS;
+ mib[2] = -1;
++#if __NetBSD_Version__ >= 799000000
+ mib[3] = KERN_PROC_PATHNAME;
++#else
++ mib[3] = KERN_PROC_ARGV;
++#endif
+ int_size = ARRAY_SIZE(int_buf);
+
+ if (sysctl(mib, 4, int_buf, &int_size, NULL, 0))
diff --git a/lang/nodejs12/patches/patch-deps_v8_src_base_atomicops.h b/lang/nodejs12/patches/patch-deps_v8_src_base_atomicops.h
new file mode 100644
index 00000000000..0af1ea2e1ec
--- /dev/null
+++ b/lang/nodejs12/patches/patch-deps_v8_src_base_atomicops.h
@@ -0,0 +1,18 @@
+$NetBSD: patch-deps_v8_src_base_atomicops.h,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+--- deps/v8/src/base/atomicops.h.orig 2019-11-19 08:29:07.000000000 +0000
++++ deps/v8/src/base/atomicops.h
+@@ -52,9 +52,13 @@ using Atomic64 = intptr_t;
+ #endif // defined(__ILP32__)
+ #endif // defined(V8_HOST_ARCH_64_BIT)
+
++#if defined(__NetBSD__) && defined(__arm__)
++using AtomicWord = int32_t;
++#else
+ // Use AtomicWord for a machine-sized pointer. It will use the Atomic32 or
+ // Atomic64 routines below, depending on your architecture.
+ using AtomicWord = intptr_t;
++#endif
+
+ // Atomically execute:
+ // result = *ptr;
diff --git a/lang/nodejs12/patches/patch-deps_v8_src_base_platform_platform-freebsd.cc b/lang/nodejs12/patches/patch-deps_v8_src_base_platform_platform-freebsd.cc
new file mode 100644
index 00000000000..e118f10e264
--- /dev/null
+++ b/lang/nodejs12/patches/patch-deps_v8_src_base_platform_platform-freebsd.cc
@@ -0,0 +1,32 @@
+$NetBSD: patch-deps_v8_src_base_platform_platform-freebsd.cc,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Overlapping variables, taken from https://github.com/joyent/node/issues/9175
+
+--- deps/v8/src/base/platform/platform-freebsd.cc.orig 2018-04-24 14:41:24.000000000 +0000
++++ deps/v8/src/base/platform/platform-freebsd.cc
+@@ -45,10 +45,10 @@ static unsigned StringToLong(char* buffe
+ }
+
+ std::vector<OS::SharedLibraryAddress> OS::GetSharedLibraryAddresses() {
+- std::vector<SharedLibraryAddress> result;
++ std::vector<SharedLibraryAddress> address_result;
+ static const int MAP_LENGTH = 1024;
+ int fd = open("/proc/self/maps", O_RDONLY);
+- if (fd < 0) return result;
++ if (fd < 0) return address_result;
+ while (true) {
+ char addr_buffer[11];
+ addr_buffer[0] = '0';
+@@ -78,10 +78,10 @@ std::vector<OS::SharedLibraryAddress> OS
+ // There may be no filename in this line. Skip to next.
+ if (start_of_path == nullptr) continue;
+ buffer[bytes_read] = 0;
+- result.push_back(SharedLibraryAddress(start_of_path, start, end));
++ address_result.push_back(SharedLibraryAddress(start_of_path, start, end));
+ }
+ close(fd);
+- return result;
++ return address_result;
+ }
+
+ void OS::SignalCodeMovingGC() {}
diff --git a/lang/nodejs12/patches/patch-deps_v8_src_base_platform_platform-openbsd.cc b/lang/nodejs12/patches/patch-deps_v8_src_base_platform_platform-openbsd.cc
new file mode 100644
index 00000000000..25fa4e6568b
--- /dev/null
+++ b/lang/nodejs12/patches/patch-deps_v8_src_base_platform_platform-openbsd.cc
@@ -0,0 +1,55 @@
+$NetBSD: patch-deps_v8_src_base_platform_platform-openbsd.cc,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Add support for NetBSD/arm.
+
+--- deps/v8/src/base/platform/platform-openbsd.cc.orig 2017-09-26 21:14:30.000000000 +0000
++++ deps/v8/src/base/platform/platform-openbsd.cc
+@@ -34,6 +34,48 @@
+ namespace v8 {
+ namespace base {
+
++#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
++#if defined(__ARM_PCS_VFP)
++ return true;
++#else
++ return false;
++#endif
++
++#elif GCC_VERSION < 40500
++ 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 GCC 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__
++
+ TimezoneCache* OS::CreateTimezoneCache() {
+ return new PosixDefaultTimezoneCache();
+ }
diff --git a/lang/nodejs12/patches/patch-deps_v8_src_base_platform_platform-posix.cc b/lang/nodejs12/patches/patch-deps_v8_src_base_platform_platform-posix.cc
new file mode 100644
index 00000000000..e4ff1a1f8ce
--- /dev/null
+++ b/lang/nodejs12/patches/patch-deps_v8_src_base_platform_platform-posix.cc
@@ -0,0 +1,39 @@
+$NetBSD: patch-deps_v8_src_base_platform_platform-posix.cc,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Use sysconf(_SC_THREAD_STACK_MIN) instead of PTHREAD_STACK_MIN.
+Cast explicitly.
+
+--- deps/v8/src/base/platform/platform-posix.cc.orig 2018-04-24 14:41:24.000000000 +0000
++++ deps/v8/src/base/platform/platform-posix.cc
+@@ -480,6 +480,8 @@ int OS::GetCurrentThreadId() {
+ return static_cast<int>(syscall(__NR_gettid));
+ #elif V8_OS_ANDROID
+ return static_cast<int>(gettid());
++#elif V8_OS_NETBSD || V8_OS_FREEBSD
++ return static_cast<int>(reinterpret_cast<intptr_t>(pthread_self()));
+ #elif V8_OS_AIX
+ return static_cast<int>(thread_self());
+ #elif V8_OS_FUCHSIA
+@@ -670,8 +672,13 @@ Thread::Thread(const Options& options)
+ : data_(new PlatformData),
+ stack_size_(options.stack_size()),
+ start_semaphore_(nullptr) {
++#if defined(__NetBSD__)
++ if (stack_size_ > 0 && static_cast<size_t>(stack_size_) < sysconf(_SC_THREAD_STACK_MIN)) {
++ stack_size_ = sysconf(_SC_THREAD_STACK_MIN);
++#else
+ if (stack_size_ > 0 && static_cast<size_t>(stack_size_) < PTHREAD_STACK_MIN) {
+ stack_size_ = PTHREAD_STACK_MIN;
++#endif
+ }
+ set_name(options.name());
+ }
+@@ -687,7 +694,7 @@ static void SetThreadName(const char* na
+ pthread_set_name_np(pthread_self(), name);
+ #elif V8_OS_NETBSD
+ STATIC_ASSERT(Thread::kMaxThreadNameLength <= PTHREAD_MAX_NAMELEN_NP);
+- pthread_setname_np(pthread_self(), "%s", name);
++ pthread_setname_np(pthread_self(), "%s", (void *)name);
+ #elif V8_OS_MACOSX
+ // pthread_setname_np is only available in 10.6 or later, so test
+ // for it at runtime.
diff --git a/lang/nodejs12/patches/patch-deps_v8_src_base_platform_semaphore.cc b/lang/nodejs12/patches/patch-deps_v8_src_base_platform_semaphore.cc
new file mode 100644
index 00000000000..0957d5461ad
--- /dev/null
+++ b/lang/nodejs12/patches/patch-deps_v8_src_base_platform_semaphore.cc
@@ -0,0 +1,18 @@
+$NetBSD: patch-deps_v8_src_base_platform_semaphore.cc,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Work around lack of sem_timedwait(3) in NetBSD < 6.99.4.
+Adapted from d4f11c0cf476dd854eaebec1cbacb1afc7bea18e of the Chromium V8 sources.
+
+--- deps/v8/src/base/platform/semaphore.cc.orig 2016-10-25 13:26:03.000000000 +0000
++++ deps/v8/src/base/platform/semaphore.cc
+@@ -11,6 +11,10 @@
+
+ #include <errno.h>
+
++#if V8_OS_NETBSD
++#include <sys/param.h> // for __NetBSD_Version__
++#endif
++
+ #include "src/base/logging.h"
+ #include "src/base/platform/elapsed-timer.h"
+ #include "src/base/platform/time.h"
diff --git a/lang/nodejs12/patches/patch-deps_v8_src_common_globals.h b/lang/nodejs12/patches/patch-deps_v8_src_common_globals.h
new file mode 100644
index 00000000000..da4dd47c4c1
--- /dev/null
+++ b/lang/nodejs12/patches/patch-deps_v8_src_common_globals.h
@@ -0,0 +1,14 @@
+$NetBSD: patch-deps_v8_src_common_globals.h,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+stdarg.h is needed for va_list on at least NetBSD.
+
+--- deps/v8/src/common/globals.h.orig 2019-11-19 08:29:07.000000000 +0000
++++ deps/v8/src/common/globals.h
+@@ -7,6 +7,7 @@
+
+ #include <stddef.h>
+ #include <stdint.h>
++#include <stdarg.h>
+
+ #include <limits>
+ #include <ostream>
diff --git a/lang/nodejs12/patches/patch-deps_v8_src_compiler_types.h b/lang/nodejs12/patches/patch-deps_v8_src_compiler_types.h
new file mode 100644
index 00000000000..07b2f55240f
--- /dev/null
+++ b/lang/nodejs12/patches/patch-deps_v8_src_compiler_types.h
@@ -0,0 +1,21 @@
+$NetBSD: patch-deps_v8_src_compiler_types.h,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+NetBSD 6 doesn't have nearbyint/nearbyintf.
+
+--- deps/v8/src/compiler/types.h.orig 2019-11-19 08:29:07.000000000 +0000
++++ deps/v8/src/compiler/types.h
+@@ -5,6 +5,14 @@
+ #ifndef V8_COMPILER_TYPES_H_
+ #define V8_COMPILER_TYPES_H_
+
++#ifdef __NetBSD__
++#include <sys/param.h>
++#if __NetBSD_Version__ - 0 < 699001700
++#define nearbyint rint
++#define nearbyintf rintf
++#endif
++#endif
++
+ #include "src/base/compiler-specific.h"
+ #include "src/common/globals.h"
+ #include "src/compiler/heap-refs.h"
diff --git a/lang/nodejs12/patches/patch-deps_v8_tools_run-llprof.sh b/lang/nodejs12/patches/patch-deps_v8_tools_run-llprof.sh
new file mode 100644
index 00000000000..ea04f1330a1
--- /dev/null
+++ b/lang/nodejs12/patches/patch-deps_v8_tools_run-llprof.sh
@@ -0,0 +1,15 @@
+$NetBSD: patch-deps_v8_tools_run-llprof.sh,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+POSIX shell portability.
+
+--- deps/v8/tools/run-llprof.sh.orig 2015-03-31 22:13:01.000000000 +0000
++++ deps/v8/tools/run-llprof.sh
+@@ -46,7 +46,7 @@ framework, then calls the low level tick
+ EOF
+ }
+
+-if [ $# -eq 0 ] || [ "$1" == "-h" ] || [ "$1" == "--help" ] ; then
++if [ $# -eq 0 ] || [ "$1" = "-h" ] || [ "$1" = "--help" ] ; then
+ usage
+ exit 1
+ fi
diff --git a/lang/nodejs12/patches/patch-node.gypi b/lang/nodejs12/patches/patch-node.gypi
new file mode 100644
index 00000000000..4fb4c6e04bb
--- /dev/null
+++ b/lang/nodejs12/patches/patch-node.gypi
@@ -0,0 +1,14 @@
+$NetBSD: patch-node.gypi,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Linking in libcares requires libsocket.
+
+--- node.gypi.orig 2018-04-24 14:41:37.000000000 +0000
++++ node.gypi
+@@ -251,6 +251,7 @@
+ [ 'OS=="solaris"', {
+ 'libraries': [
+ '-lkstat',
++ '-lsocket',
+ '-lumem',
+ ],
+ 'defines!': [
diff --git a/lang/nodejs12/patches/patch-src_cares__wrap.cc b/lang/nodejs12/patches/patch-src_cares__wrap.cc
new file mode 100644
index 00000000000..0bb7db787b2
--- /dev/null
+++ b/lang/nodejs12/patches/patch-src_cares__wrap.cc
@@ -0,0 +1,15 @@
+$NetBSD: patch-src_cares__wrap.cc,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+NetBSD has no AI_V4MAPPED.
+
+--- src/cares_wrap.cc.orig 2017-05-30 17:32:13.000000000 +0000
++++ src/cares_wrap.cc
+@@ -47,7 +47,7 @@
+ # include <arpa/nameser.h>
+ #endif
+
+-#if defined(__OpenBSD__)
++#if defined(__OpenBSD__) || defined(__NetBSD__)
+ # define AI_V4MAPPED 0
+ #endif
+
diff --git a/lang/nodejs12/patches/patch-src_inspector__agent.cc b/lang/nodejs12/patches/patch-src_inspector__agent.cc
new file mode 100644
index 00000000000..8eb1da15a0c
--- /dev/null
+++ b/lang/nodejs12/patches/patch-src_inspector__agent.cc
@@ -0,0 +1,13 @@
+$NetBSD: patch-src_inspector__agent.cc,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+--- src/inspector_agent.cc.orig 2019-11-19 08:29:09.000000000 +0000
++++ src/inspector_agent.cc
+@@ -112,7 +112,7 @@ static int StartDebugSignalHandler() {
+ CHECK_EQ(0, uv_sem_init(&start_io_thread_semaphore, 0));
+ pthread_attr_t attr;
+ CHECK_EQ(0, pthread_attr_init(&attr));
+-#if defined(PTHREAD_STACK_MIN) && !defined(__FreeBSD__)
++#if defined(PTHREAD_STACK_MIN) && !defined(__FreeBSD__) && !defined(__NetBSD__)
+ // PTHREAD_STACK_MIN is 2 KB with musl libc, which is too small to safely
+ // receive signals. PTHREAD_STACK_MIN + MINSIGSTKSZ is 8 KB on arm64, which
+ // is the musl architecture with the biggest MINSIGSTKSZ so let's use that
diff --git a/lang/nodejs12/patches/patch-src_node__postmortem__metadata.cc b/lang/nodejs12/patches/patch-src_node__postmortem__metadata.cc
new file mode 100644
index 00000000000..49e5231b3a5
--- /dev/null
+++ b/lang/nodejs12/patches/patch-src_node__postmortem__metadata.cc
@@ -0,0 +1,15 @@
+$NetBSD: patch-src_node__postmortem__metadata.cc,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+--- src/node_postmortem_metadata.cc.orig 2018-03-23 20:05:49.909811719 +0000
++++ src/node_postmortem_metadata.cc
+@@ -11,6 +11,10 @@
+ #define NODEDBG_OFFSET(Class, Member, Type) \
+ NODEDBG_SYMBOL(offset_ ## Class ## __ ## Member ## __ ## Type)
+
++// Some systems provide macros for the types as well, which get expanded
++// by the nested macros here.
++#undef uintptr_t
++
+ // These are the constants describing Node internal structures. Every constant
+ // should use the format described above. These constants are declared as
+ // global integers so that they'll be present in the generated node binary. They
diff --git a/lang/nodejs12/patches/patch-tools_gyp_pylib_gyp_common.py b/lang/nodejs12/patches/patch-tools_gyp_pylib_gyp_common.py
new file mode 100644
index 00000000000..d579e7db652
--- /dev/null
+++ b/lang/nodejs12/patches/patch-tools_gyp_pylib_gyp_common.py
@@ -0,0 +1,14 @@
+$NetBSD: patch-tools_gyp_pylib_gyp_common.py,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Add support for DragonFly.
+--- tools/gyp/pylib/gyp/common.py.orig 2017-05-03 02:00:16.000000000 +0000
++++ tools/gyp/pylib/gyp/common.py
+@@ -427,6 +427,8 @@ def GetFlavor(params):
+ return 'openbsd'
+ if sys.platform.startswith('netbsd'):
+ return 'netbsd'
++ if sys.platform.startswith('dragonflybsd'):
++ return 'dragonflybsd'
+ if sys.platform.startswith('aix'):
+ return 'aix'
+
diff --git a/lang/nodejs12/patches/patch-tools_gyp_pylib_gyp_generator_make.py b/lang/nodejs12/patches/patch-tools_gyp_pylib_gyp_generator_make.py
new file mode 100644
index 00000000000..cc1a4d94e73
--- /dev/null
+++ b/lang/nodejs12/patches/patch-tools_gyp_pylib_gyp_generator_make.py
@@ -0,0 +1,25 @@
+$NetBSD: patch-tools_gyp_pylib_gyp_generator_make.py,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Add support for NetBSD and DragonFly.
+Ensure we use the system libtool on OSX.
+
+--- tools/gyp/pylib/gyp/generator/make.py.orig 2013-12-12 05:20:06.000000000 +0000
++++ tools/gyp/pylib/gyp/generator/make.py
+@@ -174,7 +174,7 @@ cmd_solink_module = $(LINK.$(TOOLSET)) -
+
+ LINK_COMMANDS_MAC = """\
+ quiet_cmd_alink = LIBTOOL-STATIC $@
+-cmd_alink = rm -f $@ && ./gyp-mac-tool filter-libtool libtool $(GYP_LIBTOOLFLAGS) -static -o $@ $(filter %.o,$^)
++cmd_alink = rm -f $@ && ./gyp-mac-tool filter-libtool /usr/bin/libtool $(GYP_LIBTOOLFLAGS) -static -o $@ $(filter %.o,$^)
+
+ quiet_cmd_link = LINK($(TOOLSET)) $@
+ cmd_link = $(LINK.$(TOOLSET)) $(GYP_LDFLAGS) $(LDFLAGS.$(TOOLSET)) -o "$@" $(LD_INPUTS) $(LIBS)
+@@ -2012,7 +2012,7 @@ def GenerateOutput(target_list, target_d
+ 'flock': './gyp-flock-tool flock',
+ 'flock_index': 2,
+ })
+- elif flavor == 'freebsd':
++ elif flavor == 'freebsd' or flavor == 'dragonflybsd' or flavor == 'netbsd':
+ # Note: OpenBSD has sysutils/flock. lockf seems to be FreeBSD specific.
+ header_params.update({
+ 'flock': 'lockf',
diff --git a/lang/nodejs12/patches/patch-tools_gyp_pylib_gyp_xcode__emulation.py b/lang/nodejs12/patches/patch-tools_gyp_pylib_gyp_xcode__emulation.py
new file mode 100644
index 00000000000..7d07ad749c2
--- /dev/null
+++ b/lang/nodejs12/patches/patch-tools_gyp_pylib_gyp_xcode__emulation.py
@@ -0,0 +1,15 @@
+$NetBSD: patch-tools_gyp_pylib_gyp_xcode__emulation.py,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Do not generate debugging symbols (uses lots of disk space).
+
+--- tools/gyp/pylib/gyp/xcode_emulation.py.orig 2017-05-30 14:15:04.000000000 +0000
++++ tools/gyp/pylib/gyp/xcode_emulation.py
+@@ -577,7 +577,7 @@ class XcodeSettings(object):
+
+ self._Appendf(cflags, 'GCC_OPTIMIZATION_LEVEL', '-O%s', default='s')
+
+- if self._Test('GCC_GENERATE_DEBUGGING_SYMBOLS', 'YES', default='YES'):
++ if self._Test('GCC_GENERATE_DEBUGGING_SYMBOLS', 'YES', default='NO'):
+ dbg_format = self._Settings().get('DEBUG_INFORMATION_FORMAT', 'dwarf')
+ if dbg_format == 'dwarf':
+ cflags.append('-gdwarf-2')
diff --git a/lang/nodejs12/patches/patch-tools_install.py b/lang/nodejs12/patches/patch-tools_install.py
new file mode 100644
index 00000000000..843c8abb2f6
--- /dev/null
+++ b/lang/nodejs12/patches/patch-tools_install.py
@@ -0,0 +1,18 @@
+$NetBSD: patch-tools_install.py,v 1.1 2019/12/09 20:05:40 adam Exp $
+
+Install man pages under the right directory.
+
+--- tools/install.py.orig 2019-11-19 08:29:09.000000000 +0000
++++ tools/install.py
+@@ -151,10 +151,7 @@ def files(action):
+ 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'], os.environ.get('PKGMANDIR') + '/man1/')
+
+ if 'true' == variables.get('node_install_npm'): npm_files(action)
+
diff --git a/lang/nodejs6/Makefile b/lang/nodejs6/Makefile
deleted file mode 100644
index 44ae4212a73..00000000000
--- a/lang/nodejs6/Makefile
+++ /dev/null
@@ -1,8 +0,0 @@
-# $NetBSD: Makefile,v 1.29 2018/08/16 13:40:26 fhajny Exp $
-
-DISTNAME= node-v6.14.4
-
-.include "options.mk"
-
-.include "../../lang/nodejs/Makefile.common"
-.include "../../mk/bsd.pkg.mk"
diff --git a/lang/nodejs6/PLIST b/lang/nodejs6/PLIST
deleted file mode 100644
index 408fa87433e..00000000000
--- a/lang/nodejs6/PLIST
+++ /dev/null
@@ -1,26 +0,0 @@
-@comment $NetBSD: PLIST,v 1.8 2018/05/12 08:59:56 fhajny Exp $
-bin/node
-include/node/common.gypi
-include/node/config.gypi
-include/node/libplatform/libplatform.h
-include/node/node.h
-include/node/node_api.h
-include/node/node_api_types.h
-include/node/node_buffer.h
-include/node/node_object_wrap.h
-include/node/node_version.h
-include/node/v8-debug.h
-include/node/v8-experimental.h
-include/node/v8-platform.h
-include/node/v8-profiler.h
-include/node/v8-testing.h
-include/node/v8-util.h
-include/node/v8-version.h
-include/node/v8.h
-include/node/v8config.h
-${PLIST.dtrace}lib/dtrace/node.d
-man/man1/node.1
-share/doc/node/gdbinit
-share/doc/node/lldb_commands.py
-share/doc/node/lldbinit
-share/systemtap/tapset/node.stp
diff --git a/lang/nodejs6/buildlink3.mk b/lang/nodejs6/buildlink3.mk
deleted file mode 100644
index 067328b2c5e..00000000000
--- a/lang/nodejs6/buildlink3.mk
+++ /dev/null
@@ -1,31 +0,0 @@
-# $NetBSD: buildlink3.mk,v 1.2 2018/05/12 08:59:56 fhajny Exp $
-
-BUILDLINK_TREE+= nodejs
-
-.if !defined(NODEJS_BUILDLINK3_MK)
-NODEJS_BUILDLINK3_MK:=
-
-BUILDLINK_API_DEPENDS.nodejs+= nodejs>=6<7
-BUILDLINK_PKGSRCDIR.nodejs?= ../../lang/nodejs6
-
-.include "../../mk/bsd.prefs.mk"
-
-.if ${OPSYS} != "Darwin"
-.include "../../devel/libexecinfo/buildlink3.mk"
-.endif
-.include "../../devel/libuv/buildlink3.mk"
-.include "../../devel/zlib/buildlink3.mk"
-.include "../../net/libcares/buildlink3.mk"
-.include "../../www/http-parser/buildlink3.mk"
-.include "../../mk/pthread.buildlink3.mk"
-
-pkgbase := nodejs
-.include "../../mk/pkg-build-options.mk"
-
-.if !empty(PKG_BUILD_OPTIONS.nodejs:Mopenssl)
-. include "../../security/openssl/buildlink3.mk"
-.endif
-
-.endif # NODEJS_BUILDLINK3_MK
-
-BUILDLINK_TREE+= -nodejs
diff --git a/lang/nodejs6/distinfo b/lang/nodejs6/distinfo
deleted file mode 100644
index 9844ddce1a2..00000000000
--- a/lang/nodejs6/distinfo
+++ /dev/null
@@ -1,27 +0,0 @@
-$NetBSD: distinfo,v 1.26 2018/08/16 13:40:26 fhajny Exp $
-
-SHA1 (node-v6.14.4.tar.gz) = bb30f20532d6e8b8899fff6717900abac7e1c20c
-RMD160 (node-v6.14.4.tar.gz) = 95cd5ae06991b64ee702ec4c2c82eb195e581f53
-SHA512 (node-v6.14.4.tar.gz) = 1fc0f9cee3adc0958752bae292d991198c109fb96af076931fc04575a45421d8e9aeb86b9240a208db26dd96a9536ade92ca1617fb4fc6dc3c1ce9deae54b71d
-Size (node-v6.14.4.tar.gz) = 27219503 bytes
-SHA1 (patch-common.gypi) = 5b3a50617358637a6f910de28bb5a14f037317a6
-SHA1 (patch-deps_cares_cares.gyp) = bae68a88473f9b7e0af1fbf65da033bc8f917225
-SHA1 (patch-deps_uv_common.gypi) = ba9caa1f6d9d6df1913d0d72a8d18ea6db0a32ff
-SHA1 (patch-deps_uv_src_unix_netbsd.c) = 9801ef0c1bdd9c8ea7448052a219d80c6624dd20
-SHA1 (patch-deps_uv_uv.gyp) = d5f434389e093a944aa34834e5b4dfcf403098bf
-SHA1 (patch-deps_v8__inspector_third__party_v8__inspector_platform_v8__inspector_PlatformSTL.h) = bd06047c14bde2984c80fcdade7067c4eac3cbc3
-SHA1 (patch-deps_v8_src_arm_cpu-arm.cc) = d0d11ac474ab109a6f40b26fa457b12d742eb48d
-SHA1 (patch-deps_v8_src_base_atomicops.h) = 65b6508f5260ae672b9efc5672ba2c93223355ff
-SHA1 (patch-deps_v8_src_base_atomicops__internals__arm__gcc.h) = 1352769e157d5b49d019bdcd394db276421cdbad
-SHA1 (patch-deps_v8_src_base_platform_platform-freebsd.cc) = 686c2054838a25cfeed7fb9870a959e48dc4de35
-SHA1 (patch-deps_v8_src_base_platform_platform-openbsd.cc) = 0abf6a541f24da87dbbd22f57abcd5534999b3df
-SHA1 (patch-deps_v8_src_base_platform_platform-posix.cc) = eff609b75125dab536934bd8afa640955dcee674
-SHA1 (patch-deps_v8_src_base_platform_semaphore.cc) = dd8cafadd2668f069dab8625f57fbd71a304db3e
-SHA1 (patch-deps_v8_src_log-utils.h) = 32bbf2de2af7a8ab6900a4d5e968dcc1357f6de2
-SHA1 (patch-deps_v8_src_types.h) = 250ab540fa28caeea034ed02b84182bc770cdf35
-SHA1 (patch-deps_v8_tools_run-llprof.sh) = 39aa3faf77492ef8dd35b411b7b0e4605b469af3
-SHA1 (patch-src_cares__wrap.cc) = d9510afd0cd4b0156a604d9197d9f97d6e3b291f
-SHA1 (patch-src_node.cc) = 7004baf140e252861494b4fb003beeaa8581be78
-SHA1 (patch-tools_gyp_pylib_gyp_common.py) = 132008f362ea696e43a4d19bf9d8a0ac754ef55c
-SHA1 (patch-tools_gyp_pylib_gyp_generator_make.py) = be3cc1aaa85c3d59b6f2758df813cb5ad8d8f74e
-SHA1 (patch-tools_install.py) = 4a22a41305fb06ec8067506a7193428c758ebb53
diff --git a/lang/nodejs6/patches/patch-common.gypi b/lang/nodejs6/patches/patch-common.gypi
deleted file mode 100644
index 9b9ba3d6109..00000000000
--- a/lang/nodejs6/patches/patch-common.gypi
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD: patch-common.gypi,v 1.1 2016/10/25 19:54:00 fhajny Exp $
-
-Add support for NetBSD.
-
---- common.gypi.orig 2015-09-08 15:30:34.000000000 +0000
-+++ common.gypi
-@@ -221,7 +221,7 @@
- 'cflags': [ '-pthread', ],
- 'ldflags': [ '-pthread' ],
- }],
-- [ 'OS in "linux freebsd openbsd solaris android aix"', {
-+ [ 'OS in "linux freebsd openbsd solaris android aix netbsd"', {
- 'cflags': [ '-Wall', '-Wextra', '-Wno-unused-parameter', ],
- 'cflags_cc': [ '-fno-rtti', '-fno-exceptions', '-std=gnu++0x' ],
- 'ldflags': [ '-rdynamic' ],
diff --git a/lang/nodejs6/patches/patch-deps_cares_cares.gyp b/lang/nodejs6/patches/patch-deps_cares_cares.gyp
deleted file mode 100644
index 1f1ca752f5d..00000000000
--- a/lang/nodejs6/patches/patch-deps_cares_cares.gyp
+++ /dev/null
@@ -1,36 +0,0 @@
-$NetBSD: patch-deps_cares_cares.gyp,v 1.3 2017/10/25 13:45:18 fhajny Exp $
-
-Add support for NetBSD.
-SunOS headers need _XOPEN_SOURCE=600 with c99.
-
---- deps/cares/cares.gyp.orig 2017-10-24 19:09:57.000000000 +0000
-+++ deps/cares/cares.gyp
-@@ -20,7 +20,7 @@
- ['OS=="solaris"', {
- 'defines': [
- '__EXTENSIONS__',
-- '_XOPEN_SOURCE=500'
-+ '_XOPEN_SOURCE=600'
- ]
- }]
- ]
-@@ -136,7 +136,7 @@
- }],
- [ 'OS not in "win android"', {
- 'cflags': [
-- '--std=gnu89'
-+ '--std=gnu99'
- ],
- }],
- [ 'OS=="linux"', {
-@@ -151,6 +151,10 @@
- 'include_dirs': [ 'config/freebsd' ],
- 'sources': [ 'config/freebsd/ares_config.h' ]
- }],
-+ [ 'OS=="netbsd"', {
-+ 'include_dirs': [ 'config/netbsd' ],
-+ 'sources': [ 'config/netbsd/ares_config.h' ]
-+ }],
- [ 'OS=="openbsd"', {
- 'include_dirs': [ 'config/openbsd' ],
- 'sources': [ 'config/openbsd/ares_config.h' ]
diff --git a/lang/nodejs6/patches/patch-deps_uv_src_unix_netbsd.c b/lang/nodejs6/patches/patch-deps_uv_src_unix_netbsd.c
deleted file mode 100644
index 07d9a876f68..00000000000
--- a/lang/nodejs6/patches/patch-deps_uv_src_unix_netbsd.c
+++ /dev/null
@@ -1,28 +0,0 @@
-$NetBSD: patch-deps_uv_src_unix_netbsd.c,v 1.2 2017/11/08 18:31:15 fhajny Exp $
-
---- deps/uv/src/unix/netbsd.c.orig 2017-11-06 22:14:03.000000000 +0000
-+++ deps/uv/src/unix/netbsd.c
-@@ -40,6 +40,11 @@
- #include <unistd.h>
- #include <time.h>
-
-+/* For __NetBSD_Version__ */
-+#ifdef __NetBSD__
-+# include <sys/param.h>
-+#endif
-+
- static char *process_title;
-
-
-@@ -80,7 +85,11 @@ int uv_exepath(char* buffer, size_t* siz
- mib[0] = CTL_KERN;
- mib[1] = KERN_PROC_ARGS;
- mib[2] = -1;
-+#if __NetBSD_Version__ >= 799000000
- mib[3] = KERN_PROC_PATHNAME;
-+#else
-+ mib[3] = KERN_PROC_ARGV;
-+#endif
- int_size = ARRAY_SIZE(int_buf);
-
- if (sysctl(mib, 4, int_buf, &int_size, NULL, 0))
diff --git a/lang/nodejs6/patches/patch-deps_uv_uv.gyp b/lang/nodejs6/patches/patch-deps_uv_uv.gyp
deleted file mode 100644
index 73746575f00..00000000000
--- a/lang/nodejs6/patches/patch-deps_uv_uv.gyp
+++ /dev/null
@@ -1,42 +0,0 @@
-$NetBSD: patch-deps_uv_uv.gyp,v 1.3 2017/11/08 18:31:15 fhajny Exp $
-
-SunOS headers need _XOPEN_SOURCE=600 with c99.
-
---- deps/uv/uv.gyp.orig 2017-11-06 22:14:03.000000000 +0000
-+++ deps/uv/uv.gyp
-@@ -37,7 +37,7 @@
- 'xcode_settings': {
- 'GCC_SYMBOLS_PRIVATE_EXTERN': 'YES', # -fvisibility=hidden
- 'WARNING_CFLAGS': [ '-Wall', '-Wextra', '-Wno-unused-parameter', '-Wstrict-prototypes' ],
-- 'OTHER_CFLAGS': [ '-g', '--std=gnu89', '-pedantic' ],
-+ 'OTHER_CFLAGS': [ '-g', '--std=gnu99', '-pedantic' ],
- }
- },
-
-@@ -205,7 +205,7 @@
- 'cflags': [
- '-fvisibility=hidden',
- '-g',
-- '--std=gnu89',
-+ '--std=gnu99',
- '-pedantic',
- '-Wall',
- '-Wextra',
-@@ -262,7 +262,7 @@
- ],
- 'defines': [
- '__EXTENSIONS__',
-- '_XOPEN_SOURCE=500',
-+ '_XOPEN_SOURCE=600',
- ],
- 'link_settings': {
- 'libraries': [
-@@ -501,7 +501,7 @@
- [ 'OS=="solaris"', { # make test-fs.c compile, needs _POSIX_C_SOURCE
- 'defines': [
- '__EXTENSIONS__',
-- '_XOPEN_SOURCE=500',
-+ '_XOPEN_SOURCE=600',
- ],
- }],
- [ 'OS=="aix"', { # make test-fs.c compile, needs _POSIX_C_SOURCE
diff --git a/lang/nodejs6/patches/patch-deps_v8__inspector_third__party_v8__inspector_platform_v8__inspector_PlatformSTL.h b/lang/nodejs6/patches/patch-deps_v8__inspector_third__party_v8__inspector_platform_v8__inspector_PlatformSTL.h
deleted file mode 100644
index 147a978f6a5..00000000000
--- a/lang/nodejs6/patches/patch-deps_v8__inspector_third__party_v8__inspector_platform_v8__inspector_PlatformSTL.h
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD: patch-deps_v8__inspector_third__party_v8__inspector_platform_v8__inspector_PlatformSTL.h,v 1.1 2017/03/20 16:51:42 jperkin Exp $
-
-Support GCC 4.8+.
-
---- deps/v8_inspector/third_party/v8_inspector/platform/v8_inspector/PlatformSTL.h.orig 2017-02-22 00:40:24.000000000 +0000
-+++ deps/v8_inspector/third_party/v8_inspector/platform/v8_inspector/PlatformSTL.h
-@@ -23,7 +23,7 @@ inline void USE(T) { }
- #define DEFINE_STATIC_LOCAL(type, name, arguments) \
- static type name;
-
--#if defined(__APPLE__) && !defined(_LIBCPP_VERSION)
-+#if defined(__APPLE__) && !defined(_LIBCPP_VERSION) && (!defined(__GNUC__) || (__GNUC__ <= 4 && __GNUC_MINOR__ < 8))
-
- namespace std {
-
diff --git a/lang/nodejs6/patches/patch-deps_v8_src_base_atomicops__internals__arm__gcc.h b/lang/nodejs6/patches/patch-deps_v8_src_base_atomicops__internals__arm__gcc.h
deleted file mode 100644
index 22b9d44ec39..00000000000
--- a/lang/nodejs6/patches/patch-deps_v8_src_base_atomicops__internals__arm__gcc.h
+++ /dev/null
@@ -1,25 +0,0 @@
-$NetBSD: patch-deps_v8_src_base_atomicops__internals__arm__gcc.h,v 1.1 2016/10/25 19:54:00 fhajny Exp $
-
---- deps/v8/src/base/atomicops_internals_arm_gcc.h.orig 2016-08-26 15:27:18.000000000 +0000
-+++ deps/v8/src/base/atomicops_internals_arm_gcc.h
-@@ -13,6 +13,11 @@
- #include <sys/cpuinline.h>
- #endif
-
-+#if defined(__NetBSD__)
-+#include <sys/types.h>
-+#include <machine/sysarch.h>
-+#endif
-+
- namespace v8 {
- namespace base {
-
-@@ -50,6 +55,8 @@ inline void MemoryBarrier() {
- ((KernelMemoryBarrierFunc)0xffff0fa0)();
- #elif defined(__QNXNTO__)
- __cpu_membarrier();
-+#elif defined(__NetBSD__)
-+ sysarch(ARM_DRAIN_WRITEBUF, (void *)0);
- #else
- // Fallback to GCC built-in function
- __sync_synchronize();
diff --git a/lang/nodejs6/patches/patch-deps_v8_src_base_platform_semaphore.cc b/lang/nodejs6/patches/patch-deps_v8_src_base_platform_semaphore.cc
deleted file mode 100644
index 389d08dc8d2..00000000000
--- a/lang/nodejs6/patches/patch-deps_v8_src_base_platform_semaphore.cc
+++ /dev/null
@@ -1,26 +0,0 @@
-$NetBSD: patch-deps_v8_src_base_platform_semaphore.cc,v 1.1 2016/10/25 19:54:00 fhajny Exp $
-Work around lack of sem_timedwait(3) in NetBSD < 6.99.4.
-Adapted from d4f11c0cf476dd854eaebec1cbacb1afc7bea18e of the Chromium V8 sources.
-
---- deps/v8/src/base/platform/semaphore.cc.orig 2015-09-08 15:30:38.000000000 +0000
-+++ deps/v8/src/base/platform/semaphore.cc
-@@ -11,6 +11,10 @@
-
- #include <errno.h>
-
-+#if V8_OS_NETBSD
-+#include <sys/param.h> // for __NetBSD_Version__
-+#endif
-+
- #include "src/base/logging.h"
- #include "src/base/platform/elapsed-timer.h"
- #include "src/base/platform/time.h"
-@@ -107,7 +111,7 @@ void Semaphore::Wait() {
-
-
- bool Semaphore::WaitFor(const TimeDelta& rel_time) {
--#if V8_OS_NACL
-+#if defined(V8_OS_NACL) || (defined(V8_OS_NETBSD) && (__NetBSD_Version__ - 0 < 699000400))
- // PNaCL doesn't support sem_timedwait, do ugly busy waiting.
- ElapsedTimer timer;
- timer.Start();
diff --git a/lang/nodejs6/patches/patch-deps_v8_src_log-utils.h b/lang/nodejs6/patches/patch-deps_v8_src_log-utils.h
deleted file mode 100644
index 6e8361d3e8c..00000000000
--- a/lang/nodejs6/patches/patch-deps_v8_src_log-utils.h
+++ /dev/null
@@ -1,17 +0,0 @@
-$NetBSD: patch-deps_v8_src_log-utils.h,v 1.1 2016/10/25 19:54:00 fhajny Exp $
-
-Need stdarg.h for va_list.
-
---- deps/v8/src/log-utils.h.orig 2015-10-29 12:22:04.000000000 +0000
-+++ deps/v8/src/log-utils.h
-@@ -9,6 +9,10 @@
- #include "src/base/platform/mutex.h"
- #include "src/flags.h"
-
-+#if defined(__NetBSD__)
-+#include <stdarg.h>
-+#endif
-+
- namespace v8 {
- namespace internal {
-
diff --git a/lang/nodejs6/patches/patch-deps_v8_src_types.h b/lang/nodejs6/patches/patch-deps_v8_src_types.h
deleted file mode 100644
index 99104640fac..00000000000
--- a/lang/nodejs6/patches/patch-deps_v8_src_types.h
+++ /dev/null
@@ -1,21 +0,0 @@
-$NetBSD: patch-deps_v8_src_types.h,v 1.1 2016/10/25 19:54:00 fhajny Exp $
-
-NetBSD 6 doesn't have nearbyint/nearbyintf.
-
---- deps/v8/src/types.h.orig 2015-10-29 12:22:04.000000000 +0000
-+++ deps/v8/src/types.h
-@@ -5,6 +5,14 @@
- #ifndef V8_TYPES_H_
- #define V8_TYPES_H_
-
-+#ifdef __NetBSD__
-+#include <sys/param.h>
-+#if __NetBSD_Version__ - 0 < 699001700
-+#define nearbyint rint
-+#define nearbyintf rintf
-+#endif
-+#endif
-+
- #include "src/conversions.h"
- #include "src/handles.h"
- #include "src/objects.h"
diff --git a/lang/nodejs6/patches/patch-src_cares__wrap.cc b/lang/nodejs6/patches/patch-src_cares__wrap.cc
deleted file mode 100644
index 76c0b38b422..00000000000
--- a/lang/nodejs6/patches/patch-src_cares__wrap.cc
+++ /dev/null
@@ -1,17 +0,0 @@
-$NetBSD: patch-src_cares__wrap.cc,v 1.1 2016/10/25 19:54:00 fhajny Exp $
-
-NetBSD has no AI_V4MAPPED.
-
---- src/cares_wrap.cc.orig 2015-03-31 22:13:01.000000000 +0000
-+++ src/cares_wrap.cc
-@@ -1301,8 +1301,10 @@ static void Initialize(Handle<Object> ta
- Integer::New(env->isolate(), AF_UNSPEC));
- target->Set(FIXED_ONE_BYTE_STRING(env->isolate(), "AI_ADDRCONFIG"),
- Integer::New(env->isolate(), AI_ADDRCONFIG));
-+#if defined(AI_V4MAPPED)
- target->Set(FIXED_ONE_BYTE_STRING(env->isolate(), "AI_V4MAPPED"),
- Integer::New(env->isolate(), AI_V4MAPPED));
-+#endif
-
- Local<FunctionTemplate> aiw =
- FunctionTemplate::New(env->isolate(), NewGetAddrInfoReqWrap);
diff --git a/lang/nodejs6/patches/patch-tools_gyp_pylib_gyp_common.py b/lang/nodejs6/patches/patch-tools_gyp_pylib_gyp_common.py
deleted file mode 100644
index ccdc7bfb0cf..00000000000
--- a/lang/nodejs6/patches/patch-tools_gyp_pylib_gyp_common.py
+++ /dev/null
@@ -1,16 +0,0 @@
-$NetBSD: patch-tools_gyp_pylib_gyp_common.py,v 1.1 2016/10/25 19:54:00 fhajny Exp $
-
-Add support for NetBSD and DragonFly.
---- tools/gyp/pylib/gyp/common.py.orig 2013-03-28 19:07:52.000000000 +0000
-+++ tools/gyp/pylib/gyp/common.py
-@@ -394,6 +394,10 @@ def GetFlavor(params):
- return 'freebsd'
- if sys.platform.startswith('openbsd'):
- return 'openbsd'
-+ if sys.platform.startswith('netbsd'):
-+ return 'netbsd'
-+ if sys.platform.startswith('dragonflybsd'):
-+ return 'dragonflybsd'
- if sys.platform.startswith('aix'):
- return 'aix'
-