Update to latest release.
Which quite likely will still not build on ppc64 (it bundles the same
version of simdutf as 22.16.0).

However, it builds and works on

- amd64 (with and without IBT)
- arm64 (without IBT)
- i386

While I was there, I synchronized the v8 patches with what we have in
lang/deno and www/chromium.

Since the build config changed again (patch-tools_v8_gypfiles_v8_gyp), I
think it would be good to give this a spin on riscv64...

ok?
Index: Makefile
===================================================================
RCS file: /cvs/ports/lang/node/Makefile,v
retrieving revision 1.155
diff -u -p -r1.155 Makefile
--- Makefile	15 Jun 2025 19:45:53 -0000	1.155
+++ Makefile	26 Jun 2025 19:17:35 -0000
@@ -5,7 +5,7 @@ USE_WXNEEDED =		Yes
 
 COMMENT = JavaScript runtime built on Chrome's V8 JavaScript engine
 
-NODE_VERSION =		v22.16.0
+NODE_VERSION =		v22.17.0
 DISTFILES =		${DISTNAME}-headers.tar.gz \
 			${DISTNAME}.tar.xz
 DIST_TUPLE =		github qbit node-pledge 1.1.3 \
@@ -13,7 +13,6 @@ DIST_TUPLE =		github qbit node-pledge 1.
 DISTNAME =		node-${NODE_VERSION}
 PKGNAME =		${DISTNAME:S/v//g}
 EPOCH =			0
-REVISION =		1
 
 CATEGORIES =		lang devel
 
Index: distinfo
===================================================================
RCS file: /cvs/ports/lang/node/distinfo,v
retrieving revision 1.89
diff -u -p -r1.89 distinfo
--- distinfo	10 Jun 2025 06:51:36 -0000	1.89
+++ distinfo	26 Jun 2025 19:17:35 -0000
@@ -1,6 +1,6 @@
-SHA256 (node-v22.16.0-headers.tar.gz) = pg5aVD+rXlEFUllIxZbUl0xhfzlgbO9265TDvx35oGw=
-SHA256 (node-v22.16.0.tar.xz) = cgiU8yPlwawklo6yZ2ZgyQcw1xXLfwkL5xpmhmKhfDc=
+SHA256 (node-v22.17.0-headers.tar.gz) = SqhZxBPmyFUAFb4WsKVd+FNYpw5KwfBK0j7kLoVmwTw=
+SHA256 (node-v22.17.0.tar.xz) = ej7yrtuQXqeSblIJFXJm4jdqXbYZ2awMujyWf29dtPk=
 SHA256 (qbit-node-pledge-1.1.3.tar.gz) = fEaXvLg6hYEJ69K+mgQFizf8DiJY2/DtyFJB/pEanVU=
-SIZE (node-v22.16.0-headers.tar.gz) = 8732195
-SIZE (node-v22.16.0.tar.xz) = 48547612
+SIZE (node-v22.17.0-headers.tar.gz) = 8750909
+SIZE (node-v22.17.0.tar.xz) = 48823936
 SIZE (qbit-node-pledge-1.1.3.tar.gz) = 3167
Index: patches/patch-common_gypi
===================================================================
RCS file: /cvs/ports/lang/node/patches/patch-common_gypi,v
retrieving revision 1.35
diff -u -p -r1.35 patch-common_gypi
--- patches/patch-common_gypi	15 May 2025 18:33:16 -0000	1.35
+++ patches/patch-common_gypi	26 Jun 2025 19:17:35 -0000
@@ -11,7 +11,7 @@ Index: common.gypi
      # Turn on SipHash for hash seed generation, addresses HashWick
      'v8_use_siphash': 'true',
  
-@@ -193,7 +196,6 @@
+@@ -195,7 +198,6 @@
              }],
            ],
          },
