Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 3ab7cbf4600ba9d256341b69710e1de167add7f1
      
https://github.com/WebKit/WebKit/commit/3ab7cbf4600ba9d256341b69710e1de167add7f1
  Author: Adrian Taylor <[email protected]>
  Date:   2026-03-05 (Thu, 05 Mar 2026)

  Changed paths:
    M Source/WTF/wtf/PlatformEnable.h
    M Source/WebKit/Configurations/WebKit.xcconfig

  Log Message:
  -----------
  Remove xcconfig flags for two Swift features
https://bugs.webkit.org/show_bug.cgi?id=309193
rdar://171749225

Reviewed by Elliott Williams.

We have three Swift features subject to build-time enablement in the WebKit 
target:

* The demo URI handler;
* The back forward list;
* Swift IPC tests.

Previously, all three of these were enabled by xcconfig variables:
ENABLE_SWIFT_DEMO_URI_SCHEME
ENABLE_BACK_FORWARD_LIST_SWIFT
ENABLE_IPC_TESTING_SWIFT

All were disabled by default except that ENABLE_IPC_TESTING_SWIFT is
enabled on ASAN or debug builds on the latest SDKs.

Until very recently, some of these options also affected whether the build 
passed
-Xfrontend -emit-clang-header-min-access -Xfrontend internal
to the Swift compiler. For that reason, these three flags needed to be xcconfig
configuration variables.

However, https://bugs.webkit.org/show_bug.cgi?id=308749
moved that variable to be based solely on SDK version which means these
flags have no influence on any Xcode configuration variables other than
GCC_PREPROCESSOR_DEFINITIONS.

We can therefore two of them across to wtf/PlatformEnable.h, which is
better practice.

So henceforth, to enable these things add
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) ENABLE_BACK_FORWARD_LIST_SWIFT
to LocalOverrides.xcconfig, or
make ... GCC_PREPROCESSOR_ADDITIONS=ENABLE_BACK_FORWARD_LIST_SWIFT

We retain ENABLE_SWIFT_DEMO_URI_SCHEME as an Xcode configuration
variable (i.e. it is unaffected by this change). This option builds on really
old SDKs where it had, and has, significant remaining effects on the build
steps used. Once we cease to support this option on older SDKs, we can switch
that over too (or, more likely, entirely remove that demo logo since better
Swift tests will be in-tree by then).

In Apple internal builds, this is associated with another PR which enables
the ENABLE_IPC_TESTING_SWIFT flag on the most recent SDKs. That already
landed in another repository.

* Source/WTF/wtf/PlatformEnable.h:
* Source/WebKit/Configurations/WebKit.xcconfig:

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



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

Reply via email to