1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-11-19 00:13:33 +00:00

www/node16: Remove DTrace support to fix build with upcoming binutils 2.41

* With binutils 2.41 build fails as following.
      LD_LIBRARY_PATH=/wrkdirs/usr/ports/www/node16/work/node-v16.20.1/out/Release/lib.host:/wrkdirs/usr/ports/www/node16/work/node-v16.20.1/out/Release/lib.target:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH; cd ../.; mkdir -p /wrkdirs/usr/ports/www/node16/work/node-v16.20.1/out/Release/obj.target/libnode/src; dtrace -64 "-I/wrkdirs/usr/ports/www/node16/work/node-v16.20.1/out/Release/obj/gen" -Isrc -C -G -s src/v8ustack.d -o "/wrkdirs/usr/ports/www/node16/work/node-v16.20.1/out/Release/obj.target/libnode/src/node_dtrace_ustack.o"
    dtrace: failed to compile script src/v8ustack.d: line 1: failed to resolve V8DBG_SMITAG: Unknown variable name
* This is because behaviour of objdump has changes with binutils 2.41. [1][2]
* On upstream DTrace support itself has been removed with Node.js 19.x.
* There is a pull request that says it fixes build error. [3]  I tried
  it but unfortunately it doesn't work as is expected.
* Upstream suggests me to remove DTrace support. [4]

Reference:	https://github.com/nodejs/node/issues/49991#issue-1920717730 [1]
Reference:	https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=0a3137ce4c4b38ee8 [2]
Reference:	https://github.com/nodejs/node/pull/49992 [3]
Reference:	https://github.com/nodejs/node/pull/49992#issuecomment-1784231190 [4]
PR:		274846
Approved by:	maintainer timeout
This commit is contained in:
Yasuhiro Kimura 2023-11-01 18:00:55 +09:00
parent 7af49901ce
commit 441ef340af
2 changed files with 3 additions and 21 deletions

View File

@ -1,7 +1,7 @@
PORTNAME= node
DISTVERSIONPREFIX= v
DISTVERSION= 16.20.1
PORTREVISION?= 2
PORTREVISION?= 3
CATEGORIES= www
MASTER_SITES= https://nodejs.org/dist/v${DISTVERSION}/
PKGNAMESUFFIX= 16
@ -63,19 +63,8 @@ CONFLICTS_INSTALL= node[0-9][0-9]
REINPLACE_ARGS= -i ''
PORTSCOUT= limit:^16\.
OPTIONS_DEFINE= BUNDLED_SSL COREPACK DOCS DTRACE NLS
OPTIONS_DEFAULT= COREPACK DTRACE
.if !exists(/usr/sbin/dtrace)
OPTIONS_EXCLUDE+= DTRACE
.endif
OPTIONS_EXCLUDE_aarch64= DTRACE
# dt_modtext:/usr/src/cddl/contrib/opensolaris/lib/libdtrace/common/dt_link.c(820): arm not implemented
OPTIONS_EXCLUDE_armv6= DTRACE
OPTIONS_EXCLUDE_armv7= DTRACE
OPTIONS_EXCLUDE_powerpc64= DTRACE
OPTIONS_EXCLUDE_powerpc64le= DTRACE
OPTIONS_DEFINE= BUNDLED_SSL COREPACK DOCS NLS
OPTIONS_DEFAULT= COREPACK
OPTIONS_SUB= yes
@ -89,8 +78,6 @@ BUNDLED_SSL_CONFIGURE_OFF= --openssl-use-def-ca-store \
COREPACK_CONFIGURE_OFF= --without-corepack
DTRACE_CONFIGURE_ON= --with-dtrace
NLS_BUILD_DEPENDS= icu>=69.1:devel/icu
NLS_LIB_DEPENDS= libicui18n.so:devel/icu
NLS_CONFIGURE_ON= --with-intl=system-icu
@ -133,8 +120,4 @@ post-install:
${RM} -rf ${STAGEDIR}${PREFIX}/share/systemtap
${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/node
post-install-DTRACE-on:
${MKDIR} ${STAGEDIR}${PREFIX}/lib/dtrace
${INSTALL_DATA} ${WRKSRC}/out/Release/node.d ${STAGEDIR}${PREFIX}/lib/dtrace
.include <bsd.port.post.mk>

View File

@ -513,7 +513,6 @@ include/node/v8-profiler.h
include/node/v8-version.h
include/node/v8.h
include/node/v8config.h
%%DTRACE%%lib/dtrace/node.d
%%COREPACK%%lib/node_modules/corepack/CHANGELOG.md
%%COREPACK%%lib/node_modules/corepack/LICENSE.md
%%COREPACK%%lib/node_modules/corepack/README.md