You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
webkit2gtk4.0/SOURCES/llvm19.patch

201 lines
6.8 KiB

From 762e2cc7f1ff4e9e2834ecc7b7aaa4c933d06e5b Mon Sep 17 00:00:00 2001
From: Michael Catanzaro <mcatanzaro@redhat.com>
Date: Tue, 1 Oct 2024 11:43:31 -0500
Subject: [PATCH] Cherry-pick db9c6a9f5548.
https://bugs.webkit.org/show_bug.cgi?id=276633
Build broken with LLVM 19
https://bugs.webkit.org/show_bug.cgi?id=280642
Reviewed by NOBODY (OOPS!).
We need to replace several forward declarations with #include
statements to avoid "member access into incomplete type" errors. This
has revealed that many SVG headers are missing from the framework
headers and so are not available to derived sources. I don't attempt to
fix this comprehensively; this is just the minimum required to fix the
build.
* Source/WebCore/CMakeLists.txt:
* Source/WebCore/Headers.cmake:
* Source/WebCore/Modules/webcodecs/WebCodecsVideoFrame.h:
---
Source/WebCore/CMakeLists.txt | 2 +
Source/WebCore/Headers.cmake | 64 +++++++++++++++++++
.../Modules/webcodecs/WebCodecsVideoFrame.h | 12 ++--
3 files changed, 72 insertions(+), 6 deletions(-)
diff --git a/Source/WebCore/CMakeLists.txt b/Source/WebCore/CMakeLists.txt
index beca51b714ec..d3b6ff21c7ae 100644
--- a/Source/WebCore/CMakeLists.txt
+++ b/Source/WebCore/CMakeLists.txt
@@ -2855,6 +2855,8 @@ WEBKIT_COMPUTE_SOURCES(WebCore)
target_precompile_headers(WebCore PRIVATE WebCorePrefix.h)
list(APPEND WebCore_PRIVATE_FRAMEWORK_HEADERS
+ ${WebCore_DERIVED_SOURCES_DIR}/SVGNames.h
+
Modules/WebGPU/InternalAPI/WebGPU.serialization.in
Modules/indexeddb/IndexedDB.serialization.in
diff --git a/Source/WebCore/Headers.cmake b/Source/WebCore/Headers.cmake
index cfe691a05770..e6ddf2d9cff2 100644
--- a/Source/WebCore/Headers.cmake
+++ b/Source/WebCore/Headers.cmake
@@ -846,6 +846,7 @@ set(WebCore_PRIVATE_FRAMEWORK_HEADERS
css/CSSFontPaletteValuesRule.h
css/CSSGridIntegerRepeatValue.h
css/CSSGroupingRule.h
+ css/CSSImageValue.h
css/CSSImportRule.h
css/CSSLineBoxContainValue.h
css/CSSMediaRule.h
@@ -873,6 +874,7 @@ set(WebCore_PRIVATE_FRAMEWORK_HEADERS
css/CSSVariableData.h
css/CSSVariableReferenceValue.h
css/Counter.h
+ css/DOMMatrix2DInit.h
css/DeprecatedCSSOMCounter.h
css/DeprecatedCSSOMPrimitiveValue.h
css/DeprecatedCSSOMRGBColor.h
@@ -925,6 +927,7 @@ set(WebCore_PRIVATE_FRAMEWORK_HEADERS
css/typedom/CSSKeywordValue.h
css/typedom/CSSNumericValue.h
+ css/typedom/CSSStyleImageValue.h
css/typedom/CSSStyleValue.h
css/typedom/numeric/CSSNumericBaseType.h
@@ -2539,17 +2542,41 @@ set(WebCore_PRIVATE_FRAMEWORK_HEADERS
style/StyleValidity.h
style/Styleable.h
+ svg/SVGAngle.h
+ svg/SVGAngleValue.h
svg/SVGElement.h
+ svg/SVGGraphicsElement.h
+ svg/SVGImageElement.h
+ svg/SVGImageLoader.h
+ svg/SVGLength.h
svg/SVGLengthContext.h
+ svg/SVGLengthList.h
svg/SVGLengthValue.h
+ svg/SVGLocatable.h
+ svg/SVGMarkerTypes.h
+ svg/SVGMatrix.h
+ svg/SVGNumber.h
+ svg/SVGNumberList.h
svg/SVGParserUtilities.h
svg/SVGParsingError.h
svg/SVGPathByteStream.h
svg/SVGPathConsumer.h
+ svg/SVGPathSeg.h
+ svg/SVGPathSegList.h
svg/SVGPathUtilities.h
+ svg/SVGPoint.h
+ svg/SVGPointList.h
+ svg/SVGPreserveAspectRatio.h
svg/SVGPreserveAspectRatioValue.h
+ svg/SVGRect.h
svg/SVGStringList.h
svg/SVGTests.h
+ svg/SVGTransform.h
+ svg/SVGTransformDistance.h
+ svg/SVGTransformList.h
+ svg/SVGTransformValue.h
+ svg/SVGTransformable.h
+ svg/SVGURIReference.h
svg/SVGUnitTypes.h
svg/graphics/SVGImageCache.h
@@ -2557,11 +2584,48 @@ set(WebCore_PRIVATE_FRAMEWORK_HEADERS
svg/graphics/filters/SVGFilter.h
svg/graphics/filters/SVGFilterExpression.h
+ svg/properties/SVGAnimatedDecoratedProperty.h
+ svg/properties/SVGAnimatedPrimitiveProperty.h
+ svg/properties/SVGAnimatedProperty.h
+ svg/properties/SVGAnimatedPropertyAccessor.h
+ svg/properties/SVGAnimatedPropertyAccessorImpl.h
+ svg/properties/SVGAnimatedPropertyAnimator.h
+ svg/properties/SVGAnimatedPropertyAnimatorImpl.h
+ svg/properties/SVGAnimatedPropertyImpl.h
+ svg/properties/SVGAnimatedPropertyList.h
+ svg/properties/SVGAnimatedPropertyPairAccessor.h
+ svg/properties/SVGAnimatedPropertyPairAccessorImpl.h
+ svg/properties/SVGAnimatedPropertyPairAnimator.h
+ svg/properties/SVGAnimatedPropertyPairAnimatorImpl.h
+ svg/properties/SVGAnimatedString.h
+ svg/properties/SVGAnimatedValueProperty.h
+ svg/properties/SVGAnimationAdditiveFunction.h
+ svg/properties/SVGAnimationAdditiveListFunction.h
+ svg/properties/SVGAnimationAdditiveListFunctionImpl.h
+ svg/properties/SVGAnimationAdditiveValueFunction.h
+ svg/properties/SVGAnimationAdditiveValueFunctionImpl.h
+ svg/properties/SVGAnimationDiscreteFunction.h
+ svg/properties/SVGAnimationDiscreteFunctionImpl.h
+ svg/properties/SVGAnimationFunction.h
+ svg/properties/SVGAttributeAnimator.h
+ svg/properties/SVGDecoratedEnumeration.h
+ svg/properties/SVGDecoratedPrimitive.h
+ svg/properties/SVGDecoratedProperty.h
svg/properties/SVGList.h
+ svg/properties/SVGMemberAccessor.h
+ svg/properties/SVGPointerMemberAccessor.h
svg/properties/SVGPrimitiveList.h
svg/properties/SVGProperty.h
+ svg/properties/SVGPropertyAccessor.h
+ svg/properties/SVGPropertyAccessorImpl.h
+ svg/properties/SVGPropertyList.h
svg/properties/SVGPropertyOwner.h
+ svg/properties/SVGPropertyOwnerRegistry.h
+ svg/properties/SVGPropertyRegistry.h
svg/properties/SVGPropertyTraits.h
+ svg/properties/SVGSharedPrimitiveProperty.h
+ svg/properties/SVGValueProperty.h
+ svg/properties/SVGValuePropertyList.h
testing/MockGamepad.h
testing/MockGamepadProvider.h
diff --git a/Source/WebCore/Modules/webcodecs/WebCodecsVideoFrame.h b/Source/WebCore/Modules/webcodecs/WebCodecsVideoFrame.h
index 286a2a32a0a3..03b5908976f8 100644
--- a/Source/WebCore/Modules/webcodecs/WebCodecsVideoFrame.h
+++ b/Source/WebCore/Modules/webcodecs/WebCodecsVideoFrame.h
@@ -27,10 +27,16 @@
#if ENABLE(WEB_CODECS)
+#include "CSSStyleImageValue.h"
#include "ContextDestructionObserver.h"
#include "DOMRectReadOnly.h"
+#include "HTMLCanvasElement.h"
+#include "HTMLImageElement.h"
+#include "HTMLVideoElement.h"
#include "JSDOMPromiseDeferredForward.h"
+#include "OffscreenCanvas.h"
#include "PlaneLayout.h"
+#include "SVGImageElement.h"
#include "VideoColorSpaceInit.h"
#include "WebCodecsAlphaOption.h"
#include "WebCodecsVideoFrameData.h"
@@ -38,16 +44,10 @@
namespace WebCore {
class BufferSource;
-class CSSStyleImageValue;
class DOMRectReadOnly;
-class HTMLCanvasElement;
-class HTMLImageElement;
-class HTMLVideoElement;
class ImageBitmap;
class ImageBuffer;
class NativeImage;
-class OffscreenCanvas;
-class SVGImageElement;
class VideoColorSpace;
template<typename> class ExceptionOr;
--
2.46.2