[webkit-changes] [WebKit/WebKit] 3b54e4: [Skia] Integrate building Skia with CMake
Adrian Perez
noreply at github.com
Fri Feb 9 05:10:34 PST 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 3b54e45d63b84f8ab8d70179184c45be78386622
https://github.com/WebKit/WebKit/commit/3b54e45d63b84f8ab8d70179184c45be78386622
Author: Adrian Perez de Castro <aperez at igalia.com>
Date: 2024-02-09 (Fri, 09 Feb 2024)
Changed paths:
A Source/ThirdParty/skia/CMakeLists.txt
A Source/ThirdParty/skia/README.WebKit
A Source/ThirdParty/skia/ext-skia-configure
A Source/ThirdParty/skia/include/gpu/gl/epoxy/GrGLMakeEpoxyEGLInterface.h
A Source/ThirdParty/skia/src/gpu/ganesh/gl/epoxy/GrGLMakeEpoxyEGLInterface.cpp
A Source/ThirdParty/skia/src/gpu/ganesh/gl/epoxy/GrGLMakeNativeInterface_epoxy.cpp
M Source/cmake/OptionsWPE.cmake
Log Message:
-----------
[Skia] Integrate building Skia with CMake
https://bugs.webkit.org/show_bug.cgi?id=269006
Reviewed by Carlos Garcia Campos.
Add CMake build definitions to compile Skia. This compiles only those
parts of Skia that will be needed at first by the WPE port, and while
it was written mostly by hand with the source file lists and some
inspiration from the Skia GN-based build system. The only missing bit
is a call to add_directory() to wire the subproject into the rest of
the CMake build, which will be done in a follow-up.
Additionally, this also includes a implementation of Skia's
GrGLMakeNativeInterface() that calls into libepoxy to resolve GL/EGL
entry points. This ensures that the functions used by Skia are the same
as the rest of WebKit and that libWPEWebKit is only ever linked at build
time against libepoxy and not concrete GL/EGL libraries.
* Source/ThirdParty/skia/CMakeLists.txt: Added.
* Source/ThirdParty/skia/README.WebKit: Added.
* Source/ThirdParty/skia/ext-skia-configure: Added.
* Source/ThirdParty/skia/include/gpu/gl/epoxy/GrGLMakeEpoxyEGLInterface.h: Added.
* Source/ThirdParty/skia/src/gpu/ganesh/gl/epoxy/GrGLMakeEpoxyEGLInterface.cpp: Added.
(epoxy_get_gl_proc):
(GrGLMakeEpoxyEGLInterface):
* Source/ThirdParty/skia/src/gpu/ganesh/gl/epoxy/GrGLMakeNativeInterface_epoxy.cpp: Added.
(GrGLMakeNativeInterface):
* Source/cmake/OptionsWPE.cmake: Introduce an USE_CAIRO build option,
set to TRUE for now, and make checking for Cairo, Fontconfig, and
Freetype guarded by it. Once we add the Skia variant it will not be needed
to list these directly because the Skia font manager will be used.
Canonical link: https://commits.webkit.org/274359@main
More information about the webkit-changes
mailing list