summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--download.lst4
-rw-r--r--external/skia/Library_skia.mk15
-rw-r--r--external/skia/UnpackedTarball_skia.mk3
-rw-r--r--external/skia/Wdeprecated-copy.patch.024
-rw-r--r--external/skia/c++20-comparison.patch.019
-rw-r--r--external/skia/fix-pch.patch.14
-rw-r--r--external/skia/inc/pch/precompiled_skia.hxx31
-rw-r--r--external/skia/operator-eq-bool.patch.021
-rw-r--r--vcl/inc/skia/gdiimpl.hxx1
-rw-r--r--vcl/skia/SkiaHelper.cxx2
-rw-r--r--vcl/skia/win/gdiimpl.cxx2
-rw-r--r--vcl/skia/win/winlayout.cxx3
12 files changed, 51 insertions, 78 deletions
diff --git a/download.lst b/download.lst
index 26c47cff20f3..fce6e1195fd2 100644
--- a/download.lst
+++ b/download.lst
@@ -234,8 +234,8 @@ export RHINO_SHA256SUM := 1fb458d6aab06932693cc8a9b6e4e70944ee1ff052fa63606e3131
export RHINO_TARBALL := 798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip
export SERF_SHA256SUM := 6988d394b62c3494635b6f0760bc3079f9a0cd380baf0f6b075af1eb9fa5e700
export SERF_TARBALL := serf-1.2.1.tar.bz2
-export SKIA_SHA256SUM := 2a70d467815eb3eb60ded071309eef907c6a49ce8bd5ab4595910240c75b6e19
-export SKIA_TARBALL := skia-m82-7bb74c4299b8a85de1e5718fc45da569d6dab3fc.tar.xz
+export SKIA_SHA256SUM := d724dd60d4375359aa4751ea39950ad833592f01774914873f6d033f14e1c63f
+export SKIA_TARBALL := skia-m83-8ce842d38d0b32149e874d6855c91e8c68ba65a7.tar.xz
export STAROFFICE_SHA256SUM := 6b00e1ed8194e6072be4441025d1b888e39365727ed5b23e0e8c92c4009d1ec4
export STAROFFICE_VERSION_MICRO := 6
export STAROFFICE_TARBALL := libstaroffice-0.0.$(STAROFFICE_VERSION_MICRO).tar.xz
diff --git a/external/skia/Library_skia.mk b/external/skia/Library_skia.mk
index 62285ca09f8b..576f8ede1997 100644
--- a/external/skia/Library_skia.mk
+++ b/external/skia/Library_skia.mk
@@ -210,9 +210,6 @@ $(eval $(call gb_Library_add_generated_exception_objects,skia,\
UnpackedTarball/skia/src/core/SkMiniRecorder \
UnpackedTarball/skia/src/core/SkMipMap \
UnpackedTarball/skia/src/core/SkModeColorFilter \
- UnpackedTarball/skia/src/core/SkNormalFlatSource \
- UnpackedTarball/skia/src/core/SkNormalMapSource \
- UnpackedTarball/skia/src/core/SkNormalSource \
UnpackedTarball/skia/src/core/SkOpts \
UnpackedTarball/skia/src/core/SkOverdrawCanvas \
UnpackedTarball/skia/src/core/SkPaint \
@@ -403,8 +400,6 @@ $(eval $(call gb_Library_add_generated_exception_objects,skia,\
UnpackedTarball/skia/src/shaders/SkColorShader \
UnpackedTarball/skia/src/shaders/SkComposeShader \
UnpackedTarball/skia/src/shaders/SkImageShader \
- UnpackedTarball/skia/src/shaders/SkLightingShader \
- UnpackedTarball/skia/src/shaders/SkLights \
UnpackedTarball/skia/src/shaders/SkLocalMatrixShader \
UnpackedTarball/skia/src/shaders/SkPerlinNoiseShader \
UnpackedTarball/skia/src/shaders/SkPictureShader \
@@ -499,7 +494,6 @@ $(eval $(call gb_Library_add_generated_exception_objects,skia,\
UnpackedTarball/skia/src/gpu/effects/generated/GrClampFragmentProcessor \
UnpackedTarball/skia/src/gpu/effects/generated/GrColorMatrixFragmentProcessor \
UnpackedTarball/skia/src/gpu/effects/generated/GrComposeLerpEffect \
- UnpackedTarball/skia/src/gpu/effects/generated/GrComposeLerpRedEffect \
UnpackedTarball/skia/src/gpu/effects/generated/GrConfigConversionEffect \
UnpackedTarball/skia/src/gpu/effects/generated/GrConstColorProcessor \
UnpackedTarball/skia/src/gpu/effects/generated/GrEllipseEffect \
@@ -528,7 +522,6 @@ $(eval $(call gb_Library_add_generated_exception_objects,skia,\
UnpackedTarball/skia/src/gpu/effects/GrRRectEffect \
UnpackedTarball/skia/src/gpu/effects/GrShadowGeoProc \
UnpackedTarball/skia/src/gpu/effects/GrSkSLFP \
- UnpackedTarball/skia/src/gpu/effects/GrSRGBEffect \
UnpackedTarball/skia/src/gpu/effects/GrTextureDomain \
UnpackedTarball/skia/src/gpu/effects/GrTextureEffect \
UnpackedTarball/skia/src/gpu/effects/GrXfermodeFragmentProcessor \
@@ -576,7 +569,6 @@ $(eval $(call gb_Library_add_generated_exception_objects,skia,\
UnpackedTarball/skia/src/gpu/glsl/GrGLSLProgramBuilder \
UnpackedTarball/skia/src/gpu/glsl/GrGLSLProgramDataManager \
UnpackedTarball/skia/src/gpu/glsl/GrGLSLShaderBuilder \
- UnpackedTarball/skia/src/gpu/glsl/GrGLSLUtil \
UnpackedTarball/skia/src/gpu/glsl/GrGLSLVarying \
UnpackedTarball/skia/src/gpu/glsl/GrGLSLVertexGeoBuilder \
UnpackedTarball/skia/src/gpu/glsl/GrGLSLXferProcessor \
@@ -598,6 +590,7 @@ $(eval $(call gb_Library_add_generated_exception_objects,skia,\
UnpackedTarball/skia/src/gpu/GrBackendSurface \
UnpackedTarball/skia/src/gpu/GrBackendTextureImageGenerator \
UnpackedTarball/skia/src/gpu/GrBitmapTextureMaker \
+ UnpackedTarball/skia/src/gpu/GrBlockAllocator \
UnpackedTarball/skia/src/gpu/GrBlurUtils \
UnpackedTarball/skia/src/gpu/GrBufferAllocPool \
UnpackedTarball/skia/src/gpu/GrCaps \
@@ -671,8 +664,8 @@ $(eval $(call gb_Library_add_generated_exception_objects,skia,\
UnpackedTarball/skia/src/gpu/GrSurfaceProxy \
UnpackedTarball/skia/src/gpu/GrSwizzle \
UnpackedTarball/skia/src/gpu/GrSWMaskHelper \
- UnpackedTarball/skia/src/gpu/GrTessellator \
UnpackedTarball/skia/src/gpu/GrTestUtils \
+ UnpackedTarball/skia/src/gpu/GrTriangulator \
UnpackedTarball/skia/src/gpu/GrTextureAdjuster \
UnpackedTarball/skia/src/gpu/GrTexture \
UnpackedTarball/skia/src/gpu/GrTextureMaker \
@@ -716,17 +709,17 @@ $(eval $(call gb_Library_add_generated_exception_objects,skia,\
UnpackedTarball/skia/src/gpu/ops/GrStencilAndCoverPathRenderer \
UnpackedTarball/skia/src/gpu/ops/GrStencilPathOp \
UnpackedTarball/skia/src/gpu/ops/GrStrokeRectOp \
- UnpackedTarball/skia/src/gpu/ops/GrTessellatingPathRenderer \
+ UnpackedTarball/skia/src/gpu/ops/GrTriangulatingPathRenderer \
UnpackedTarball/skia/src/gpu/ops/GrTextureOp \
UnpackedTarball/skia/src/gpu/SkGpuDevice \
UnpackedTarball/skia/src/gpu/SkGpuDevice_drawTexture \
UnpackedTarball/skia/src/gpu/SkGr \
UnpackedTarball/skia/src/gpu/tessellate/GrDrawAtlasPathOp \
UnpackedTarball/skia/src/gpu/tessellate/GrFillPathShader \
- UnpackedTarball/skia/src/gpu/tessellate/GrGpuTessellationPathRenderer \
UnpackedTarball/skia/src/gpu/tessellate/GrPathParser \
UnpackedTarball/skia/src/gpu/tessellate/GrStencilPathShader \
UnpackedTarball/skia/src/gpu/tessellate/GrTessellatePathOp \
+ UnpackedTarball/skia/src/gpu/tessellate/GrTessellationPathRenderer \
UnpackedTarball/skia/src/gpu/text/GrAtlasManager \
UnpackedTarball/skia/src/gpu/text/GrDistanceFieldAdjustTable \
UnpackedTarball/skia/src/gpu/text/GrSDFMaskFilter \
diff --git a/external/skia/UnpackedTarball_skia.mk b/external/skia/UnpackedTarball_skia.mk
index 8e0df446af95..749a651adc28 100644
--- a/external/skia/UnpackedTarball_skia.mk
+++ b/external/skia/UnpackedTarball_skia.mk
@@ -20,8 +20,6 @@ skia_patches := \
fix-alpha-difference-copy.patch.1 \
libvulkan-name.patch.1 \
share-grcontext.patch.1 \
- c++20-comparison.patch.0 \
- Wdeprecated-copy.patch.0 \
Wdeprecated-copy-dtor.patch.0 \
fix-msvc.patch.1 \
fix-gcc-x86.patch.1 \
@@ -32,6 +30,7 @@ skia_patches := \
windows-do-not-modify-logfont.patch.0 \
windows-text-gamma.patch.0 \
windows-force-unicode-api.patch.0 \
+ operator-eq-bool.patch.0 \
$(eval $(call gb_UnpackedTarball_set_patchlevel,skia,1))
diff --git a/external/skia/Wdeprecated-copy.patch.0 b/external/skia/Wdeprecated-copy.patch.0
deleted file mode 100644
index 4e0682bcebd9..000000000000
--- a/external/skia/Wdeprecated-copy.patch.0
+++ /dev/null
@@ -1,24 +0,0 @@
---- include/core/SkSurfaceProps.h
-+++ include/core/SkSurfaceProps.h
-@@ -63,7 +63,6 @@
- };
- SkSurfaceProps(InitType);
- SkSurfaceProps(uint32_t flags, InitType);
-- SkSurfaceProps(const SkSurfaceProps& other);
-
- uint32_t flags() const { return fFlags; }
- SkPixelGeometry pixelGeometry() const { return fPixelGeometry; }
---- src/image/SkSurface.cpp
-+++ src/image/SkSurface.cpp
-@@ -52,11 +52,6 @@
- : fFlags(flags), fPixelGeometry(pg)
- {}
-
--SkSurfaceProps::SkSurfaceProps(const SkSurfaceProps& other)
-- : fFlags(other.fFlags)
-- , fPixelGeometry(other.fPixelGeometry)
--{}
--
- ///////////////////////////////////////////////////////////////////////////////
-
- SkSurface_Base::SkSurface_Base(int width, int height, const SkSurfaceProps* props)
diff --git a/external/skia/c++20-comparison.patch.0 b/external/skia/c++20-comparison.patch.0
deleted file mode 100644
index 86f0d7ff16e0..000000000000
--- a/external/skia/c++20-comparison.patch.0
+++ /dev/null
@@ -1,19 +0,0 @@
---- src/shaders/SkLights.h
-+++ src/shaders/SkLights.h
-@@ -80,14 +80,14 @@
- return *this;
- }
-
-- bool operator==(const Light& other) {
-+ bool operator==(const Light& other) const {
- return (fType == other.fType) &&
- (fColor == other.fColor) &&
- (fDirOrPos == other.fDirOrPos) &&
- (fIntensity == other.fIntensity);
- }
-
-- bool operator!=(const Light& other) { return !(this->operator==(other)); }
-+ bool operator!=(const Light& other) const { return !(this->operator==(other)); }
-
- private:
- friend class SkLights;
diff --git a/external/skia/fix-pch.patch.1 b/external/skia/fix-pch.patch.1
index 2cb4752a48d8..9c89edbfeb9f 100644
--- a/external/skia/fix-pch.patch.1
+++ b/external/skia/fix-pch.patch.1
@@ -99,7 +99,7 @@ diff --git a/src/shaders/SkImageShader.cpp b/src/shaders/SkImageShader.cpp
index b8fd426e13..5e6f2a9b28 100755
--- a/src/shaders/SkImageShader.cpp
+++ b/src/shaders/SkImageShader.cpp
-@@ -781,6 +781,8 @@ bool SkImageShader::onProgram(skvm::Builder* p,
+@@ -808,6 +808,8 @@ skvm::Color SkImageShader::onProgram(skv
// See GrCubicEffect for details of these weights.
// TODO: these maybe don't seem right looking at gm/bicubic and GrBicubicEffect.
@@ -107,7 +107,7 @@ index b8fd426e13..5e6f2a9b28 100755
+#undef far
auto near = [&](skvm::F32 t) {
// 1/18 + 9/18t + 27/18t^2 - 21/18t^3 == t ( t ( -21/18t + 27/18) + 9/18) + 1/18
- return p->mad(t,
+ return t * (t * (t * (-21/18.0f) + 27/18.0f) + 9/18.0f) + 1/18.0f;
diff --git a/src/gpu/gl/GrGLGpu.cpp b/src/gpu/gl/GrGLGpu.cpp
index 191b6a3ce5..26754acccd 100644
--- a/src/gpu/gl/GrGLGpu.cpp
diff --git a/external/skia/inc/pch/precompiled_skia.hxx b/external/skia/inc/pch/precompiled_skia.hxx
index d91a523f8a1d..09d809a950b7 100644
--- a/external/skia/inc/pch/precompiled_skia.hxx
+++ b/external/skia/inc/pch/precompiled_skia.hxx
@@ -13,7 +13,7 @@
manual changes will be rewritten by the next run of update_pch.sh (which presumably
also fixes all possible problems, so it's usually better to use it).
- Generated on 2020-03-17 20:41:27 using:
+ Generated on 2020-04-06 12:31:09 using:
./bin/update_pch external/skia skia --cutoff=1 --exclude:system --include:module --include:local
If after updating build fails, use the following command to locate conflicting headers:
@@ -69,7 +69,7 @@
#include <rtl/alloc.h>
#include <sal/log.hxx>
#endif // PCH_LEVEL >= 2
-// PCH_LEVEL >= 3
+#if PCH_LEVEL >= 3
#include <include/c/sk_canvas.h>
#include <include/c/sk_colorspace.h>
#include <include/c/sk_data.h>
@@ -325,6 +325,7 @@
#include <src/core/SkClipOpPriv.h>
#include <src/core/SkClipStack.h>
#include <src/core/SkClipStackDevice.h>
+#include <src/core/SkColorFilterPriv.h>
#include <src/core/SkColorFilter_Matrix.h>
#include <src/core/SkColorSpacePriv.h>
#include <src/core/SkColorSpaceXformSteps.h>
@@ -387,9 +388,6 @@
#include <src/core/SkMipMap.h>
#include <src/core/SkModeColorFilter.h>
#include <src/core/SkNextID.h>
-#include <src/core/SkNormalFlatSource.h>
-#include <src/core/SkNormalMapSource.h>
-#include <src/core/SkNormalSource.h>
#include <src/core/SkOSFile.h>
#include <src/core/SkOpts.h>
#include <src/core/SkPaintDefaults.h>
@@ -464,7 +462,6 @@
#include <src/core/SkTypeface_remote.h>
#include <src/core/SkUtils.h>
#include <src/core/SkVM.h>
-#include <src/core/SkVMBlitter.h>
#include <src/core/SkValidationUtils.h>
#include <src/core/SkVertState.h>
#include <src/core/SkVerticesPriv.h>
@@ -484,7 +481,6 @@
#include <src/effects/SkTrimPE.h>
#include <src/gpu/GrAHardwareBufferImageGenerator.h>
#include <src/gpu/GrAHardwareBufferUtils.h>
-#include <src/gpu/GrAllocator.h>
#include <src/gpu/GrAppliedClip.h>
#include <src/gpu/GrAuditTrail.h>
#include <src/gpu/GrAutoLocaleSetter.h>
@@ -492,6 +488,7 @@
#include <src/gpu/GrBaseContextPriv.h>
#include <src/gpu/GrBitmapTextureMaker.h>
#include <src/gpu/GrBlend.h>
+#include <src/gpu/GrBlockAllocator.h>
#include <src/gpu/GrBlurUtils.h>
#include <src/gpu/GrBuffer.h>
#include <src/gpu/GrBufferAllocPool.h>
@@ -531,7 +528,6 @@
#include <src/gpu/GrImageTextureMaker.h>
#include <src/gpu/GrManagedResource.h>
#include <src/gpu/GrMemoryPool.h>
-#include <src/gpu/GrMesh.h>
#include <src/gpu/GrNativeRect.h>
#include <src/gpu/GrOnFlushResourceProvider.h>
#include <src/gpu/GrOpFlushState.h>
@@ -574,6 +570,7 @@
#include <src/gpu/GrShaderCaps.h>
#include <src/gpu/GrShaderUtils.h>
#include <src/gpu/GrShaderVar.h>
+#include <src/gpu/GrSimpleMesh.h>
#include <src/gpu/GrSoftwarePathRenderer.h>
#include <src/gpu/GrStencilAttachment.h>
#include <src/gpu/GrStencilClip.h>
@@ -587,7 +584,7 @@
#include <src/gpu/GrSurfaceProxyPriv.h>
#include <src/gpu/GrSurfaceProxyView.h>
#include <src/gpu/GrSwizzle.h>
-#include <src/gpu/GrTessellator.h>
+#include <src/gpu/GrTAllocator.h>
#include <src/gpu/GrTestUtils.h>
#include <src/gpu/GrTexture.h>
#include <src/gpu/GrTextureAdjuster.h>
@@ -601,6 +598,7 @@
#include <src/gpu/GrTextureResolveRenderTask.h>
#include <src/gpu/GrTracing.h>
#include <src/gpu/GrTransferFromRenderTask.h>
+#include <src/gpu/GrTriangulator.h>
#include <src/gpu/GrUserStencilSettings.h>
#include <src/gpu/GrVertexWriter.h>
#include <src/gpu/GrWaitRenderTask.h>
@@ -609,6 +607,7 @@
#include <src/gpu/GrYUVProvider.h>
#include <src/gpu/SkGpuDevice.h>
#include <src/gpu/SkGr.h>
+#include <src/gpu/ccpr/GrAutoMapVertexBuffer.h>
#include <src/gpu/ccpr/GrCCAtlas.h>
#include <src/gpu/ccpr/GrCCClipPath.h>
#include <src/gpu/ccpr/GrCCClipProcessor.h>
@@ -645,7 +644,6 @@
#include <src/gpu/effects/GrOvalEffect.h>
#include <src/gpu/effects/GrPorterDuffXferProcessor.h>
#include <src/gpu/effects/GrRRectEffect.h>
-#include <src/gpu/effects/GrSRGBEffect.h>
#include <src/gpu/effects/GrShadowGeoProc.h>
#include <src/gpu/effects/GrSkSLFP.h>
#include <src/gpu/effects/GrTextureDomain.h>
@@ -660,7 +658,6 @@
#include <src/gpu/effects/generated/GrClampFragmentProcessor.h>
#include <src/gpu/effects/generated/GrColorMatrixFragmentProcessor.h>
#include <src/gpu/effects/generated/GrComposeLerpEffect.h>
-#include <src/gpu/effects/generated/GrComposeLerpRedEffect.h>
#include <src/gpu/effects/generated/GrConfigConversionEffect.h>
#include <src/gpu/effects/generated/GrConstColorProcessor.h>
#include <src/gpu/effects/generated/GrDeviceSpaceEffect.h>
@@ -713,7 +710,6 @@
#include <src/gpu/glsl/GrGLSLProgramDataManager.h>
#include <src/gpu/glsl/GrGLSLShaderBuilder.h>
#include <src/gpu/glsl/GrGLSLUniformHandler.h>
-#include <src/gpu/glsl/GrGLSLUtil.h>
#include <src/gpu/glsl/GrGLSLVarying.h>
#include <src/gpu/glsl/GrGLSLVertexGeoBuilder.h>
#include <src/gpu/glsl/GrGLSLXferProcessor.h>
@@ -765,14 +761,14 @@
#include <src/gpu/ops/GrStencilAndCoverPathRenderer.h>
#include <src/gpu/ops/GrStencilPathOp.h>
#include <src/gpu/ops/GrStrokeRectOp.h>
-#include <src/gpu/ops/GrTessellatingPathRenderer.h>
#include <src/gpu/ops/GrTextureOp.h>
+#include <src/gpu/ops/GrTriangulatingPathRenderer.h>
#include <src/gpu/tessellate/GrDrawAtlasPathOp.h>
#include <src/gpu/tessellate/GrFillPathShader.h>
-#include <src/gpu/tessellate/GrGpuTessellationPathRenderer.h>
#include <src/gpu/tessellate/GrPathParser.h>
#include <src/gpu/tessellate/GrStencilPathShader.h>
#include <src/gpu/tessellate/GrTessellatePathOp.h>
+#include <src/gpu/tessellate/GrTessellationPathRenderer.h>
#include <src/gpu/text/GrAtlasManager.h>
#include <src/gpu/text/GrDistanceFieldAdjustTable.h>
#include <src/gpu/text/GrSDFMaskFilter.h>
@@ -863,8 +859,6 @@
#include <src/shaders/SkComposeShader.h>
#include <src/shaders/SkEmptyShader.h>
#include <src/shaders/SkImageShader.h>
-#include <src/shaders/SkLightingShader.h>
-#include <src/shaders/SkLights.h>
#include <src/shaders/SkLocalMatrixShader.h>
#include <src/shaders/SkPictureShader.h>
#include <src/shaders/SkShaderBase.h>
@@ -967,7 +961,8 @@
#include <tools/sk_app/GLWindowContext.h>
#include <tools/sk_app/VulkanWindowContext.h>
#include <vulkan/vulkan_core.h>
-// PCH_LEVEL >= 4
-// PCH_LEVEL >= 5
+#endif // PCH_LEVEL >= 3
+#if PCH_LEVEL >= 4
+#endif // PCH_LEVEL >= 4
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/external/skia/operator-eq-bool.patch.0 b/external/skia/operator-eq-bool.patch.0
new file mode 100644
index 000000000000..1c2c77beb96f
--- /dev/null
+++ b/external/skia/operator-eq-bool.patch.0
@@ -0,0 +1,21 @@
+--- ./src/core/SkVM.cpp.sav 2020-04-06 12:42:22.976205876 +0200
++++ ./src/core/SkVM.cpp 2020-04-06 12:50:57.465941063 +0200
+@@ -1162,7 +1162,7 @@ namespace skvm {
+ // Map min channel to 0, max channel to s, and scale the middle proportionally.
+ auto scale = [&](auto c) {
+ // TODO: better to divide and check for non-finite result?
+- return select(sat == 0.0f, 0.0f
++ return select(eq_op(0.0f, sat), 0.0f
+ , ((c - mn) * s) / sat);
+ };
+ *r = scale(*r);
+--- ./src/core/SkVM.h.sav 2020-04-06 12:08:50.833128845 +0200
++++ ./src/core/SkVM.h 2020-04-06 12:51:13.369987701 +0200
+@@ -875,6 +875,7 @@ namespace skvm {
+
+ static inline I32 operator==(F32 x, F32a y) { return x->eq(x,y); }
+ static inline I32 operator==(float x, F32 y) { return y->eq(x,y); }
++ static inline I32 eq_op(float x, F32 y) { return y->eq(x,y); }
+
+ static inline I32 operator!=(F32 x, F32a y) { return x->neq(x,y); }
+ static inline I32 operator!=(float x, F32 y) { return y->neq(x,y); }
diff --git a/vcl/inc/skia/gdiimpl.hxx b/vcl/inc/skia/gdiimpl.hxx
index 630b7a138844..a145e001850d 100644
--- a/vcl/inc/skia/gdiimpl.hxx
+++ b/vcl/inc/skia/gdiimpl.hxx
@@ -33,6 +33,7 @@
class SkiaFlushIdle;
class GenericSalLayout;
+class SkFont;
class VCL_DLLPUBLIC SkiaSalGraphicsImpl : public SalGraphicsImpl
{
diff --git a/vcl/skia/SkiaHelper.cxx b/vcl/skia/SkiaHelper.cxx
index ff2a2a588741..ed85cec00049 100644
--- a/vcl/skia/SkiaHelper.cxx
+++ b/vcl/skia/SkiaHelper.cxx
@@ -30,6 +30,8 @@ bool isVCLSkiaEnabled() { return false; }
#include <skia/utils.hxx>
#include <config_folders.h>
+#include <SkCanvas.h>
+#include <SkPaint.h>
#include <SkSurface.h>
#ifdef DBG_UTIL
diff --git a/vcl/skia/win/gdiimpl.cxx b/vcl/skia/win/gdiimpl.cxx
index c90185b3e4bf..50082d2fc51b 100644
--- a/vcl/skia/win/gdiimpl.cxx
+++ b/vcl/skia/win/gdiimpl.cxx
@@ -15,7 +15,9 @@
#include <skia/zone.hxx>
#include <win/winlayout.hxx>
+#include <SkCanvas.h>
#include <SkColorFilter.h>
+#include <SkPaint.h>
#include <SkPixelRef.h>
#include <SkTypeface_win.h>
#include <SkFont.h>
diff --git a/vcl/skia/win/winlayout.cxx b/vcl/skia/win/winlayout.cxx
index bf46f8727c87..da8a9f6cf2be 100644
--- a/vcl/skia/win/winlayout.cxx
+++ b/vcl/skia/win/winlayout.cxx
@@ -11,6 +11,9 @@
#include <skia/win/gdiimpl.hxx>
+#include <SkCanvas.h>
+#include <SkPaint.h>
+
bool SkiaGlobalWinGlyphCache::AllocateTexture(WinGlyphDrawElement& rElement, CompatibleDC* dc)
{
assert(rElement.maTexture.get() == nullptr);