Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 322c19a3d449ee9ad70a4398165d334afc8affa9
https://github.com/WebKit/WebKit/commit/322c19a3d449ee9ad70a4398165d334afc8affa9
Author: Elliott Williams <[email protected]>
Date: 2025-10-22 (Wed, 22 Oct 2025)
Changed paths:
M Source/WebGPU/Configurations/WebGPU.xcconfig
Log Message:
-----------
[Back-deployment] Install libswiftCompatibilitySpan.dylib into
StagedFrameworks directory
https://bugs.webkit.org/show_bug.cgi?id=301293
rdar://162905280
Reviewed by Mike Wyrzykowski.
When using recent Swift language features and back-deploying to older OS
versions, the compiler will automatically link against a compatibility
dylib for runtime support. Configure Xcode to install this dylib to the
StagedFrameworks directory when building WebKit for downlevels and STP.
The result is a library layout like:
./System/Cryptexes/App/System/Library/StagedFrameworks/Safari/WebGPU.framework
./System/Cryptexes/App/System/Library/StagedFrameworks/Safari/WebKit.framework
./System/Cryptexes/App/System/Library/StagedFrameworks/Safari/libswiftCompatibilitySpan.dylib
./System/Cryptexes/App/System/Library/StagedFrameworks/Safari/libwebrtc.dylib
and so on.
By default, Xcode scans application bundles for needed compatibility
libaries and embeds them automatically, but this does not work for our
project layout, where we install frameworks as siblings onto the system,
and Safari.app is in a separate location altogether. Use
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES to force the scanner to run, and
run it from WebGPU, which is currently the one place where we use Span.
* Source/WebGPU/Configurations/WebGPU.xcconfig:
Canonical link: https://commits.webkit.org/301973@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications