[webkit-changes] [WebKit/WebKit] f10759: [Xcode] Fix intermittent build failure by changing...

Elliott Williams noreply at github.com
Tue Oct 25 15:45:44 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f107596d170bf329aaeacf31044c65e4297574e7
      https://github.com/WebKit/WebKit/commit/f107596d170bf329aaeacf31044c65e4297574e7
  Author: Elliott Williams <emw at apple.com>
  Date:   2022-10-25 (Tue, 25 Oct 2022)

  Changed paths:
    M Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj

  Log Message:
  -----------
  [Xcode] Fix intermittent build failure by changing reference to libgtest.a
https://bugs.webkit.org/show_bug.cgi?id=247018
rdar://100915618

Reviewed by Alexey Proskuryakov.

This should work around errors seen in recent Xcode builds like:

    error: Unable to resolve build file: XCBCore.BuildFile (The
    workspace has a reference to a missing target with GUID
    'c60a15e2147ca6290ce79cb3ae1dc08ff254eea801fd83f9563e072e2c291103')
    (in target 'TestWGSL' from project 'TestWebKitAPI')

TestWebKitAPI's dependency on libgtest is somewhat unique, because
TestWebKitAPI.xcodeproj *embeds* gtest.xcodeproj. We do this so that
TestWebKitAPI can build correctly in schemes without Find Implicit
Dependencies enabled, which is necessary to support building the Tools
projects without building all of WebKit first.

When an Xcode project has an embedded project, it prefers to reference
that project's products using their foreign UUID. This is different from
the normal behavior where Xcode adds a "placeholder" product file with
its own local UUID. My guess, based on analyzing this bug, is that
something is causing XCBuild to fail to look up the product-via-
embedded-project UUID, resulting in this error.

This change updates TestWebKitAPI's references to libgtest.a to be
normal "placeholder" references on a product file inside the project.
Anecdotal evidence suggests that this fixes the intermittent build
failure.

* Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:

Canonical link: https://commits.webkit.org/255989@main




More information about the webkit-changes mailing list