@@ -19,7 +19,7 @@ Index: common.gypi
          'conditions': [
            ['enable_lto=="true"', {
              'cflags': ['<(lto)'],
-@@ -515,8 +517,10 @@
+@@ -523,8 +525,10 @@
              'standalone_static_library': 1,
            }],
            ['OS=="openbsd"', {
@@ -32,7 +32,7 @@ Index: common.gypi
            }],
            ['_toolset=="host"', {
              'conditions': [
-@@ -533,7 +537,7 @@
+@@ -541,7 +545,7 @@
                  'ldflags': [ '-m32' ],
                }],
                [ 'host_arch=="ppc64" and OS not in "aix os400"', {
@@ -41,7 +41,7 @@ Index: common.gypi
                  'ldflags': [ '-m64' ],
                }],
                [ 'host_arch=="s390x" and OS=="linux"', {
-@@ -557,7 +561,7 @@
+@@ -565,7 +569,7 @@
                  'ldflags': [ '-m32' ],
                }],
                [ 'target_arch=="ppc64" and OS not in "aix os400"', {
Index: patches/patch-configure_py
===================================================================
RCS file: /cvs/ports/lang/node/patches/patch-configure_py,v
retrieving revision 1.11
diff -u -p -r1.11 patch-configure_py
--- patches/patch-configure_py	15 May 2025 18:33:16 -0000	1.11
+++ patches/patch-configure_py	26 Jun 2025 19:17:35 -0000
@@ -1,7 +1,7 @@
 Index: configure.py
 --- configure.py.orig
 +++ configure.py
-@@ -1739,7 +1739,11 @@ def configure_v8(o, configs):
+@@ -1753,7 +1753,11 @@ def configure_v8(o, configs):
    if sys.platform != 'darwin':
      if o['variables']['v8_enable_webassembly'] and o['variables']['target_arch'] == 'x64':
        o['variables']['v8_enable_wasm_simd256_revec'] = 1
Index: patches/patch-deps_v8_src_diagnostics_perf-jit_cc
===================================================================
RCS file: patches/patch-deps_v8_src_diagnostics_perf-jit_cc
diff -N patches/patch-deps_v8_src_diagnostics_perf-jit_cc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ patches/patch-deps_v8_src_diagnostics_perf-jit_cc	26 Jun 2025 19:17:35 -0000
@@ -0,0 +1,13 @@
+Index: deps/v8/src/diagnostics/perf-jit.cc
+--- deps/v8/src/diagnostics/perf-jit.cc.orig
++++ deps/v8/src/diagnostics/perf-jit.cc
+@@ -30,8 +30,7 @@
+ #include "src/common/assert-scope.h"
+ #include "src/flags/flags.h"
+ 
+-// Only compile the {PerfJitLogger} on Linux & Darwin.
+-#if V8_OS_LINUX || V8_OS_DARWIN
++#if 1
+ 
+ #include <fcntl.h>
+ #include <sys/mman.h>
Index: patches/patch-deps_v8_src_diagnostics_perf-jit_h
===================================================================
RCS file: patches/patch-deps_v8_src_diagnostics_perf-jit_h
diff -N patches/patch-deps_v8_src_diagnostics_perf-jit_h
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ patches/patch-deps_v8_src_diagnostics_perf-jit_h	26 Jun 2025 19:17:35 -0000
@@ -0,0 +1,13 @@
+Index: deps/v8/src/diagnostics/perf-jit.h
+--- deps/v8/src/diagnostics/perf-jit.h.orig
++++ deps/v8/src/diagnostics/perf-jit.h
+@@ -30,8 +30,7 @@
+ 
+ #include "include/v8config.h"
+ 
+-// {PerfJitLogger} is only implemented on Linux & Darwin.
+-#if V8_OS_LINUX || V8_OS_DARWIN
++#if 1
+ 
+ #include "src/logging/log.h"
+ 
Index: patches/patch-include_node_common_gypi
===================================================================
RCS file: /cvs/ports/lang/node/patches/patch-include_node_common_gypi,v
retrieving revision 1.9
diff -u -p -r1.9 patch-include_node_common_gypi
--- patches/patch-include_node_common_gypi	15 May 2025 18:33:16 -0000	1.9
+++ patches/patch-include_node_common_gypi	26 Jun 2025 19:17:35 -0000
@@ -1,7 +1,7 @@
 Index: include/node/common.gypi
 --- include/node/common.gypi.orig
 +++ include/node/common.gypi
-@@ -193,7 +193,6 @@
+@@ -195,7 +195,6 @@
              }],
            ],
          },
