Date: Sun, 6 Mar 2022 16:03:11 GMT From: Alexey Dokuchaev <danfe@FreeBSD.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org Subject: git: edec08c56b94 - main - www/webkit2-gtk3: unbreak the build with GSTREAMER option turned off. Message-ID: <202203061603.226G3Bdu039159@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch main has been updated by danfe: URL: https://cgit.FreeBSD.org/ports/commit/?id=edec08c56b941eb5856a374b7a07151e147d31e3 commit edec08c56b941eb5856a374b7a07151e147d31e3 Author: Alexey Dokuchaev <danfe@FreeBSD.org> AuthorDate: 2022-03-06 16:02:10 +0000 Commit: Alexey Dokuchaev <danfe@FreeBSD.org> CommitDate: 2022-03-06 16:02:10 +0000 www/webkit2-gtk3: unbreak the build with GSTREAMER option turned off. --- www/webkit2-gtk3/Makefile | 2 - www/webkit2-gtk3/files/extra-patch-guard-video | 33 -- .../files/extra-patch-revert-7c0f13f37ec5 | 342 --------------------- .../patch-Source_WebCore_platform_PlatformScreen.h | 15 + 4 files changed, 15 insertions(+), 377 deletions(-) diff --git a/www/webkit2-gtk3/Makefile b/www/webkit2-gtk3/Makefile index 5d7c3bbb1a75..12411ec968a0 100644 --- a/www/webkit2-gtk3/Makefile +++ b/www/webkit2-gtk3/Makefile @@ -89,8 +89,6 @@ GEOIP_CMAKE_BOOL= ENABLE_GEOLOCATION GEOIP_BUILD_DEPENDS= geoclue>=2.4.3:net/geoclue GEOIP_RUN_DEPENDS= geoclue>=2.4.3:net/geoclue -GSTREAMER_EXTRA_PATCHES_OFF= ${PATCHDIR}/extra-patch-revert-7c0f13f37ec5 \ - ${PATCHDIR}/extra-patch-guard-video GSTREAMER_USE= GSTREAMER1=bad,gl GSTREAMER_CMAKE_BOOL= ENABLE_VIDEO ENABLE_WEB_AUDIO diff --git a/www/webkit2-gtk3/files/extra-patch-guard-video b/www/webkit2-gtk3/files/extra-patch-guard-video deleted file mode 100644 index c5c57f89deaa..000000000000 --- a/www/webkit2-gtk3/files/extra-patch-guard-video +++ /dev/null @@ -1,33 +0,0 @@ -Regressed by: https://github.com/WebKit/WebKit/commit/b87d5003f832 - -In file included from /wrkdirs/usr/ports/www/webkit2-gtk3/work/.build/WebCore/DerivedSources/unified-sources/UnifiedSource-3c72abbe-19.cpp:6: -/wrkdirs/usr/ports/www/webkit2-gtk3/work/webkitgtk-2.34.0/Source/WebCore/platform/graphics/BifurcatedGraphicsContext.cpp:272:33: error: out-of-line definition of 'paintFrameForMedia' does not match any declaration in 'WebCore::BifurcatedGraphicsContext' -void BifurcatedGraphicsContext::paintFrameForMedia(MediaPlayer& player, const FloatRect& destination) - ^~~~~~~~~~~~~~~~~~ -/wrkdirs/usr/ports/www/webkit2-gtk3/work/webkitgtk-2.34.0/Source/WebCore/platform/graphics/BifurcatedGraphicsContext.cpp:274:22: error: no member named 'paintFrameForMedia' in 'WebCore::GraphicsContext' - m_primaryContext.paintFrameForMedia(player, destination); - ~~~~~~~~~~~~~~~~ ^ -/wrkdirs/usr/ports/www/webkit2-gtk3/work/webkitgtk-2.34.0/Source/WebCore/platform/graphics/BifurcatedGraphicsContext.cpp:275:24: error: no member named 'paintFrameForMedia' in 'WebCore:: -GraphicsContext' - m_secondaryContext.paintFrameForMedia(player, destination); - ~~~~~~~~~~~~~~~~~~ ^ -3 errors generated. - -diff --git Source/WebCore/platform/graphics/BifurcatedGraphicsContext.cpp Source/WebCore/platform/graphics/BifurcatedGraphicsContext.cpp -index c0ce72c..a2a58df 100644 ---- Source/WebCore/platform/graphics/BifurcatedGraphicsContext.cpp -+++ Source/WebCore/platform/graphics/BifurcatedGraphicsContext.cpp -@@ -269,11 +269,13 @@ void BifurcatedGraphicsContext::drawPattern(NativeImage& nativeImage, const Floa - m_secondaryContext.drawPattern(nativeImage, imageSize, destRect, tileRect, patternTransform, phase, spacing, options); - } - -+#if ENABLE(VIDEO) - void BifurcatedGraphicsContext::paintFrameForMedia(MediaPlayer& player, const FloatRect& destination) - { - m_primaryContext.paintFrameForMedia(player, destination); - m_secondaryContext.paintFrameForMedia(player, destination); - } -+#endif - - void BifurcatedGraphicsContext::scale(const FloatSize& scale) - { diff --git a/www/webkit2-gtk3/files/extra-patch-revert-7c0f13f37ec5 b/www/webkit2-gtk3/files/extra-patch-revert-7c0f13f37ec5 deleted file mode 100644 index 3edc984616c5..000000000000 --- a/www/webkit2-gtk3/files/extra-patch-revert-7c0f13f37ec5 +++ /dev/null @@ -1,342 +0,0 @@ -GSTREAMER=off regressed by: https://github.com/WebKit/WebKit/commit/7c0f13f37ec: -+ partly revert https://github.com/WebKit/WebKit/commit/eb3ebb4849987 -(Source/WebCore/accessibility/AXObjectCache.cpp: remove #include "AXImage.h") - -/wrkdirs/usr/ports/www/webkit2-gtk3/work/.build/WTF/Headers/wtf/TypeCasts.h:41:9: error: static_assert failed due to requirement 'std::is_void_v<const WebCore::HTMLMediaElement>' "Missing TypeCastTraits specialization" - static_assert(std::is_void_v<ExpectedType>, "Missing TypeCastTraits specialization"); - ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -/wrkdirs/usr/ports/www/webkit2-gtk3/work/.build/WTF/Headers/wtf/TypeCasts.h:65:73: note: in instantiation of member function 'WTF::TypeCastTraits<const WebCore::HTMLMediaElement, const WebCore::Node, false>::isOfType' requested here - return source && TypeCastTraits<const ExpectedType, const ArgType>::isOfType(*source); - ^ -/wrkdirs/usr/ports/www/webkit2-gtk3/work/webkitgtk-2.34.0/Source/WebCore/accessibility/AXObjectCache.cpp:532:9: note: in instantiation of function template specialization 'WTF::is<WebCore::HTMLMediaElement, WebCore::Node>' requested here - if (is<HTMLMediaElement>(node)) - -diff --git Source/WebCore/Sources.txt Source/WebCore/Sources.txt -index 24c515c..043f534 100644 ---- Source/WebCore/Sources.txt -+++ Source/WebCore/Sources.txt -@@ -364,7 +364,6 @@ Modules/webxr/XRInputSourceEvent.cpp @no-unify - Modules/webxr/XRInputSourcesChangeEvent.cpp @no-unify - Modules/webxr/XRReferenceSpaceEvent.cpp @no-unify - Modules/webxr/XRSessionEvent.cpp @no-unify --accessibility/AXImage.cpp - accessibility/AXLogger.cpp - accessibility/AXObjectCache.cpp - accessibility/AccessibilityARIAGrid.cpp -diff --git Source/WebCore/accessibility/AXImage.cpp Source/WebCore/accessibility/AXImage.cpp -deleted file mode 100644 -index d7226f2..0000000 ---- Source/WebCore/accessibility/AXImage.cpp -+++ /dev/null -@@ -1,86 +0,0 @@ --/* -- * Copyright (C) 2021 Apple Inc. All rights reserved. -- * -- * Redistribution and use in source and binary forms, with or without -- * modification, are permitted provided that the following conditions -- * are met: -- * -- * 1. Redistributions of source code must retain the above copyright -- * notice, this list of conditions and the following disclaimer. -- * 2. Redistributions in binary form must reproduce the above copyright -- * notice, this list of conditions and the following disclaimer in the -- * documentation and/or other materials provided with the distribution. -- * 3. Neither the name of Apple Inc. ("Apple") nor the names of -- * its contributors may be used to endorse or promote products derived -- * from this software without specific prior written permission. -- * -- * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY -- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -- * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY -- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF -- * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- */ -- --#include "config.h" --#include "AXImage.h" -- --#include "AXLogger.h" --#include "Chrome.h" --#include "ChromeClient.h" -- --namespace WebCore { -- --AXImage::AXImage(RenderImage* renderer) -- : AccessibilityRenderObject(renderer) --{ --} -- --Ref<AXImage> AXImage::create(RenderImage* renderer) --{ -- return adoptRef(*new AXImage(renderer)); --} -- --AccessibilityRole AXImage::roleValue() const --{ -- auto ariaRole = ariaRoleAttribute(); -- if (ariaRole != AccessibilityRole::Unknown) -- return ariaRole; -- -- return AccessibilityRole::Image; --} -- --std::optional<AXCoreObject::AccessibilityChildrenVector> AXImage::imageOverlayElements() --{ -- AXTRACE("AXImage::imageOverlayElements"); -- -- auto& children = this->children(); -- if (children.size()) -- return children; -- --#if ENABLE(IMAGE_ANALYSIS) -- auto* page = this->page(); -- if (!page) -- return std::nullopt; -- -- auto* element = this->element(); -- if (!element) -- return std::nullopt; -- -- page->chrome().client().requestTextRecognition(*element, [] (RefPtr<Element>&& imageOverlayHost) { -- if (!imageOverlayHost) -- return; -- -- if (auto* axObjectCache = imageOverlayHost->document().existingAXObjectCache()) -- axObjectCache->postNotification(imageOverlayHost.get(), AXObjectCache::AXImageOverlayChanged); -- }); --#endif -- -- return std::nullopt; --} -- --} // namespace WebCore -diff --git Source/WebCore/accessibility/AXImage.h Source/WebCore/accessibility/AXImage.h -deleted file mode 100644 -index c2034d0..0000000 ---- Source/WebCore/accessibility/AXImage.h -+++ /dev/null -@@ -1,51 +0,0 @@ --/* -- * Copyright (C) 2021 Apple Inc. All rights reserved. -- * -- * Redistribution and use in source and binary forms, with or without -- * modification, are permitted provided that the following conditions -- * are met: -- * -- * 1. Redistributions of source code must retain the above copyright -- * notice, this list of conditions and the following disclaimer. -- * 2. Redistributions in binary form must reproduce the above copyright -- * notice, this list of conditions and the following disclaimer in the -- * documentation and/or other materials provided with the distribution. -- * 3. Neither the name of Apple Inc. ("Apple") nor the names of -- * its contributors may be used to endorse or promote products derived -- * from this software without specific prior written permission. -- * -- * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY -- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -- * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY -- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF -- * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- */ -- --#pragma once -- --#include "AccessibilityRenderObject.h" --#include "RenderImage.h" -- --namespace WebCore { -- --class AXImage : public AccessibilityRenderObject { --public: -- static Ref<AXImage> create(RenderImage*); -- virtual ~AXImage() = default; -- --private: -- explicit AXImage(RenderImage*); -- bool isAXImageInstance() const override { return true; } -- -- AccessibilityRole roleValue() const override; -- std::optional<AccessibilityChildrenVector> imageOverlayElements() override; --}; -- --} // namespace WebCore -- --SPECIALIZE_TYPE_TRAITS_ACCESSIBILITY(AXImage, isAXImageInstance()) -diff --git Source/WebCore/accessibility/AXLogger.cpp Source/WebCore/accessibility/AXLogger.cpp -index 3036666..7f26003 100644 ---- Source/WebCore/accessibility/AXLogger.cpp -+++ Source/WebCore/accessibility/AXLogger.cpp -@@ -373,9 +373,6 @@ TextStream& operator<<(TextStream& stream, AXObjectCache::AXNotification notific - case AXObjectCache::AXNotification::AXIdAttributeChanged: - stream << "AXIdAttributeChanged"; - break; -- case AXObjectCache::AXNotification::AXImageOverlayChanged: -- stream << "AXImageOverlayChanged"; -- break; - case AXObjectCache::AXNotification::AXLanguageChanged: - stream << "AXLanguageChanged"; - break; -diff --git Source/WebCore/accessibility/AXObjectCache.cpp Source/WebCore/accessibility/AXObjectCache.cpp -index f245110..2066db7 100644 ---- Source/WebCore/accessibility/AXObjectCache.cpp -+++ Source/WebCore/accessibility/AXObjectCache.cpp -@@ -32,7 +32,6 @@ - - #include "AXObjectCache.h" - --#include "AXImage.h" - #include "AXIsolatedObject.h" - #include "AXIsolatedTree.h" - #include "AXLogger.h" -@@ -513,28 +512,6 @@ bool nodeHasRole(Node* node, const String& role) - return SpaceSplitString(roleValue, true).contains(role); - } - --static bool isSimpleImage(const RenderObject& renderer) --{ -- if (!is<RenderImage>(renderer)) -- return false; -- -- // Exclude ImageButtons because they are treated as buttons, not as images. -- auto* node = renderer.node(); -- if (is<HTMLInputElement>(node)) -- return false; -- -- // ImageMaps are not simple images. -- if (downcast<RenderImage>(renderer).imageMap() -- || (is<HTMLImageElement>(node) && downcast<HTMLImageElement>(node)->hasAttributeWithoutSynchronization(usemapAttr))) -- return false; -- -- // Exclude video and audio elements. -- if (is<HTMLMediaElement>(node)) -- return false; -- -- return true; --} -- - static Ref<AccessibilityObject> createFromRenderer(RenderObject* renderer) - { - // FIXME: How could renderer->node() ever not be an Element? -@@ -574,9 +551,6 @@ static Ref<AccessibilityObject> createFromRenderer(RenderObject* renderer) - if (is<SVGElement>(node)) - return AccessibilitySVGElement::create(renderer); - -- if (isSimpleImage(*renderer)) -- return AXImage::create(downcast<RenderImage>(renderer)); -- - #if ENABLE(MATHML) - // The mfenced element creates anonymous RenderMathMLOperators which should be treated - // as MathML elements and assigned the MathElementRole so that platform logic regarding -diff --git Source/WebCore/accessibility/AXObjectCache.h Source/WebCore/accessibility/AXObjectCache.h -index 1dca4ca..fe3d86d 100644 ---- Source/WebCore/accessibility/AXObjectCache.h -+++ Source/WebCore/accessibility/AXObjectCache.h -@@ -284,7 +284,6 @@ public: - AXFocusedUIElementChanged, - AXFrameLoadComplete, - AXIdAttributeChanged, -- AXImageOverlayChanged, - AXLanguageChanged, - AXLayoutComplete, - AXLoadComplete, -diff --git Source/WebCore/accessibility/AccessibilityNodeObject.cpp Source/WebCore/accessibility/AccessibilityNodeObject.cpp -index 270bbd9..7902660 100644 ---- Source/WebCore/accessibility/AccessibilityNodeObject.cpp -+++ Source/WebCore/accessibility/AccessibilityNodeObject.cpp -@@ -378,6 +378,7 @@ bool AccessibilityNodeObject::canHaveChildren() const - - // Elements that should not have children - switch (roleValue()) { -+ case AccessibilityRole::Image: - case AccessibilityRole::Button: - case AccessibilityRole::PopUpButton: - case AccessibilityRole::CheckBox: -diff --git Source/WebCore/accessibility/AccessibilityObject.h Source/WebCore/accessibility/AccessibilityObject.h -index 2839da8..868f213 100644 ---- Source/WebCore/accessibility/AccessibilityObject.h -+++ Source/WebCore/accessibility/AccessibilityObject.h -@@ -93,7 +93,6 @@ public: - bool isAccessibilityRenderObject() const override { return false; } - bool isAccessibilityScrollbar() const override { return false; } - bool isAccessibilityScrollViewInstance() const override { return false; } -- bool isAXImageInstance() const override { return false; } - bool isAccessibilitySVGRoot() const override { return false; } - bool isAccessibilitySVGElement() const override { return false; } - bool isAccessibilityTableInstance() const override { return false; } -@@ -400,7 +399,6 @@ public: - String brailleLabel() const override { return getAttribute(HTMLNames::aria_braillelabelAttr); } - String brailleRoleDescription() const override { return getAttribute(HTMLNames::aria_brailleroledescriptionAttr); } - String embeddedImageDescription() const override; -- std::optional<AccessibilityChildrenVector> imageOverlayElements() override { return std::nullopt; } - - // Abbreviations - String expandedTextValue() const override { return String(); } -diff --git Source/WebCore/accessibility/AccessibilityObjectInterface.h Source/WebCore/accessibility/AccessibilityObjectInterface.h -index 2168454..4b51bdf 100644 ---- Source/WebCore/accessibility/AccessibilityObjectInterface.h -+++ Source/WebCore/accessibility/AccessibilityObjectInterface.h -@@ -794,7 +794,6 @@ public: - virtual bool isAccessibilityRenderObject() const = 0; - virtual bool isAccessibilityScrollbar() const = 0; - virtual bool isAccessibilityScrollViewInstance() const = 0; -- virtual bool isAXImageInstance() const = 0; - virtual bool isAccessibilitySVGRoot() const = 0; - virtual bool isAccessibilitySVGElement() const = 0; - virtual bool isAccessibilityTableInstance() const = 0; -@@ -1018,7 +1017,6 @@ public: - virtual String brailleLabel() const = 0; - virtual String brailleRoleDescription() const = 0; - virtual String embeddedImageDescription() const = 0; -- virtual std::optional<AccessibilityChildrenVector> imageOverlayElements() = 0; - - virtual bool supportsARIAOwns() const = 0; - virtual bool isActiveDescendantOfFocusedContainer() const = 0; -diff --git Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.cpp Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.cpp -index b0bcf55..1f48485 100644 ---- Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.cpp -+++ Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.cpp -@@ -1258,12 +1258,6 @@ bool AXIsolatedObject::isAccessibilityScrollViewInstance() const - return false; - } - --bool AXIsolatedObject::isAXImageInstance() const --{ -- ASSERT_NOT_REACHED(); -- return false; --} -- - bool AXIsolatedObject::isAccessibilitySVGRoot() const - { - ASSERT_NOT_REACHED(); -diff --git Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.h Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.h -index 6fb1ada..d177a22 100644 ---- Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.h -+++ Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.h -@@ -272,7 +272,6 @@ private: - String brailleLabel() const override { return stringAttributeValue(AXPropertyName::BrailleLabel); } - String brailleRoleDescription() const override { return stringAttributeValue(AXPropertyName::BrailleRoleDescription); } - String embeddedImageDescription() const override { return stringAttributeValue(AXPropertyName::EmbeddedImageDescription); } -- std::optional<AccessibilityChildrenVector> imageOverlayElements() override { return std::nullopt; } - - String computedRoleString() const override { return stringAttributeValue(AXPropertyName::ComputedRoleString); } - bool isValueAutofilled() const override { return boolAttributeValue(AXPropertyName::IsValueAutofilled); } -@@ -467,7 +466,6 @@ private: - bool isAccessibilityRenderObject() const override; - bool isAccessibilityScrollbar() const override; - bool isAccessibilityScrollViewInstance() const override; -- bool isAXImageInstance() const override; - bool isAccessibilitySVGRoot() const override; - bool isAccessibilitySVGElement() const override; - bool isAccessibilityTableInstance() const override; - - diff --git a/www/webkit2-gtk3/files/patch-Source_WebCore_platform_PlatformScreen.h b/www/webkit2-gtk3/files/patch-Source_WebCore_platform_PlatformScreen.h new file mode 100644 index 000000000000..d5a4da093b36 --- /dev/null +++ b/www/webkit2-gtk3/files/patch-Source_WebCore_platform_PlatformScreen.h @@ -0,0 +1,15 @@ +--- Source/WebCore/platform/PlatformScreen.h.orig 2021-10-21 08:52:09 UTC ++++ Source/WebCore/platform/PlatformScreen.h +@@ -48,6 +48,12 @@ OBJC_CLASS UIScreen; + typedef struct CGColorSpace *CGColorSpaceRef; + #endif + ++// X11 headers define a bunch of macros with common terms, interfering with WebCore and WTF enum values. ++// As a workaround, we explicitly undef them here. ++#if defined(None) ++#undef None ++#endif ++ + namespace WebCore { + + class DestinationColorSpace;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202203061603.226G3Bdu039159>