[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