Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 215cc7fbd22ed97361033f07f7a4bfa16b1e90dc
      
https://github.com/WebKit/WebKit/commit/215cc7fbd22ed97361033f07f7a4bfa16b1e90dc
  Author: Jean-Yves Avenard <[email protected]>
  Date:   2026-09-23 (Wed, 23 Sep 2026)

  Changed paths:
    M Source/WebKit/PlatformCocoa.cmake
    M Tools/SwiftBrowser/CMakeLists.txt

  Log Message:
  -----------
  [cmake] SwiftBrowser doesn't compile on OpenSource build
https://bugs.webkit.org/show_bug.cgi?id=324982
rdar://188188426

Reviewed by Zak Ridouh.

SwiftBrowser was compiled against the SDK's _WebKit_SwiftUI instead of the one 
just built

The _WebKit_SwiftUI swiftmodule was copied into 
_WebKit_SwiftUI.framework/Modules/ by a
POST_BUILD step. Nothing listed the copied files as build outputs, so ninja 
never restored them
once they were missing, and nothing ordered SwiftBrowser's Swift compile after 
the copy. When
SwiftBrowser compiled without the staged module, swiftc built _WebKit_SwiftUI 
from the SDK's
public .swiftinterface, the @_spi imports were dropped, and 
webViewScrollEdgeEffectStyle was not
found.

The copy is now an add_custom_command whose outputs are the staged module 
files, owned by a new
_WebKit_SwiftUI_StageSwiftModule target, for both the macOS and iOS builds. 
SwiftBrowser depends
on that target, so its compile waits for the staged module and ninja restores 
it if it is missing.
The staged files are also code-sign inputs of _WebKit_SwiftUI, so the framework 
is signed after
they are in place and re-signed when they change.

* Source/WebKit/PlatformCocoa.cmake:
Replace the POST_BUILD copy of the _WebKit_SwiftUI swiftmodule with a tracked 
custom command and
add the _WebKit_SwiftUI_StageSwiftModule target, for both the macOS and iOS 
builds.
* Tools/SwiftBrowser/CMakeLists.txt:
Depend on _WebKit_SwiftUI_StageSwiftModule.

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to