Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 1f6f32f3174c2ff817718a4744bd6f1f444d8b60
      
https://github.com/WebKit/WebKit/commit/1f6f32f3174c2ff817718a4744bd6f1f444d8b60
  Author: Geoffrey Garen <[email protected]>
  Date:   2026-04-21 (Tue, 21 Apr 2026)

  Changed paths:
    M Tools/Scripts/swift/swiftc-wrapper.sh

  Log Message:
  -----------
  [CMake] Adopt CMP0157 to separate Swift compile and link phases
https://bugs.webkit.org/show_bug.cgi?id=312829
rdar://175201990

Reviewed by Adrian Taylor.

Originally, CMake+Swift did compilation and linking as one giant combined thing.
That's not really a sustainable design because compilation and linking are
separate in myriad ways.

This patch adopts CMP0157, which separates Swift compilation and linking, when
building with Swift targets enabled,.

This patch does not upgrade the minimum CMake version (which would enable
CMP0157 by default) because some Linux users still build WebKit with an older
CMake version, and we don't want to disturb that workflow since we don't have
to.

* CMakeLists.txt: Adopt CMP0157 when building with Swift. Going forward, it's
  not going to be sustainable to do anything else.

* Source/cmake/OptionsMac.cmake: Disable WebXR by default because the build
  fails and WebXR is disabled in the Xcode build by default.

* Tools/Scripts/swift/swiftc-wrapper.sh: Pre-CMP0157, this was a workaround
  script that separated compiling and linking. Now we can nearly get rid of
  it -- except that we still need a small number of workarounds for cases
  where CMake passes flags in the wrong format.

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



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

Reply via email to