Date: Fri, 29 Nov 2019 16:28:48 +0000 (UTC) From: Piotr Kubaj <pkubaj@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r518665 - in head/www/node: . files Message-ID: <201911291628.xATGSmoq072578@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: pkubaj Date: Fri Nov 29 16:28:47 2019 New Revision: 518665 URL: https://svnweb.freebsd.org/changeset/ports/518665 Log: www/node: fix build and runtime when using ELFv2 ABI on powerpc64 Submitted by: alfredo.junior@eldorado.org.br Reviewed by: mikael.urankar@gmail.com Approved by: bhughes (maintainer timeout), mentors (implicit approval) Differential Revision: https://reviews.freebsd.org/D21588 Added: head/www/node/files/extra-patch-common.gypi (contents, props changed) head/www/node/files/patch-deps_v8_src_codegen_ppc_constants-ppc.h (contents, props changed) Modified: head/www/node/Makefile head/www/node/files/patch-deps_v8_src_execution_simulator.h Modified: head/www/node/Makefile ============================================================================== --- head/www/node/Makefile Fri Nov 29 16:14:55 2019 (r518664) +++ head/www/node/Makefile Fri Nov 29 16:28:47 2019 (r518665) @@ -77,6 +77,10 @@ LIB_DEPENDS+= libcares.so:dns/c-ares\ .include <bsd.port.options.mk> +.if defined(PPC_ABI) && ${PPC_ABI} == ELFv2 +EXTRA_PATCHES= ${PATCHDIR}/extra-patch-common.gypi +.endif + .if ${OPSYS} == FreeBSD && ${OSVERSION} < 1200085 BROKEN_SSL+= base .endif Added: head/www/node/files/extra-patch-common.gypi ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/www/node/files/extra-patch-common.gypi Fri Nov 29 16:28:47 2019 (r518665) @@ -0,0 +1,13 @@ +--- common.gypi.orig 2019-10-01 15:32:40.000000000 +0200 ++++ common.gypi 2019-10-16 12:47:09.236138000 +0200 +@@ -390,8 +390,8 @@ + 'ldflags': [ '-m32' ], + }], + [ 'target_arch=="ppc64" and OS!="aix"', { +- 'cflags': [ '-m64', '-mminimal-toc' ], +- 'ldflags': [ '-m64' ], ++ 'cflags': [ '-m64' ], ++ 'ldflags': [ '-m64' ], + }], + [ 'target_arch=="s390x"', { + 'cflags': [ '-m64', '-march=z196' ], Added: head/www/node/files/patch-deps_v8_src_codegen_ppc_constants-ppc.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/www/node/files/patch-deps_v8_src_codegen_ppc_constants-ppc.h Fri Nov 29 16:28:47 2019 (r518665) @@ -0,0 +1,20 @@ +--- deps/v8/src/codegen/ppc/constants-ppc.h.orig 2019-09-09 16:27:17 UTC ++++ deps/v8/src/codegen/ppc/constants-ppc.h +@@ -34,7 +34,7 @@ + #define ABI_PASSES_HANDLES_IN_REGS 0 + #endif + +-#if !V8_HOST_ARCH_PPC || !V8_TARGET_ARCH_PPC64 || V8_TARGET_LITTLE_ENDIAN || \ ++#if !V8_HOST_ARCH_PPC || !V8_TARGET_ARCH_PPC64 || \ + (defined(_CALL_ELF) && _CALL_ELF == 2) + #define ABI_RETURNS_OBJECT_PAIRS_IN_REGS 1 + #else +@@ -43,7 +43,7 @@ + + #if !V8_HOST_ARCH_PPC || \ + (V8_TARGET_ARCH_PPC64 && \ +- (V8_TARGET_LITTLE_ENDIAN || (defined(_CALL_ELF) && _CALL_ELF == 2))) ++ (defined(_CALL_ELF) && _CALL_ELF == 2)) + #define ABI_CALL_VIA_IP 1 + #else + #define ABI_CALL_VIA_IP 0 Modified: head/www/node/files/patch-deps_v8_src_execution_simulator.h ============================================================================== --- head/www/node/files/patch-deps_v8_src_execution_simulator.h Fri Nov 29 16:14:55 2019 (r518664) +++ head/www/node/files/patch-deps_v8_src_execution_simulator.h Fri Nov 29 16:28:47 2019 (r518665) @@ -5,7 +5,7 @@ FATAL("Generated code execution not possible during cross-compilation."); #endif // defined(V8_TARGET_OS_WIN) && !defined(V8_OS_WIN) -#if V8_OS_AIX -+#if V8_TARGET_ARCH_PPC_BE ++#if V8_OS_AIX || (V8_TARGET_ARCH_PPC_BE && (!defined(_CALL_ELF) || _CALL_ELF == 1)) // AIX ABI requires function descriptors (FD). Artificially create a pseudo // FD to ensure correct dispatch to generated code. The 'volatile' // declaration is required to avoid the compiler from not observing the
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201911291628.xATGSmoq072578>