@@ -9,7 +9,7 @@ Index: include/node/common.gypi
          'conditions': [
            ['enable_lto=="true"', {
              'cflags': ['<(lto)'],
-@@ -515,7 +514,6 @@
+@@ -523,7 +522,6 @@
              'standalone_static_library': 1,
            }],
            ['OS=="openbsd"', {
@@ -17,7 +17,7 @@ Index: include/node/common.gypi
              'ldflags': [ '-Wl,-z,wxneeded' ],
            }],
            ['_toolset=="host"', {
-@@ -533,7 +531,7 @@
+@@ -541,7 +539,7 @@
                  'ldflags': [ '-m32' ],
                }],
                [ 'host_arch=="ppc64" and OS not in "aix os400"', {
@@ -26,7 +26,7 @@ Index: include/node/common.gypi
                  'ldflags': [ '-m64' ],
                }],
                [ 'host_arch=="s390x" and OS=="linux"', {
-@@ -557,7 +555,7 @@
+@@ -565,7 +563,7 @@
                  'ldflags': [ '-m32' ],
                }],
                [ 'target_arch=="ppc64" and OS not in "aix os400"', {
Index: patches/patch-lib_net_js
===================================================================
RCS file: /cvs/ports/lang/node/patches/patch-lib_net_js,v
retrieving revision 1.15
diff -u -p -r1.15 patch-lib_net_js
--- patches/patch-lib_net_js	15 May 2025 18:33:16 -0000	1.15
+++ patches/patch-lib_net_js	26 Jun 2025 19:17:35 -0000
@@ -13,7 +13,7 @@ for "any address" but that's not really 
 Index: lib/net.js
 --- lib/net.js.orig
 +++ lib/net.js
-@@ -1896,22 +1896,12 @@ function setupListenHandle(address, port, addressType,
+@@ -1897,22 +1897,12 @@ function setupListenHandle(address, port, addressType,
  
      let rval = null;
  
Index: patches/patch-tools_v8_gypfiles_features_gypi
===================================================================
RCS file: /cvs/ports/lang/node/patches/patch-tools_v8_gypfiles_features_gypi,v
retrieving revision 1.2
diff -u -p -r1.2 patch-tools_v8_gypfiles_features_gypi
--- patches/patch-tools_v8_gypfiles_features_gypi	13 Jan 2025 15:58:57 -0000	1.2
+++ patches/patch-tools_v8_gypfiles_features_gypi	26 Jun 2025 19:17:35 -0000
@@ -1,7 +1,7 @@
 Index: tools/v8_gypfiles/features.gypi
 --- tools/v8_gypfiles/features.gypi.orig
 +++ tools/v8_gypfiles/features.gypi
-@@ -331,7 +331,10 @@
+@@ -336,7 +336,10 @@
      'v8_advanced_bigint_algorithms%': 1,
  
      # Enable 256-bit long vector re-vectorization pass in WASM compilation pipeline.
@@ -13,7 +13,7 @@ Index: tools/v8_gypfiles/features.gypi
    },
  
    'target_defaults': {
-@@ -546,6 +549,9 @@
+@@ -554,6 +557,9 @@
        }],
        ['v8_enable_wasm_simd256_revec==1', {
          'defines': ['V8_ENABLE_WASM_SIMD256_REVEC',],
Index: patches/patch-tools_v8_gypfiles_toolchain_gypi
===================================================================
RCS file: /cvs/ports/lang/node/patches/patch-tools_v8_gypfiles_toolchain_gypi,v
retrieving revision 1.4
diff -u -p -r1.4 patch-tools_v8_gypfiles_toolchain_gypi
--- patches/patch-tools_v8_gypfiles_toolchain_gypi	14 Nov 2024 18:58:14 -0000	1.4
+++ patches/patch-tools_v8_gypfiles_toolchain_gypi	26 Jun 2025 19:17:35 -0000
@@ -1,7 +1,7 @@
 Index: tools/v8_gypfiles/toolchain.gypi
 --- tools/v8_gypfiles/toolchain.gypi.orig
 +++ tools/v8_gypfiles/toolchain.gypi
-@@ -675,7 +675,7 @@
+@@ -673,7 +673,7 @@
          'defines': [ '__C99FEATURES__=1' ],  # isinf() etc.
        }],
        ['OS=="freebsd" or OS=="openbsd"', {
@@ -10,7 +10,7 @@ Index: tools/v8_gypfiles/toolchain.gypi
        }],
        ['OS=="netbsd"', {
          'cflags': [ '-I/usr/pkg/include' ],
-@@ -863,11 +863,9 @@
+@@ -858,11 +858,9 @@
                # Don't use -O3 with sanitizers.
                ['asan==0 and msan==0 and lsan==0 \
                  and tsan==0 and ubsan==0 and ubsan_vptr==0', {
Index: patches/patch-tools_v8_gypfiles_v8_gyp
===================================================================
RCS file: /cvs/ports/lang/node/patches/patch-tools_v8_gypfiles_v8_gyp,v
retrieving revision 1.16
diff -u -p -r1.16 patch-tools_v8_gypfiles_v8_gyp
--- patches/patch-tools_v8_gypfiles_v8_gyp	15 May 2025 18:33:16 -0000	1.16
+++ patches/patch-tools_v8_gypfiles_v8_gyp	26 Jun 2025 19:17:35 -0000
@@ -21,8 +21,17 @@ Index: tools/v8_gypfiles/v8.gyp
                }],
                ['v8_enable_webassembly==1', {
                  'conditions': [
--                  ['OS=="linux" or OS=="mac" or OS=="ios" or OS=="freebsd"', {
-+                  ['OS=="linux" or OS=="mac" or OS=="ios" or OS=="freebsd" or OS=="openbsd"', {
+-                  ['OS in "linux mac ios freebsd openharmony"', {
++                  ['OS in "linux mac ios freebsd openharmony openbsd"', {
+                     'sources': [
+                       '<(V8_ROOT)/src/trap-handler/handler-inside-posix.h',
+                     ],
+@@ -745,7 +748,7 @@
+               }],
+               ['v8_enable_webassembly==1', {
+                 'conditions': [
+-                  ['((_toolset=="host" and host_arch=="arm64" or _toolset=="target" and target_arch=="arm64") and (OS in "linux mac openharmony")) or ((_toolset=="host" and host_arch=="x64" or _toolset=="target" and target_arch=="x64") and (OS in "linux mac openharmony"))', {
++                  ['((_toolset=="host" and host_arch=="arm64" or _toolset=="target" and target_arch=="arm64") and (OS in "linux mac openharmony openbsd")) or ((_toolset=="host" and host_arch=="x64" or _toolset=="target" and target_arch=="x64") and (OS in "linux mac openharmony openbsd"))', {
                      'sources': [
                        '<(V8_ROOT)/src/trap-handler/handler-inside-posix.h',
                      ],
@@ -30,8 +39,26 @@ Index: tools/v8_gypfiles/v8.gyp
              }],
              ['v8_enable_webassembly==1', {
                'conditions': [
--                ['OS=="linux" or OS=="mac" or OS=="ios" or OS=="freebsd"', {
-+                ['OS=="linux" or OS=="mac" or OS=="ios" or OS=="freebsd" or OS=="openbsd"', {
+-                ['OS in "linux mac ios freebsd openharmony"', {
++                ['OS in "linux mac ios freebsd openharmony openbsd"', {
+                   'sources': [
+                     '<(V8_ROOT)/src/trap-handler/handler-inside-posix.cc',
+                     '<(V8_ROOT)/src/trap-handler/handler-outside-posix.cc',
+@@ -1194,7 +1197,7 @@
+           'conditions': [
+             ['v8_enable_webassembly==1', {
+               'conditions': [
+-                ['((_toolset=="host" and host_arch=="arm64" or _toolset=="target" and target_arch=="arm64") and (OS in "linux mac ios openharmony")) or ((_toolset=="host" and host_arch=="x64" or _toolset=="target" and target_arch=="x64") and (OS in "linux mac openharmony"))', {
++                ['((_toolset=="host" and host_arch=="arm64" or _toolset=="target" and target_arch=="arm64") and (OS in "linux mac ios openharmony openbsd")) or ((_toolset=="host" and host_arch=="x64" or _toolset=="target" and target_arch=="x64") and (OS in "linux mac openharmony openbsd"))', {
+                   'sources': [
+                     '<(V8_ROOT)/src/trap-handler/handler-inside-posix.cc',
+                     '<(V8_ROOT)/src/trap-handler/handler-outside-posix.cc',
+@@ -1247,7 +1250,7 @@
+           'conditions': [
+             ['v8_enable_webassembly==1', {
+               'conditions': [
+-                ['((_toolset=="host" and host_arch=="riscv64" or _toolset=="target" and target_arch=="riscv64") and (OS=="linux")) or ((_toolset=="host" and host_arch=="x64" or _toolset=="target" and target_arch=="x64") and (OS=="linux"))', {
++                ['((_toolset=="host" and host_arch=="riscv64" or _toolset=="target" and target_arch=="riscv64") and (OS=="linux" or OS=="openbsd")) or ((_toolset=="host" and host_arch=="x64" or _toolset=="target" and target_arch=="x64") and (OS=="linux"))', {
                    'sources': [
                      '<(V8_ROOT)/src/trap-handler/handler-inside-posix.cc',
                      '<(V8_ROOT)/src/trap-handler/handler-outside-posix.cc',

Reply via email to