[webkit-changes] [WebKit/WebKit] 633de9: [Xcode] Track output files for symlinks created by...

Elliott Williams noreply at github.com
Thu Sep 14 11:22:45 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 633de901b818a0c445b87395aa70cd2f668c6c37
      https://github.com/WebKit/WebKit/commit/633de901b818a0c445b87395aa70cd2f668c6c37
  Author: Elliott Williams <emw at apple.com>
  Date:   2023-09-14 (Thu, 14 Sep 2023)

  Changed paths:
    M Source/WebKit/WebKit.xcodeproj/project.pbxproj

  Log Message:
  -----------
  [Xcode] Track output files for symlinks created by WebKit script phases
https://bugs.webkit.org/show_bug.cgi?id=261247
rdar://115085679

Reviewed by Alexey Proskuryakov.

Symlinks to XPC services do not need to be recreated when their targets
are rebuilt. So it's fine to have the script phases which create them
declare them as outputs with no inputs.

Remove the "Create symlinks to Daemons for engineering builds" script
phase. We don't need it, as daemons are never loaded from inside the
WebKit.framework bundle in an engineering build.

Merge the "Add XPCServices symlink" and "Create symlinks to XPC
services" build phases. On Mac, the former creates
WebKit.framework/XPCServices and the latter creates symlinks in
WebKit.framework/Versions/A/XPCServices. But on other platforms, they
indicate that they *both* create WebKit.framework/XPCServices. Since
nothing in the build actually depends on the top-level XPCServices
symlink (iirc, it's for dyld), just create it as a side effect of the
"Create symlinks to XPC services" phase on Mac.

While they never get created in production-style builds, the outputs
need to use $(BUILT_PRODUCTS_DIR) and not $(TARGET_BUILD_DIR) to avoid
overlapping with the actual paths XPC services are installed to.

* Source/WebKit/WebKit.xcodeproj/project.pbxproj:

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




More information about the webkit-changes mailing list