Index: head/www/waterfox/Makefile =================================================================== --- head/www/waterfox/Makefile (revision 458150) +++ head/www/waterfox/Makefile (revision 458151) @@ -1,74 +1,73 @@ # $FreeBSD$ PORTNAME= waterfox -DISTVERSION= 56.0.1.s20180105 +DISTVERSION= 56.0.2 CATEGORIES= www ipv6 MAINTAINER= jbeich@FreeBSD.org COMMENT= Distilled fork of Firefox DEPRECATED= Temporary experiment EXPIRATION_DATE=2018-01-30 BUILD_DEPENDS= nspr>=4.16:devel/nspr \ nss>=3.32.1:security/nss \ icu>=59.1,1:devel/icu \ libevent>=2.1.8:devel/libevent \ harfbuzz>=1.4.7:print/harfbuzz \ graphite2>=1.3.10:graphics/graphite2 \ png>=1.6.31:graphics/png \ libvorbis>=1.3.5,3:audio/libvorbis \ libvpx>=1.5.0:multimedia/libvpx \ sqlite3>=3.19.3:databases/sqlite3 \ ${PYTHON_PKGNAMEPREFIX}sqlite3>0:databases/py-sqlite3@${PY_FLAVOR} \ v4l_compat>0:multimedia/v4l_compat \ autoconf-2.13:devel/autoconf213 \ yasm:devel/yasm \ zip:archivers/zip # soundtouch>=1.9.0:audio/soundtouch \ LIB_DEPENDS= libv4l2.so:multimedia/libv4l USE_GITHUB= yes GH_ACCOUNT= MrAlex94 GH_PROJECT= Waterfox -GH_TAGNAME= 8f77aec80334 USE_GECKO= gecko MOZ_PKGCONFIG_FILES= # empty USE_MOZILLA= -soundtouch MOZILLA_NAME= Waterfox USE_GL= gl WATERFOX_ICON= ${MOZILLA}.png WATERFOX_ICON_SRC= ${PREFIX}/lib/${MOZILLA}/browser/chrome/icons/default/default256.png WATERFOX_DESKTOP= ${MOZSRC}/taskcluster/docker/firefox-snap/firefox.desktop MOZ_OPTIONS= --enable-application=browser \ --with-app-name=${MOZILLA} \ --with-app-basename=${MOZILLA_NAME} \ --with-distribution-id=org.${MOZILLA}project OPTIONS_DEFAULT= BUNDLED_CAIRO .include "${.CURDIR}/../../www/firefox/Makefile.options" post-patch: @${REINPLACE_CMD} -e 's/%u/%U/' -e '/X-MultipleArgs/d' \ -e 's/firefox/${MOZILLA}/' \ -e 's/Firefox/${MOZILLA_NAME}/' \ ${WATERFOX_DESKTOP} @${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|g' \ ${WRKSRC}/browser/app/nsBrowserApp.cpp pre-configure: (cd ${WRKSRC} && ${LOCALBASE}/bin/autoconf-2.13) (cd ${WRKSRC}/js/src/ && ${LOCALBASE}/bin/autoconf-2.13) post-install: ${INSTALL_DATA} ${WATERFOX_DESKTOP} \ ${STAGEDIR}${PREFIX}/share/applications/${MOZILLA}.desktop ${MKDIR} ${STAGEDIR}${PREFIX}/share/pixmaps ${LN} -sf ${WATERFOX_ICON_SRC} ${STAGEDIR}${PREFIX}/share/pixmaps/${WATERFOX_ICON} .include Index: head/www/waterfox/distinfo =================================================================== --- head/www/waterfox/distinfo (revision 458150) +++ head/www/waterfox/distinfo (revision 458151) @@ -1,3 +1,3 @@ -TIMESTAMP = 1515156365 -SHA256 (MrAlex94-Waterfox-56.0.1.s20180105-8f77aec80334_GH0.tar.gz) = 768076eb2d68249a5c13ec51a858e84115a83fcf24795ec5833ca96aa582cd00 -SIZE (MrAlex94-Waterfox-56.0.1.s20180105-8f77aec80334_GH0.tar.gz) = 394200633 +TIMESTAMP = 1515165188 +SHA256 (MrAlex94-Waterfox-56.0.2_GH0.tar.gz) = edb392795c8ce3658a9c4e7874424548f0091ea45ca0a36bd587be484c335111 +SIZE (MrAlex94-Waterfox-56.0.2_GH0.tar.gz) = 394203963 Index: head/www/waterfox/files/patch-bug1386957 =================================================================== --- head/www/waterfox/files/patch-bug1386957 (revision 458150) +++ head/www/waterfox/files/patch-bug1386957 (nonexistent) @@ -1,14 +0,0 @@ -https://github.com/kinetiknz/cubeb/commit/16f9ccc064f2 - ---- media/libcubeb/src/cubeb_jack.cpp.orig 2017-07-07 05:37:16 UTC -+++ media/libcubeb/src/cubeb_jack.cpp -@@ -8,7 +8,9 @@ - */ - #define _DEFAULT_SOURCE - #define _BSD_SOURCE -+#ifndef __FreeBSD__ - #define _POSIX_SOURCE -+#endif - #include - #include - #include Property changes on: head/www/waterfox/files/patch-bug1386957 ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/www/waterfox/files/patch-bug1412420 =================================================================== --- head/www/waterfox/files/patch-bug1412420 (nonexistent) +++ head/www/waterfox/files/patch-bug1412420 (revision 458151) @@ -0,0 +1,284 @@ +commit c3b597795e95 +Author: Jan de Mooij +Date: Sat Dec 16 16:22:13 2017 -0600 + + Bug 1412420 - Ensure upper bits are zeroed when calling a function that returns int32. r=nbp a=ritu + + --HG-- + extra : source : 26d3df5b58fb60facb9057dc1e86576127c9e1f5 +--- + js/src/irregexp/NativeRegExpMacroAssembler.cpp | 4 ++-- + js/src/irregexp/RegExpStack.cpp | 2 +- + js/src/irregexp/RegExpStack.h | 2 +- + js/src/jit/CodeGenerator.cpp | 12 ++++++------ + js/src/jit/MacroAssembler-inl.h | 11 +++++++++++ + js/src/jit/MacroAssembler.cpp | 2 +- + js/src/jit/MacroAssembler.h | 3 ++- + js/src/jit/SharedIC.cpp | 16 ++++++++-------- + js/src/jit/shared/CodeGenerator-shared.h | 8 +++++--- + js/src/jit/x86/CodeGenerator-x86.cpp | 4 ++-- + 10 files changed, 39 insertions(+), 25 deletions(-) + +diff --git js/src/irregexp/NativeRegExpMacroAssembler.cpp js/src/irregexp/NativeRegExpMacroAssembler.cpp +index 004bb8e108f2..0c5743ea506b 100644 +--- js/src/irregexp/NativeRegExpMacroAssembler.cpp ++++ js/src/irregexp/NativeRegExpMacroAssembler.cpp +@@ -453,7 +453,7 @@ NativeRegExpMacroAssembler::GenerateCode(JSContext* cx, bool match_only) + masm.setupUnalignedABICall(temp0); + masm.passABIArg(temp1); + masm.callWithABI(JS_FUNC_TO_DATA_PTR(void*, GrowBacktrackStack)); +- masm.storeCallWordResult(temp0); ++ masm.storeCallBoolResult(temp0); + + masm.PopRegsInMask(volatileRegs); + +@@ -882,7 +882,7 @@ NativeRegExpMacroAssembler::CheckNotBackReferenceIgnoreCase(int start_reg, Label + int (*fun)(const char16_t*, const char16_t*, size_t) = CaseInsensitiveCompareUCStrings; + masm.callWithABI(JS_FUNC_TO_DATA_PTR(void*, fun)); + } +- masm.storeCallWordResult(temp0); ++ masm.storeCallInt32Result(temp0); + + masm.PopRegsInMask(volatileRegs); + +diff --git js/src/irregexp/RegExpStack.cpp js/src/irregexp/RegExpStack.cpp +index 7ea47149ed40..15008ccd7b9b 100644 +--- js/src/irregexp/RegExpStack.cpp ++++ js/src/irregexp/RegExpStack.cpp +@@ -44,7 +44,7 @@ RegExpStackScope::~RegExpStackScope() + regexp_stack->reset(); + } + +-int ++bool + irregexp::GrowBacktrackStack(JSRuntime* rt) + { + AutoUnsafeCallWithABI unsafe; +diff --git js/src/irregexp/RegExpStack.h js/src/irregexp/RegExpStack.h +index da81567a11b6..c92666f2427a 100644 +--- js/src/irregexp/RegExpStack.h ++++ js/src/irregexp/RegExpStack.h +@@ -114,7 +114,7 @@ class RegExpStack + } + }; + +-int ++bool + GrowBacktrackStack(JSRuntime* rt); + + }} // namespace js::irregexp +diff --git js/src/jit/CodeGenerator.cpp js/src/jit/CodeGenerator.cpp +index 22c0a3163232..4befbdc285db 100644 +--- js/src/jit/CodeGenerator.cpp ++++ js/src/jit/CodeGenerator.cpp +@@ -1640,7 +1640,7 @@ CreateDependentString::generateFallback(MacroAssembler& masm, LiveRegisterSet re + masm.callWithABI(kind == FallbackKind::FatInlineString + ? JS_FUNC_TO_DATA_PTR(void*, AllocateFatInlineString) + : JS_FUNC_TO_DATA_PTR(void*, AllocateString)); +- masm.storeCallWordResult(string_); ++ masm.storeCallPointerResult(string_); + + masm.PopRegsInMask(regsToSave); + +@@ -1679,7 +1679,7 @@ CreateMatchResultFallback(MacroAssembler& masm, LiveRegisterSet regsToSave, + masm.move32(Imm32(int32_t(templateObj->as().numDynamicSlots())), temp5); + masm.passABIArg(temp5); + masm.callWithABI(JS_FUNC_TO_DATA_PTR(void*, CreateMatchResultFallbackFunc)); +- masm.storeCallWordResult(object); ++ masm.storeCallPointerResult(object); + + masm.PopRegsInMask(regsToSave); + +@@ -7976,7 +7976,7 @@ JitRuntime::generateMallocStub(JSContext* cx) + masm.passABIArg(regZone); + masm.passABIArg(regNBytes); + masm.callWithABI(JS_FUNC_TO_DATA_PTR(void*, MallocWrapper)); +- masm.storeCallWordResult(regReturn); ++ masm.storeCallPointerResult(regReturn); + + masm.PopRegsInMask(save); + masm.ret(); +@@ -9445,7 +9445,7 @@ CodeGenerator::emitRest(LInstruction* lir, Register array, Register numActuals, + callVM(InitRestParameterInfo, lir); + + if (saveAndRestore) { +- storeResultTo(resultreg); ++ storePointerResultTo(resultreg); + restoreLive(lir); + } + } +@@ -10682,8 +10682,8 @@ CodeGenerator::visitOutOfLineTypeOfV(OutOfLineTypeOfV* ool) + masm.passABIArg(obj); + masm.movePtr(ImmPtr(gen->runtime), output); + masm.passABIArg(output); +- masm.callWithABI(JS_FUNC_TO_DATA_PTR(void*, TypeOfObject)); +- masm.storeCallWordResult(output); ++ masm.callWithABI(JS_FUNC_TO_DATA_PTR(void*, jit::TypeOfObject)); ++ masm.storeCallPointerResult(output); + restoreVolatile(output); + + masm.jump(ool->rejoin()); +diff --git js/src/jit/MacroAssembler-inl.h js/src/jit/MacroAssembler-inl.h +index 9d0acbfb4002..a1f9716e1329 100644 +--- js/src/jit/MacroAssembler-inl.h ++++ js/src/jit/MacroAssembler-inl.h +@@ -831,6 +831,17 @@ MacroAssembler::storeCallBoolResult(Register reg) + and32(Imm32(0xFF), reg); + } + ++void ++MacroAssembler::storeCallInt32Result(Register reg) ++{ ++#if JS_BITS_PER_WORD == 32 ++ storeCallPointerResult(reg); ++#else ++ // Ensure the upper 32 bits are cleared. ++ move32(ReturnReg, reg); ++#endif ++} ++ + void + MacroAssembler::storeCallResultValue(AnyRegister dest) + { +diff --git js/src/jit/MacroAssembler.cpp js/src/jit/MacroAssembler.cpp +index 0863dd980e93..25c284324bfe 100644 +--- js/src/jit/MacroAssembler.cpp ++++ js/src/jit/MacroAssembler.cpp +@@ -2117,7 +2117,7 @@ MacroAssembler::outOfLineTruncateSlow(FloatRegister src, Register dest, bool wid + callWithABI(mozilla::BitwiseCast(JS::ToInt32), + MoveOp::GENERAL, CheckUnsafeCallWithABI::DontCheckOther); + } +- storeCallWordResult(dest); ++ storeCallInt32Result(dest); + + #if defined(JS_CODEGEN_ARM) || defined(JS_CODEGEN_ARM64) || \ + defined(JS_CODEGEN_MIPS32) || defined(JS_CODEGEN_MIPS64) +diff --git js/src/jit/MacroAssembler.h js/src/jit/MacroAssembler.h +index e353c5aa10f5..2c8b005b7008 100644 +--- js/src/jit/MacroAssembler.h ++++ js/src/jit/MacroAssembler.h +@@ -1630,12 +1630,13 @@ class MacroAssembler : public MacroAssemblerSpecific + storeTypedOrValue(src.reg(), dest); + } + +- void storeCallWordResult(Register reg) { ++ void storeCallPointerResult(Register reg) { + if (reg != ReturnReg) + mov(ReturnReg, reg); + } + + inline void storeCallBoolResult(Register reg); ++ inline void storeCallInt32Result(Register reg); + + void storeCallFloatResult(FloatRegister reg) { + if (reg != ReturnDoubleReg) +diff --git js/src/jit/SharedIC.cpp js/src/jit/SharedIC.cpp +index 0c8be36a592d..1f88cc93176d 100644 +--- js/src/jit/SharedIC.cpp ++++ js/src/jit/SharedIC.cpp +@@ -1145,19 +1145,19 @@ ICBinaryArith_BooleanWithInt32::Compiler::generateStubCode(MacroAssembler& masm) + break; + } + case JSOP_BITOR: { +- masm.orPtr(rhsReg, lhsReg); ++ masm.or32(rhsReg, lhsReg); + masm.tagValue(JSVAL_TYPE_INT32, lhsReg, R0); + EmitReturnFromIC(masm); + break; + } + case JSOP_BITXOR: { +- masm.xorPtr(rhsReg, lhsReg); ++ masm.xor32(rhsReg, lhsReg); + masm.tagValue(JSVAL_TYPE_INT32, lhsReg, R0); + EmitReturnFromIC(masm); + break; + } + case JSOP_BITAND: { +- masm.andPtr(rhsReg, lhsReg); ++ masm.and32(rhsReg, lhsReg); + masm.tagValue(JSVAL_TYPE_INT32, lhsReg, R0); + EmitReturnFromIC(masm); + break; +@@ -1206,7 +1206,7 @@ ICBinaryArith_DoubleWithInt32::Compiler::generateStubCode(MacroAssembler& masm) + masm.setupUnalignedABICall(scratchReg); + masm.passABIArg(FloatReg0, MoveOp::DOUBLE); + masm.callWithABI(mozilla::BitwiseCast(JS::ToInt32)); +- masm.storeCallWordResult(scratchReg); ++ masm.storeCallInt32Result(scratchReg); + masm.pop(intReg); + + masm.bind(&doneTruncate); +@@ -1216,13 +1216,13 @@ ICBinaryArith_DoubleWithInt32::Compiler::generateStubCode(MacroAssembler& masm) + // All handled ops commute, so no need to worry about ordering. + switch(op) { + case JSOP_BITOR: +- masm.orPtr(intReg, intReg2); ++ masm.or32(intReg, intReg2); + break; + case JSOP_BITXOR: +- masm.xorPtr(intReg, intReg2); ++ masm.xor32(intReg, intReg2); + break; + case JSOP_BITAND: +- masm.andPtr(intReg, intReg2); ++ masm.and32(intReg, intReg2); + break; + default: + MOZ_CRASH("Unhandled op for BinaryArith_DoubleWithInt32."); +@@ -1359,7 +1359,7 @@ ICUnaryArith_Double::Compiler::generateStubCode(MacroAssembler& masm) + masm.setupUnalignedABICall(scratchReg); + masm.passABIArg(FloatReg0, MoveOp::DOUBLE); + masm.callWithABI(BitwiseCast(JS::ToInt32)); +- masm.storeCallWordResult(scratchReg); ++ masm.storeCallInt32Result(scratchReg); + + masm.bind(&doneTruncate); + masm.not32(scratchReg); +diff --git js/src/jit/shared/CodeGenerator-shared.h js/src/jit/shared/CodeGenerator-shared.h +index d75572dac0a6..48b2b4d8561c 100644 +--- js/src/jit/shared/CodeGenerator-shared.h ++++ js/src/jit/shared/CodeGenerator-shared.h +@@ -454,8 +454,8 @@ class CodeGeneratorShared : public LElementVisitor + return masm.PushWithPatch(t); + } + +- void storeResultTo(Register reg) { +- masm.storeCallWordResult(reg); ++ void storePointerResultTo(Register reg) { ++ masm.storeCallPointerResult(reg); + } + + void storeFloatResultTo(FloatRegister reg) { +@@ -725,7 +725,9 @@ class StoreRegisterTo + { } + + inline void generate(CodeGeneratorShared* codegen) const { +- codegen->storeResultTo(out_); ++ // It's okay to use storePointerResultTo here - the VMFunction wrapper ++ // ensures the upper bytes are zero for bool/int32 return values. ++ codegen->storePointerResultTo(out_); + } + inline LiveRegisterSet clobbered() const { + LiveRegisterSet set; +diff --git js/src/jit/x86/CodeGenerator-x86.cpp js/src/jit/x86/CodeGenerator-x86.cpp +index e2f80c4ac8fc..fe358c370baf 100644 +--- js/src/jit/x86/CodeGenerator-x86.cpp ++++ js/src/jit/x86/CodeGenerator-x86.cpp +@@ -747,7 +747,7 @@ CodeGeneratorX86::visitOutOfLineTruncate(OutOfLineTruncate* ool) + masm.callWithABI(BitwiseCast(JS::ToInt32), MoveOp::GENERAL, + CheckUnsafeCallWithABI::DontCheckOther); + } +- masm.storeCallWordResult(output); ++ masm.storeCallInt32Result(output); + + restoreVolatile(output); + } +@@ -839,7 +839,7 @@ CodeGeneratorX86::visitOutOfLineTruncateFloat32(OutOfLineTruncateFloat32* ool) + CheckUnsafeCallWithABI::DontCheckOther); + } + +- masm.storeCallWordResult(output); ++ masm.storeCallInt32Result(output); + masm.Pop(input); + + restoreVolatile(output); Property changes on: head/www/waterfox/files/patch-bug1412420 ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/www/waterfox/files/patch-typos =================================================================== --- head/www/waterfox/files/patch-typos (revision 458150) +++ head/www/waterfox/files/patch-typos (revision 458151) @@ -1,22 +1,30 @@ Mismerges found by comparing changes with Firefox 56 --- dom/base/nsNodeUtils.cpp.orig +++ dom/base/nsNodeUtils.cpp @@ -589,6 +589,7 @@ nsNodeUtils::CloneAndAdopt(nsINode *aNode, bool aClone, bool aDeep, if (wasRegistered) { aNode->OwnerDoc()->UnregisterActivityObserver(aNode->AsElement()); } + aNode->mNodeInfo.swap(newNodeInfo); if (elem) { elem->NodeInfoChanged(newDoc); } +--- media/libcubeb/src/moz.build ++++ media/libcubeb/src/moz.build +@@ -89,4 +89,4 @@ CFLAGS += CONFIG['MOZ_ALSA_CFLAGS'] + CFLAGS += CONFIG['MOZ_PULSEAUDIO_CFLAGS'] + + # We allow warnings for third-party code that can be updated from upstream. +-AllowCompilerWarnings() ++ALLOW_COMPILER_WARNINGS = True --- security/nss/lib/softoken/softkver.h.orig +++ security/nss/lib/softoken/softkver.h @@ -26,6 +26,6 @@ #define SOFTOKEN_VMINOR 32 #define SOFTOKEN_VPATCH 1 #define SOFTOKEN_VBUILD 0 -#define SOFTOKEN_BETA PR_TRUE +#define SOFTOKEN_BETA PR_FALSE #endif /* _SOFTKVER_H_ */