[webkit-changes] [WebKit/WebKit] 110ccc: [WebKit] Enable InstallAPI for macOS/tvOS/watchOS
Elliott Williams
noreply at github.com
Thu Jun 8 12:31:30 PDT 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 110ccc3202f36448008342c92ce503820c473a8c
https://github.com/WebKit/WebKit/commit/110ccc3202f36448008342c92ce503820c473a8c
Author: Elliott Williams <emw at apple.com>
Date: 2023-06-08 (Thu, 08 Jun 2023)
Changed paths:
M Source/WebKit/Configurations/Base.xcconfig
M Source/WebKit/Configurations/WebKit.xcconfig
M Source/WebKit/Platform/ExtraPublicSymbolsForTAPI.h
M Source/WebKit/Shared/API/Cocoa/WebKit.m
M Source/WebKit/UIProcess/API/C/WKOpenPanelResultListener.h
M Source/WebKitLegacy/WebKitLegacy.xcodeproj/project.pbxproj
M Source/WebKitLegacy/mac/Configurations/WebKitLegacy.xcconfig
A Source/WebKitLegacy/mac/ExtraPrivateSymbolsForTAPI.h
M Source/WebKitLegacy/mac/Misc/WebIconDatabase.h
M Source/WebKitLegacy/mac/Misc/WebIconDatabase.mm
M Source/WebKitLegacy/mac/Panels/WebPanelAuthenticationHandler.h
M Source/WebKitLegacy/mac/Panels/WebPanelAuthenticationHandler.m
M Source/WebKitLegacy/mac/WebCoreSupport/WebJavaScriptTextInputPanel.h
M Source/WebKitLegacy/mac/WebCoreSupport/WebJavaScriptTextInputPanel.m
M Source/WebKitLegacy/mac/WebKit.mac.exp
M Source/WebKitLegacy/mac/WebView/WebViewInternal.h
M Source/WebKitLegacy/mac/WebView/WebViewPrivate.h
M Tools/Scripts/build-webkit
M Tools/Scripts/webkitdirs.pm
Log Message:
-----------
[WebKit] Enable InstallAPI for macOS/tvOS/watchOS
https://bugs.webkit.org/show_bug.cgi?id=257560
rdar://103361403
Reviewed by Alexey Proskuryakov.
Straightforward xcconfig and header changes to make WebKit and
WebKitLegacy use InstallAPI on all platforms. To avoid increasing the
potential for build failures due to stale headers, only introduce new
use of InstallAPI when TAPI_USE_SRCROOT is enabled.
* Source/WebKit/Configurations/Base.xcconfig: Remove platform conditions
from SUPPORTS_TEXT_BASED_API.
* Source/WebKit/Configurations/WebKit.xcconfig: Remove platform
conditions from OTHER_TAPI_FLAGS.
* Source/WebKit/Platform/ExtraPublicSymbolsForTAPI.h:
$ld$install_name$os declarations are iOS-only. Add conditional guards.
* Source/WebKit/UIProcess/API/C/WKOpenPanelResultListener.h:
WKOpenPanelResultListenerChooseMediaFiles is only implemented on iOS.
Wrap it in a conditional guard.
* Source/WebKit/Shared/API/Cocoa/WebKit.m: Drive-by fixup: Change the
ifdef condition to only emit versions-specific install names on iOS.
* Source/WebKitLegacy/WebKitLegacy.xcodeproj/project.pbxproj: Add
reference to ExtraPrivateSymbolsForTAPI.h
* Source/WebKitLegacy/mac/Configurations/WebKitLegacy.xcconfig: Remove
platform conditions from SUPPORTS_TEXT_BASED_API, TAPI_VERIFY_MODE,
and OTHER_TAPI_FLAGS.
* Source/WebKitLegacy/mac/ExtraPrivateSymbolsForTAPI.h: Added, declares
`WebCoreScrollView` which is implemented for backwards compatibility
but removed from API/SPI headers.
* Source/WebKitLegacy/mac/Misc/WebIconDatabase.h:
Declare WebIconDatabaseDidRemoveAllIconsNotification.
Delete WebIconDatabaseEnabledDefaultsKey; it's not used anywhere and
is not in any export lists.
* Source/WebKitLegacy/mac/Misc/WebIconDatabase.mm: Ditto.
* Source/WebKitLegacy/mac/Panels/WebPanelAuthenticationHandler.h: Move
WebPanelAuthenticationHandler ivars to the .m file; they are neither
exported nor used outside the implementation.
* Source/WebKitLegacy/mac/Panels/WebPanelAuthenticationHandler.m: See
above.
* Source/WebKitLegacy/mac/WebCoreSupport/WebJavaScriptTextInputPanel.h:
Ditto for WebJavaScriptTextInputPanel's ivars.
* Source/WebKitLegacy/mac/WebCoreSupport/WebJavaScriptTextInputPanel.m:
See above.
* Source/WebKitLegacy/mac/WebKit.mac.exp: WebUndefined is declared in a
migrated header (WebScriptObject.h) and used by DumpRenderTree, so it
should be reexported.
* Source/WebKitLegacy/mac/WebView/WebViewInternal.h: Move unexported key
strings here from WebViewPrivate.h.
* Source/WebKitLegacy/mac/WebView/WebViewPrivate.h: See above.
Xcode 13.x does not respect file filters (e.g.
EXCLUDED_SOURCE_FILE_NAMES) in TAPI filelists (rdar://92126006), so
raise the target version for TAPI_USE_SRCROOT mode to 14.0. This still
provides macOS and iOS coverage with SRCROOT mode in EWS. Also, the
feature flag can be passed as a defaults override, not an environment
variable, so do that instead.
* Tools/Scripts/build-webkit:
* Tools/Scripts/webkitdirs.pm:
(XcodeOptions):
Canonical link: https://commits.webkit.org/264993@main
More information about the webkit-changes
mailing list