[webkit-changes] [WebKit/WebKit] 4b5b02: More build fixes for ANGLE on embedded platforms
Dean Jackson
noreply at github.com
Wed Apr 5 14:36:02 PDT 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 4b5b02b509683ac9d75644be5a3909ee20a670e4
https://github.com/WebKit/WebKit/commit/4b5b02b509683ac9d75644be5a3909ee20a670e4
Author: Dean Jackson <dino at apple.com>
Date: 2023-04-05 (Wed, 05 Apr 2023)
Changed paths:
M Source/ThirdParty/ANGLE/src/common/apple/apple_platform.h
M Source/ThirdParty/ANGLE/src/common/apple_platform_utils.mm
M Source/ThirdParty/ANGLE/src/common/platform.h
M Source/ThirdParty/ANGLE/src/common/system_utils.cpp
M Source/ThirdParty/ANGLE/src/common/system_utils_posix.cpp
M Source/ThirdParty/ANGLE/src/gpu_info_util/SystemInfo_internal.h
M Source/ThirdParty/ANGLE/src/gpu_info_util/SystemInfo_ios.cpp
M Source/ThirdParty/ANGLE/src/libANGLE/Caps.cpp
M Source/ThirdParty/ANGLE/src/libANGLE/Display.cpp
M Source/ThirdParty/ANGLE/src/libANGLE/formatutils.cpp
M Source/ThirdParty/ANGLE/src/libANGLE/renderer/driver_utils.cpp
M Source/ThirdParty/ANGLE/src/libANGLE/renderer/driver_utils.h
M Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/apple/DisplayApple_api.cpp
M Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/renderergl_utils.cpp
M Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/DisplayMtl.mm
M Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/ShaderMtl.mm
M Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/mtl_utils.mm
Log Message:
-----------
More build fixes for ANGLE on embedded platforms
https://bugs.webkit.org/show_bug.cgi?id=254933
rdar://107570491
Reviewed by Ken Russell.
The change https://commits.webkit.org/262190@main fixed one build issue on
watchOS, but uncovered more on other Apple embedded platforms. Sometimes there
were branches of code not being compiled on anything but iOS and macOS. A lot
of this comes from the slighting confusing way Apple defines targets in
TargetConditionals.h. This patch is an attempt to make better sense of it, and
apply it to ANGLE.
The idea is that this will land first in WebKit, and if it doesn't break
anything it will be posted to upstream ANGLE.
Note that macOS Catalyst builds might require a followup.
* Source/ThirdParty/ANGLE/src/common/apple/apple_platform.h:
The meat of the patch is here. Add a new APPLE_EMBEDDED definition
for iOS/watchOS/tvOS. Split the simulator out into its own
definition. Everything below this is moving things to use
the embedded path where needed.
* Source/ThirdParty/ANGLE/src/common/apple_platform_utils.mm:
(angle::IsMetalRendererAvailable):
* Source/ThirdParty/ANGLE/src/common/platform.h:
* Source/ThirdParty/ANGLE/src/common/system_utils.cpp:
(angle::OpenSystemLibraryAndGetError):
* Source/ThirdParty/ANGLE/src/common/system_utils_posix.cpp:
(angle::OpenSystemLibraryWithExtensionAndGetError):
* Source/ThirdParty/ANGLE/src/gpu_info_util/SystemInfo_internal.h:
* Source/ThirdParty/ANGLE/src/gpu_info_util/SystemInfo_ios.cpp:
* Source/ThirdParty/ANGLE/src/libANGLE/Caps.cpp:
(gl::DetermineDepthTextureANGLESupport):
(gl::DetermineDepthTextureOESSupport):
* Source/ThirdParty/ANGLE/src/libANGLE/Display.cpp:
(egl::GenerateClientExtensions):
* Source/ThirdParty/ANGLE/src/libANGLE/formatutils.cpp:
(gl::BuildInternalFormatInfoMap):
* Source/ThirdParty/ANGLE/src/libANGLE/renderer/driver_utils.cpp:
* Source/ThirdParty/ANGLE/src/libANGLE/renderer/driver_utils.h:
(rx::IsAppleEmbedded):
(rx::IsIOS): Deleted.
* Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/apple/DisplayApple_api.cpp:
(rx::CreateDisplayCGLOrEAGL):
* Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/renderergl_utils.cpp:
(rx::nativegl_gl::InitializeFeatures):
* Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/DisplayMtl.mm:
(rx::DisplayMtl::initializeExtensions const):
* Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/ShaderMtl.mm:
(rx::ShaderMtl::compile):
* Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/mtl_utils.mm:
(rx::mtl::GetSamplerAddressMode):
Canonical link: https://commits.webkit.org/262636@main
More information about the webkit-changes
mailing list