Received: by mail.netbsd.org (Postfix, from userid 605) id 2F9FB84F03; Sun, 1 May 2022 00:36:14 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by mail.netbsd.org (Postfix) with ESMTP id 6904984EFD for ; Sun, 1 May 2022 00:36:13 +0000 (UTC) X-Virus-Scanned: amavisd-new at netbsd.org Received: from mail.netbsd.org ([127.0.0.1]) by localhost (mail.netbsd.org [127.0.0.1]) (amavisd-new, port 10025) with ESMTP id EKhA4iU8dNwX for ; Sun, 1 May 2022 00:36:11 +0000 (UTC) Received: from cvs.NetBSD.org (ivanova.netbsd.org [199.233.217.197]) by mail.netbsd.org (Postfix) with ESMTP id 7202484E5F for ; Sun, 1 May 2022 00:36:11 +0000 (UTC) Received: by cvs.NetBSD.org (Postfix, from userid 500) id 61A74FB1A; Sun, 1 May 2022 00:36:11 +0000 (UTC) Content-Transfer-Encoding: 7bit Content-Type: multipart/mixed; boundary="_----------=_165136537117550" MIME-Version: 1.0 Date: Sun, 1 May 2022 00:36:11 +0000 From: "Emmanuel Dreyfus" Subject: CVS commit: pkgsrc/www/arcticfox To: pkgsrc-changes@NetBSD.org Reply-To: manu@netbsd.org X-Mailer: log_accum Message-Id: <20220501003611.61A74FB1A@cvs.NetBSD.org> Sender: pkgsrc-changes-owner@NetBSD.org List-Id: Precedence: bulk List-Unsubscribe: This is a multi-part message in MIME format. --_----------=_165136537117550 Content-Disposition: inline Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="US-ASCII" Module Name: pkgsrc Committed By: manu Date: Sun May 1 00:36:11 UTC 2022 Modified Files: pkgsrc/www/arcticfox: Makefile PLIST distinfo Added Files: pkgsrc/www/arcticfox/patches: patch-xpcom_reflect_xptcall_genstubs.pl patch-xpcom_reflect_xptcall_md_unix_moz.build patch-xpcom_reflect_xptcall_md_unix_xptcinvoke_arm_netbsd.cpp patch-xpcom_reflect_xptcall_md_unix_xptcinvoke_ppc_netbsd.cpp patch-xpcom_reflect_xptcall_md_unix_xptcstubs_arm_netbsd.cpp patch-xpcom_reflect_xptcall_md_unix_xptcstubs_netbsd_m68k.cpp patch-xpcom_reflect_xptcall_md_unix_xptcstubs_ppc_linux.cpp patch-xpcom_reflect_xptcall_md_unix_xptcstubs_ppc_netbsd.cpp patch-xpcom_reflect_xptcall_md_unix_xptcstubs_sparc_netbsd.cpp patch-xpcom_reflect_xptcall_md_unix_xptcstubs_sparc_openbsd.cpp patch-xpcom_reflect_xptcall_xptcprivate.h patch-xpcom_reflect_xptcall_xptcstubsdecl.inc Log Message: Let Articfox run on NetBSD PowerPC ports This was tested on NetBSD-9.2/macppc Patches submitted upstream at https://github.com/wicknix/Arctic-Fox/pull/101 To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.6 pkgsrc/www/arcticfox/Makefile cvs rdiff -u -r1.1 -r1.2 pkgsrc/www/arcticfox/PLIST \ pkgsrc/www/arcticfox/distinfo cvs rdiff -u -r0 -r1.1 \ pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_genstubs.pl \ pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_moz.build \ pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcinvoke_arm_netbsd.cpp \ pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcinvoke_ppc_netbsd.cpp \ pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcstubs_arm_netbsd.cpp \ pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcstubs_netbsd_m68k.cpp \ pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcstubs_ppc_linux.cpp \ pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcstubs_ppc_netbsd.cpp \ pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcstubs_sparc_netbsd.cpp \ pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcstubs_sparc_openbsd.cpp \ pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_xptcprivate.h \ pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_xptcstubsdecl.inc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. --_----------=_165136537117550 Content-Disposition: inline Content-Length: 24186 Content-Transfer-Encoding: binary Content-Type: text/x-diff; charset=us-ascii Modified files: Index: pkgsrc/www/arcticfox/Makefile diff -u pkgsrc/www/arcticfox/Makefile:1.5 pkgsrc/www/arcticfox/Makefile:1.6 --- pkgsrc/www/arcticfox/Makefile:1.5 Mon Apr 18 19:12:16 2022 +++ pkgsrc/www/arcticfox/Makefile Sun May 1 00:36:10 2022 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.5 2022/04/18 19:12:16 adam Exp $ +# $NetBSD: Makefile,v 1.6 2022/05/01 00:36:10 manu Exp $ DISTNAME= arcticfox-39.0 PKGREVISION= 2 @@ -60,6 +60,11 @@ CONFIGURE_ARGS+= --with-system-zlib TOOL_DEPENDS+= yasm>=1.1:../../devel/yasm .endif +PLIST_VARS+= nopowerpc +.if ${MACHINE_ARCH} != "powerpc" +PLIST.nopowerpc= yes +.endif + CONFIGURE_DIRS= ${WRKDIR}/build CONFIGURE_SCRIPT= ${WRKSRC}/configure @@ -129,4 +134,5 @@ BUILDLINK_API_DEPENDS.libevent+= libeven .include "../../x11/libXt/buildlink3.mk" .include "../../x11/pixman/buildlink3.mk" #.include "../../mk/jpeg.buildlink3.mk" +.include "../../mk/atomic64.mk" .include "../../mk/bsd.pkg.mk" Index: pkgsrc/www/arcticfox/PLIST diff -u pkgsrc/www/arcticfox/PLIST:1.1 pkgsrc/www/arcticfox/PLIST:1.2 --- pkgsrc/www/arcticfox/PLIST:1.1 Sat Feb 5 20:51:07 2022 +++ pkgsrc/www/arcticfox/PLIST Sun May 1 00:36:10 2022 @@ -1,4 +1,4 @@ -@comment $NetBSD: PLIST,v 1.1 2022/02/05 20:51:07 nia Exp $ +@comment $NetBSD: PLIST,v 1.2 2022/05/01 00:36:10 manu Exp $ bin/arcticfox include/${PKGNAME}/AbstractMediaDecoder.h include/${PKGNAME}/ActiveLayerTracker.h @@ -255,7 +255,7 @@ include/${PKGNAME}/SharedDecoderManager. include/${PKGNAME}/SharedSurface.h include/${PKGNAME}/SharedSurfaceEGL.h include/${PKGNAME}/SharedSurfaceGL.h -include/${PKGNAME}/SkiaGLGlue.h +${PLIST.nopowerpc}include/${PKGNAME}/SkiaGLGlue.h include/${PKGNAME}/SoftwareVsyncSource.h include/${PKGNAME}/SoftwareWebMVideoDecoder.h include/${PKGNAME}/SourceBufferContentManager.h @@ -2289,7 +2289,7 @@ include/${PKGNAME}/mozilla/gfx/DrawTarge include/${PKGNAME}/mozilla/gfx/Filters.h include/${PKGNAME}/mozilla/gfx/Helpers.h include/${PKGNAME}/mozilla/gfx/HelpersCairo.h -include/${PKGNAME}/mozilla/gfx/HelpersSkia.h +${PLIST.nopowerpc}include/${PKGNAME}/mozilla/gfx/HelpersSkia.h include/${PKGNAME}/mozilla/gfx/Logging.h include/${PKGNAME}/mozilla/gfx/Matrix.h include/${PKGNAME}/mozilla/gfx/NumericTools.h Index: pkgsrc/www/arcticfox/distinfo diff -u pkgsrc/www/arcticfox/distinfo:1.1 pkgsrc/www/arcticfox/distinfo:1.2 --- pkgsrc/www/arcticfox/distinfo:1.1 Sat Feb 5 20:51:07 2022 +++ pkgsrc/www/arcticfox/distinfo Sun May 1 00:36:10 2022 @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.1 2022/02/05 20:51:07 nia Exp $ +$NetBSD: distinfo,v 1.2 2022/05/01 00:36:10 manu Exp $ BLAKE2s (arcticfox-39.0.tar.gz) = 87d8ae46ac9b5f0acebbad1962150804781f29fc9eb2bf1f77442624e4a4fea0 SHA512 (arcticfox-39.0.tar.gz) = 38fc4fa73c5c7d3ea692b2411580c519f6296622ea7f1cd86e784a3cc4d630a76ee699bb7f679a8dabd302c90bb4b7d786e853bed459b6e3b1efac59740db564 @@ -7,3 +7,15 @@ SHA1 (patch-configure.in) = a5c3c9534a77 SHA1 (patch-ipc_chromium_src_base_message__pump__libevent.cc) = 38cf700d07d468526e16cfe63d434c4752da8cc5 SHA1 (patch-media_libcubeb_src_cubeb.c) = b3c4bd8146e2f7146baf1c2050260f7629cdb09a SHA1 (patch-media_libcubeb_src_moz.build) = e98b39b6272b58d4183c526f36987ea239fadd5d +SHA1 (patch-xpcom_reflect_xptcall_genstubs.pl) = f120ff2d52f6875505da477b12e32c40bbf005a2 +SHA1 (patch-xpcom_reflect_xptcall_md_unix_moz.build) = 0c6b7851dce1d3554be6fa4d11032e7bc0d47b19 +SHA1 (patch-xpcom_reflect_xptcall_md_unix_xptcinvoke_arm_netbsd.cpp) = a8f9e48088a09479fe510ca5be584ad71ecaa2f4 +SHA1 (patch-xpcom_reflect_xptcall_md_unix_xptcinvoke_ppc_netbsd.cpp) = 42a82f3fe496b49afada33537b1b1d3dda2e5bf5 +SHA1 (patch-xpcom_reflect_xptcall_md_unix_xptcstubs_arm_netbsd.cpp) = e576e939f7acb44bd7c0fc07d0dddf5bf745d6a6 +SHA1 (patch-xpcom_reflect_xptcall_md_unix_xptcstubs_netbsd_m68k.cpp) = 47bc75f3991964b50f0b2bdb615004cbdcae145f +SHA1 (patch-xpcom_reflect_xptcall_md_unix_xptcstubs_ppc_linux.cpp) = 60cb1b77d6737663ff4509ef00348ee32ba81e2d +SHA1 (patch-xpcom_reflect_xptcall_md_unix_xptcstubs_ppc_netbsd.cpp) = 879f5d69d3c52a8ce6bea9373bd32f7c7762c03b +SHA1 (patch-xpcom_reflect_xptcall_md_unix_xptcstubs_sparc_netbsd.cpp) = e8d15f754261c5e0f99b49b63ba01e339625eb59 +SHA1 (patch-xpcom_reflect_xptcall_md_unix_xptcstubs_sparc_openbsd.cpp) = ef5b28501ebc4e462998f2f28edd883353579789 +SHA1 (patch-xpcom_reflect_xptcall_xptcprivate.h) = 42d708c26969b6749fa14ed790c17dd96ca879d4 +SHA1 (patch-xpcom_reflect_xptcall_xptcstubsdecl.inc) = 0747a1b666494dec8d6005ade8cae8f33e6c928d Added files: Index: pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_genstubs.pl diff -u /dev/null pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_genstubs.pl:1.1 --- /dev/null Sun May 1 00:36:11 2022 +++ pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_genstubs.pl Sun May 1 00:36:10 2022 @@ -0,0 +1,18 @@ +$NetBSD: patch-xpcom_reflect_xptcall_genstubs.pl,v 1.1 2022/05/01 00:36:10 manu Exp $ + +Bring NetBSD in line with other BSDs. +Not sure abut the impact, but there is no reason to single it out + +--- xpcom/reflect/xptcall/genstubs.pl.orig 2022-04-18 02:30:50.477763337 +0000 ++++ xpcom/reflect/xptcall/genstubs.pl 2022-04-17 05:04:03.346183732 +0000 +@@ -43,9 +43,9 @@ + print OUTFILE "* 0 is QueryInterface\n"; + print OUTFILE "* 1 is AddRef\n"; + print OUTFILE "* 2 is Release\n"; + print OUTFILE "*/\n"; +-print OUTFILE "#if !defined(__ia64) || (!defined(__hpux) && !defined(__linux__) && !defined(__FreeBSD__))\n"; ++print OUTFILE "#if !defined(__ia64) || (!defined(__hpux) && !defined(__linux__) && !defined(__FreeBSD__) && !defined(__NetBSD__))\n"; + for($i = 0; $i < $entry_count; $i++) { + print OUTFILE "NS_IMETHOD Stub",$i+3,"();\n"; + } + print OUTFILE "#else\n"; Index: pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_moz.build diff -u /dev/null pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_moz.build:1.1 --- /dev/null Sun May 1 00:36:11 2022 +++ pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_moz.build Sun May 1 00:36:10 2022 @@ -0,0 +1,29 @@ +$NetBSD: patch-xpcom_reflect_xptcall_md_unix_moz.build,v 1.1 2022/05/01 00:36:10 manu Exp $ + +- NetBSD/macppc reports OS_TEST as powerpc and not macppc +- Use OpenBSD/powerpc MD stubs for NetBSD/powerpc + +--- xpcom/reflect/xptcall/md/unix/moz.build.orig 2022-04-18 02:30:50.487997116 +0000 ++++ xpcom/reflect/xptcall/md/unix/moz.build 2022-04-23 01:07:48.540922360 +0000 +@@ -214,15 +214,16 @@ + 'xptcstubs_asm_ppc64_linux.S', + 'xptcstubs_ppc64_linux.cpp', + ] + +-if CONFIG['OS_TEST'] in ('macppc', 'bebox', 'ofppc', 'prep', 'amigappc'): ++# OpenBSD/powerpc MD code is up to date and fits NetBSD ++if CONFIG['OS_TEST'] in ('powerpc', 'macppc', 'bebox', 'ofppc', 'prep', 'amigappc'): + if CONFIG['OS_ARCH'] == 'NetBSD': + SOURCES += [ +- 'xptcinvoke_asm_ppc_netbsd.s', +- 'xptcinvoke_ppc_netbsd.cpp', +- 'xptcstubs_asm_ppc_netbsd.s', +- 'xptcstubs_ppc_netbsd.cpp', ++ 'xptcinvoke_asm_ppc_openbsd.S', ++ 'xptcinvoke_ppc_openbsd.cpp', ++ 'xptcstubs_asm_ppc_openbsd.S', ++ 'xptcstubs_ppc_openbsd.cpp', + ] + + if CONFIG['OS_ARCH'] == 'OpenBSD' and CONFIG['OS_TEST'] == 'powerpc': + SOURCES += [ Index: pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcinvoke_arm_netbsd.cpp diff -u /dev/null pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcinvoke_arm_netbsd.cpp:1.1 --- /dev/null Sun May 1 00:36:11 2022 +++ pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcinvoke_arm_netbsd.cpp Sun May 1 00:36:10 2022 @@ -0,0 +1,18 @@ +$NetBSD: patch-xpcom_reflect_xptcall_md_unix_xptcinvoke_arm_netbsd.cpp,v 1.1 2022/05/01 00:36:10 manu Exp $ + +Update to fit current code + +--- xpcom/reflect/xptcall/md/unix/xptcinvoke_arm_netbsd.cpp.orig 2022-04-18 02:30:50.498239249 +0000 ++++ xpcom/reflect/xptcall/md/unix/xptcinvoke_arm_netbsd.cpp 2022-04-18 01:08:05.177311630 +0000 +@@ -100,9 +100,10 @@ + uint32_t fn_count; + uint32_t fn_copy; + }; + +-XPTC_PUBLIC_API(nsresult) ++ ++EXPORT_XPCOM_API(nsresult) + XPTC_InvokeByIndex(nsISupports* that, uint32_t methodIndex, + uint32_t paramCount, nsXPTCVariant* params) + { + uint32_t result; Index: pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcinvoke_ppc_netbsd.cpp diff -u /dev/null pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcinvoke_ppc_netbsd.cpp:1.1 --- /dev/null Sun May 1 00:36:11 2022 +++ pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcinvoke_ppc_netbsd.cpp Sun May 1 00:36:11 2022 @@ -0,0 +1,15 @@ +$NetBSD: patch-xpcom_reflect_xptcall_md_unix_xptcinvoke_ppc_netbsd.cpp,v 1.1 2022/05/01 00:36:11 manu Exp $ + +Update to fit current code + +--- xpcom/reflect/xptcall/md/unix/xptcinvoke_ppc_netbsd.cpp.orig 2022-04-18 02:30:50.508558042 +0000 ++++ xpcom/reflect/xptcall/md/unix/xptcinvoke_ppc_netbsd.cpp 2022-04-17 06:36:22.117064855 +0000 +@@ -109,7 +109,7 @@ + } + } + + extern "C" +-XPTC_PUBLIC_API(nsresult) ++EXPORT_XPCOM_API(nsresult) + XPTC_InvokeByIndex(nsISupports* that, uint32_t methodIndex, + uint32_t paramCount, nsXPTCVariant* params); Index: pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcstubs_arm_netbsd.cpp diff -u /dev/null pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcstubs_arm_netbsd.cpp:1.1 --- /dev/null Sun May 1 00:36:11 2022 +++ pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcstubs_arm_netbsd.cpp Sun May 1 00:36:11 2022 @@ -0,0 +1,55 @@ +$NetBSD: patch-xpcom_reflect_xptcall_md_unix_xptcstubs_arm_netbsd.cpp,v 1.1 2022/05/01 00:36:11 manu Exp $ + +Update to fit current code + +--- xpcom/reflect/xptcall/md/unix/xptcstubs_arm_netbsd.cpp.orig 2022-04-18 02:30:50.518733769 +0000 ++++ xpcom/reflect/xptcall/md/unix/xptcstubs_arm_netbsd.cpp 2022-04-18 01:57:51.824233012 +0000 +@@ -5,29 +5,28 @@ + + /* Implement shared vtbl methods. */ + + #include "xptcprivate.h" ++#include "xptiprivate.h" + + nsresult ATTRIBUTE_USED + PrepareAndDispatch(nsXPTCStubBase* self, uint32_t methodIndex, uint32_t* args) + { + #define PARAM_BUFFER_COUNT 16 + + nsXPTCMiniVariant paramBuffer[PARAM_BUFFER_COUNT]; + nsXPTCMiniVariant* dispatchParams = nullptr; +- nsIInterfaceInfo* iface_info = nullptr; +- const nsXPTMethodInfo* info; ++ const nsXPTMethodInfo* info = nullptr; + uint8_t paramCount; + uint8_t i; + nsresult result = NS_ERROR_FAILURE; + + NS_ASSERTION(self,"no self"); + +- self->GetInterfaceInfo(&iface_info); +- NS_ASSERTION(iface_info,"no interface info"); +- +- iface_info->GetMethodInfo(uint16_t(methodIndex), &info); +- NS_ASSERTION(info,"no interface info"); ++ self->mEntry->GetMethodInfo(uint16_t(methodIndex), &info); ++ NS_ASSERTION(info,"no method info"); ++ if (!info) ++ return NS_ERROR_UNEXPECTED; + + paramCount = info->GetParamCount(); + + // setup variant array pointer +@@ -70,11 +69,9 @@ + break; + } + } + +- result = self->CallMethod((uint16_t)methodIndex, info, dispatchParams); +- +- NS_RELEASE(iface_info); ++ result = self->mOuter->CallMethod((uint16_t)methodIndex, info, dispatchParams); + + if(dispatchParams != paramBuffer) + delete [] dispatchParams; + Index: pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcstubs_netbsd_m68k.cpp diff -u /dev/null pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcstubs_netbsd_m68k.cpp:1.1 --- /dev/null Sun May 1 00:36:11 2022 +++ pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcstubs_netbsd_m68k.cpp Sun May 1 00:36:11 2022 @@ -0,0 +1,56 @@ +$NetBSD: patch-xpcom_reflect_xptcall_md_unix_xptcstubs_netbsd_m68k.cpp,v 1.1 2022/05/01 00:36:11 manu Exp $ + +Update to fit current code + +--- xpcom/reflect/xptcall/md/unix/xptcstubs_netbsd_m68k.cpp.orig 2022-04-18 02:30:50.528949644 +0000 ++++ xpcom/reflect/xptcall/md/unix/xptcstubs_netbsd_m68k.cpp 2022-04-18 01:58:14.671629551 +0000 +@@ -5,8 +5,9 @@ + + /* Implement shared vtbl methods. */ + + #include "xptcprivate.h" ++#include "xptiprivate.h" + + #if !defined(__NetBSD__) || !defined(__m68k__) + #error This code is for NetBSD/m68k only + #endif +@@ -18,21 +19,19 @@ + #define PARAM_BUFFER_COUNT 16 + + nsXPTCMiniVariant paramBuffer[PARAM_BUFFER_COUNT]; + nsXPTCMiniVariant* dispatchParams = nullptr; +- nsIInterfaceInfo* iface_info = nullptr; +- const nsXPTMethodInfo* info; ++ const nsXPTMethodInfo* info = nullptr; + uint8_t paramCount; + uint8_t i; + nsresult result = NS_ERROR_FAILURE; + + NS_ASSERTION(self,"no self"); + +- self->GetInterfaceInfo(&iface_info); +- NS_ASSERTION(iface_info,"no interface info"); +- +- iface_info->GetMethodInfo(uint16_t(methodIndex), &info); +- NS_ASSERTION(info,"no interface info"); ++ self->mEntry->GetMethodInfo(uint16_t(methodIndex), &info); ++ NS_ASSERTION(info,"no method info"); ++ if (!info) ++ return NS_ERROR_UNEXPECTED; + + paramCount = info->GetParamCount(); + + // setup variant array pointer +@@ -79,11 +78,9 @@ + break; + } + } + +- result = self->CallMethod((uint16_t)methodIndex, info, dispatchParams); +- +- NS_RELEASE(iface_info); ++ result = self->mOuter->CallMethod((uint16_t)methodIndex, info, dispatchParams); + + if(dispatchParams != paramBuffer) + delete [] dispatchParams; + Index: pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcstubs_ppc_linux.cpp diff -u /dev/null pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcstubs_ppc_linux.cpp:1.1 --- /dev/null Sun May 1 00:36:11 2022 +++ pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcstubs_ppc_linux.cpp Sun May 1 00:36:11 2022 @@ -0,0 +1,20 @@ +$NetBSD: patch-xpcom_reflect_xptcall_md_unix_xptcstubs_ppc_linux.cpp,v 1.1 2022/05/01 00:36:11 manu Exp $ + +Update to fit current code + +--- xpcom/reflect/xptcall/md/unix/xptcstubs_ppc_linux.cpp.orig 2022-04-18 02:30:50.539220748 +0000 ++++ xpcom/reflect/xptcall/md/unix/xptcstubs_ppc_linux.cpp 2022-04-18 01:42:03.669133784 +0000 +@@ -48,8 +48,13 @@ + NS_ASSERTION(self,"no self"); + + self->mEntry->GetMethodInfo(uint16_t(methodIndex), &info); + NS_ASSERTION(info,"no method info"); ++ if (!info) ++ return NS_ERROR_UNEXPECTED; ++ ++ iface_info->GetMethodInfo(uint16_t(methodIndex), &info); ++ NS_ASSERTION(info,"no method info"); + if (! info) + return NS_ERROR_UNEXPECTED; + + paramCount = info->GetParamCount(); Index: pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcstubs_ppc_netbsd.cpp diff -u /dev/null pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcstubs_ppc_netbsd.cpp:1.1 --- /dev/null Sun May 1 00:36:11 2022 +++ pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcstubs_ppc_netbsd.cpp Sun May 1 00:36:11 2022 @@ -0,0 +1,57 @@ +$NetBSD: patch-xpcom_reflect_xptcall_md_unix_xptcstubs_ppc_netbsd.cpp,v 1.1 2022/05/01 00:36:11 manu Exp $ + +Update to fit current code + +--- xpcom/reflect/xptcall/md/unix/xptcstubs_ppc_netbsd.cpp.orig 2022-04-18 02:30:50.549401901 +0000 ++++ xpcom/reflect/xptcall/md/unix/xptcstubs_ppc_netbsd.cpp 2022-04-18 01:58:29.047568136 +0000 +@@ -5,8 +5,9 @@ + + // Implement shared vtbl methods. + + #include "xptcprivate.h" ++#include "xptiprivate.h" + + // The Linux/PPC ABI (aka PPC/SYSV ABI) passes the first 8 integral + // parameters and the first 8 floating point parameters in registers + // (r3-r10 and f1-f8), no stack space is allocated for these by the +@@ -35,24 +36,18 @@ + double *fprData) + { + nsXPTCMiniVariant paramBuffer[PARAM_BUFFER_COUNT]; + nsXPTCMiniVariant* dispatchParams = nullptr; +- nsIInterfaceInfo* iface_info = nullptr; +- const nsXPTMethodInfo* info; ++ const nsXPTMethodInfo* info = nullptr; + uint32_t paramCount; + uint32_t i; + nsresult result = NS_ERROR_FAILURE; + + NS_ASSERTION(self,"no self"); + +- self->GetInterfaceInfo(&iface_info); +- NS_ASSERTION(iface_info,"no interface info"); +- if (! iface_info) +- return NS_ERROR_UNEXPECTED; +- +- iface_info->GetMethodInfo(uint16_t(methodIndex), &info); ++ self->mEntry->GetMethodInfo(uint16_t(methodIndex), &info); + NS_ASSERTION(info,"no method info"); +- if (! info) ++ if (!info) + return NS_ERROR_UNEXPECTED; + + paramCount = info->GetParamCount(); + +@@ -143,11 +138,9 @@ + break; + } + } + +- result = self->CallMethod((uint16_t) methodIndex, info, dispatchParams); +- +- NS_RELEASE(iface_info); ++ result = self->mOuter->CallMethod((uint16_t) methodIndex, info, dispatchParams); + + if (dispatchParams != paramBuffer) + delete [] dispatchParams; + Index: pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcstubs_sparc_netbsd.cpp diff -u /dev/null pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcstubs_sparc_netbsd.cpp:1.1 --- /dev/null Sun May 1 00:36:11 2022 +++ pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcstubs_sparc_netbsd.cpp Sun May 1 00:36:11 2022 @@ -0,0 +1,56 @@ +$NetBSD: patch-xpcom_reflect_xptcall_md_unix_xptcstubs_sparc_netbsd.cpp,v 1.1 2022/05/01 00:36:11 manu Exp $ + +Update to fit current code + +--- xpcom/reflect/xptcall/md/unix/xptcstubs_sparc_netbsd.cpp.orig 2022-04-18 02:30:50.559501293 +0000 ++++ xpcom/reflect/xptcall/md/unix/xptcstubs_sparc_netbsd.cpp 2022-04-18 01:58:41.453538297 +0000 +@@ -5,8 +5,9 @@ + + /* Implement shared vtbl methods. */ + + #include "xptcprivate.h" ++#include "xptiprivate.h" + + #if defined(sparc) || defined(__sparc__) + + extern "C" nsresult ATTRIBUTE_USED +@@ -22,21 +23,19 @@ + #define PARAM_BUFFER_COUNT 16 + + nsXPTCMiniVariant paramBuffer[PARAM_BUFFER_COUNT]; + nsXPTCMiniVariant* dispatchParams = nullptr; +- nsIInterfaceInfo* iface_info = nullptr; +- const nsXPTMethodInfo* info; ++ const nsXPTMethodInfo* info = nullptr; + uint8_t paramCount; + uint8_t i; + nsresult result = NS_ERROR_FAILURE; + + NS_ASSERTION(self,"no self"); + +- self->GetInterfaceInfo(&iface_info); +- NS_ASSERTION(iface_info,"no interface info"); +- +- iface_info->GetMethodInfo(uint16_t(methodIndex), &info); +- NS_ASSERTION(info,"no interface info"); ++ self->mEntry->GetMethodInfo(uint16_t(methodIndex), &info); ++ NS_ASSERTION(info,"no method info"); ++ if (!info) ++ return NS_ERROR_UNEXPECTED; + + paramCount = info->GetParamCount(); + + // setup variant array pointer +@@ -82,11 +81,9 @@ + break; + } + } + +- result = self->CallMethod((uint16_t)methodIndex, info, dispatchParams); +- +- NS_RELEASE(iface_info); ++ result = self->oMouter->CallMethod((uint16_t)methodIndex, info, dispatchParams); + + if(dispatchParams != paramBuffer) + delete [] dispatchParams; + Index: pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcstubs_sparc_openbsd.cpp diff -u /dev/null pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcstubs_sparc_openbsd.cpp:1.1 --- /dev/null Sun May 1 00:36:11 2022 +++ pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_md_unix_xptcstubs_sparc_openbsd.cpp Sun May 1 00:36:11 2022 @@ -0,0 +1,56 @@ +$NetBSD: patch-xpcom_reflect_xptcall_md_unix_xptcstubs_sparc_openbsd.cpp,v 1.1 2022/05/01 00:36:11 manu Exp $ + +Update to fit current code + +--- xpcom/reflect/xptcall/md/unix/xptcstubs_sparc_openbsd.cpp.orig 2022-04-18 02:30:50.569629711 +0000 ++++ xpcom/reflect/xptcall/md/unix/xptcstubs_sparc_openbsd.cpp 2022-04-18 01:58:53.309449484 +0000 +@@ -5,8 +5,9 @@ + + /* Implement shared vtbl methods. */ + + #include "xptcprivate.h" ++#include "xptiprivate.h" + + #if defined(sparc) || defined(__sparc__) + + extern "C" nsresult ATTRIBUTE_USED +@@ -22,21 +23,19 @@ + #define PARAM_BUFFER_COUNT 16 + + nsXPTCMiniVariant paramBuffer[PARAM_BUFFER_COUNT]; + nsXPTCMiniVariant* dispatchParams = nullptr; +- nsIInterfaceInfo* iface_info = nullptr; +- const nsXPTMethodInfo* info; ++ const nsXPTMethodInfo* info = nullptr; + uint8_t paramCount; + uint8_t i; + nsresult result = NS_ERROR_FAILURE; + + NS_ASSERTION(self,"no self"); + +- self->GetInterfaceInfo(&iface_info); +- NS_ASSERTION(iface_info,"no interface info"); +- +- iface_info->GetMethodInfo(uint16_t(methodIndex), &info); +- NS_ASSERTION(info,"no interface info"); ++ self->mEntry->GetMethodInfo(uint16_t(methodIndex), &info); ++ NS_ASSERTION(info,"no method info"); ++ if (!info) ++ return NS_ERROR_UNEXPECTED; + + paramCount = info->GetParamCount(); + + // setup variant array pointer +@@ -85,11 +84,9 @@ + break; + } + } + +- result = self->CallMethod((uint16_t)methodIndex, info, dispatchParams); +- +- NS_RELEASE(iface_info); ++ result = self->mOuter->CallMethod((uint16_t)methodIndex, info, dispatchParams); + + if(dispatchParams != paramBuffer) + delete [] dispatchParams; + Index: pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_xptcprivate.h diff -u /dev/null pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_xptcprivate.h:1.1 --- /dev/null Sun May 1 00:36:11 2022 +++ pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_xptcprivate.h Sun May 1 00:36:11 2022 @@ -0,0 +1,29 @@ +$NetBSD: patch-xpcom_reflect_xptcall_xptcprivate.h,v 1.1 2022/05/01 00:36:11 manu Exp $ + +Bring NetBSD in line with other BSDs. +Not sure abut the impact, but there is no reason to single it out + +--- xpcom/reflect/xptcall/xptcprivate.h.orig 2022-04-18 02:30:50.579699047 +0000 ++++ xpcom/reflect/xptcall/xptcprivate.h 2022-04-17 05:04:46.979926191 +0000 +@@ -13,9 +13,9 @@ + #include "mozilla/Attributes.h" + + class xptiInterfaceEntry; + +-#if !defined(__ia64) || (!defined(__hpux) && !defined(__linux__) && !defined(__FreeBSD__)) ++#if !defined(__ia64) || (!defined(__hpux) && !defined(__linux__) && !defined(__FreeBSD__) && !defined(__NetBSD__)) + #define STUB_ENTRY(n) NS_IMETHOD Stub##n() = 0; + #else + #define STUB_ENTRY(n) NS_IMETHOD Stub##n(uint64_t,uint64_t,uint64_t,uint64_t,uint64_t,uint64_t,uint64_t,uint64_t) = 0; + #endif +@@ -30,9 +30,9 @@ + + #undef STUB_ENTRY + #undef SENTINEL_ENTRY + +-#if !defined(__ia64) || (!defined(__hpux) && !defined(__linux__) && !defined(__FreeBSD__)) ++#if !defined(__ia64) || (!defined(__hpux) && !defined(__linux__) && !defined(__FreeBSD__) && !defined(__NetBSD__)) + #define STUB_ENTRY(n) NS_IMETHOD Stub##n() override; + #else + #define STUB_ENTRY(n) NS_IMETHOD Stub##n(uint64_t,uint64_t,uint64_t,uint64_t,uint64_t,uint64_t,uint64_t,uint64_t) override; + #endif Index: pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_xptcstubsdecl.inc diff -u /dev/null pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_xptcstubsdecl.inc:1.1 --- /dev/null Sun May 1 00:36:11 2022 +++ pkgsrc/www/arcticfox/patches/patch-xpcom_reflect_xptcall_xptcstubsdecl.inc Sun May 1 00:36:11 2022 @@ -0,0 +1,18 @@ +$NetBSD: patch-xpcom_reflect_xptcall_xptcstubsdecl.inc,v 1.1 2022/05/01 00:36:11 manu Exp $ + +Bring NetBSD in line with other BSDs. +Not sure abut the impact, but there is no reason to single it out + +--- xpcom/reflect/xptcall/xptcstubsdecl.inc.orig 2022-04-18 02:30:50.590253192 +0000 ++++ xpcom/reflect/xptcall/xptcstubsdecl.inc 2022-04-17 07:00:09.391086988 +0000 +@@ -7,9 +7,9 @@ + * 0 is QueryInterface + * 1 is AddRef + * 2 is Release + */ +-#if !defined(__ia64) || (!defined(__hpux) && !defined(__linux__) && !defined(__FreeBSD__)) ++#if !defined(__ia64) || (!defined(__hpux) && !defined(__linux__) && !defined(__FreeBSD__) || !defined(__NetBSD__)) + NS_IMETHOD Stub3(); + NS_IMETHOD Stub4(); + NS_IMETHOD Stub5(); + NS_IMETHOD Stub6(); --_----------=_165136537117550--