Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 7eb640d408f81acd4ff1ff98016c28f8176c243f
https://github.com/WebKit/WebKit/commit/7eb640d408f81acd4ff1ff98016c28f8176c243f
Author: Elliott Williams <[email protected]>
Date: 2026-07-28 (Tue, 28 Jul 2026)
Changed paths:
M CMakeLists.txt
M CMakePresets.json
M Source/JavaScriptCore/CMakeLists.txt
M Source/JavaScriptCore/PlatformCocoa.cmake
R Source/JavaScriptCore/PlatformIOS.cmake
R Source/JavaScriptCore/PlatformMac.cmake
M Source/JavaScriptCore/shell/PlatformCocoa.cmake
R Source/JavaScriptCore/shell/PlatformIOS.cmake
R Source/JavaScriptCore/shell/PlatformMac.cmake
A Source/PlatformCocoa.cmake
R Source/PlatformMac.cmake
M Source/ThirdParty/ANGLE/PlatformCocoa.cmake
R Source/ThirdParty/ANGLE/PlatformIOS.cmake
R Source/ThirdParty/ANGLE/PlatformMac.cmake
M Source/WTF/wtf/PlatformCocoa.cmake
R Source/WTF/wtf/PlatformIOS.cmake
R Source/WTF/wtf/PlatformMac.cmake
M Source/WebCore/CMakeLists.txt
M Source/WebCore/PAL/pal/PlatformCocoa.cmake
R Source/WebCore/PAL/pal/PlatformIOS.cmake
R Source/WebCore/PAL/pal/PlatformMac.cmake
M Source/WebCore/PlatformCocoa.cmake
R Source/WebCore/PlatformIOS.cmake
R Source/WebCore/PlatformMac.cmake
A Source/WebInspectorUI/PlatformCocoa.cmake
R Source/WebInspectorUI/PlatformMac.cmake
M Source/WebKit/CMakeLists.txt
M Source/WebKit/PlatformCocoa.cmake
R Source/WebKit/PlatformIOS.cmake
R Source/WebKit/PlatformMac.cmake
M Source/WebKitLegacy/PlatformCocoa.cmake
R Source/WebKitLegacy/PlatformIOS.cmake
R Source/WebKitLegacy/PlatformMac.cmake
R Source/bmalloc/PlatformIOS.cmake
R Source/bmalloc/PlatformMac.cmake
M Source/cmake/OptionsCocoa.cmake
R Source/cmake/OptionsIOS.cmake
R Source/cmake/OptionsMac.cmake
M Source/cmake/WebKitCommon.cmake
M Source/cmake/WebKitFS.cmake
M Source/cmake/WebKitMacros.cmake
M Source/cmake/WebKitXcodeSDK.cmake
A Tools/DumpRenderTree/PlatformCocoa.cmake
R Tools/DumpRenderTree/PlatformMac.cmake
A Tools/ImageDiff/PlatformCocoa.cmake
R Tools/ImageDiff/PlatformIOS.cmake
R Tools/ImageDiff/PlatformMac.cmake
A Tools/PlatformCocoa.cmake
R Tools/PlatformMac.cmake
A Tools/TestRunnerShared/PlatformCocoa.cmake
R Tools/TestRunnerShared/PlatformMac.cmake
A Tools/TestWebKitAPI/PlatformCocoa.cmake
R Tools/TestWebKitAPI/PlatformIOS.cmake
R Tools/TestWebKitAPI/PlatformMac.cmake
A Tools/WebKitTestRunner/PlatformCocoa.cmake
R Tools/WebKitTestRunner/PlatformIOS.cmake
R Tools/WebKitTestRunner/PlatformMac.cmake
Log Message:
-----------
[CMake] Merge Mac and iOS ports into "Cocoa"
https://bugs.webkit.org/show_bug.cgi?id=320387
rdar://183348215
Reviewed by Richard Robinson.
Highly mechanical first change to merge the port codepaths into a single
Cocoa port. While there *are* meaningful differences between the Mac and
iOS builds, the overall shape is the same, and the port idiom makes it
too easy to let the builds diverge and duplicate code.
Adds WEBKIT_SDK_IS_MACOS, WEBKIT_SDK_IS_IOS_FAMILY, and
WEBKIT_SDK_IS_SIMULATOR cache variables to differentiate build logic
where it makes sense. There are some sections of the config that have a
big if-else branch, where code can be consolidated further.
Preset names are unchanged, and set CMAKE_OSX_SYSROOT to specify which
SDK name(s) to resolve. Port names are backwards-compatible: "Mac" and
"IOS" are aliases for Cocoa, and still work when set as cache varibles,
e.g. from the CLI.
* CMakeLists.txt:
* CMakePresets.json:
* Source/JavaScriptCore/CMakeLists.txt:
* Source/JavaScriptCore/PlatformCocoa.cmake:
* Source/JavaScriptCore/PlatformIOS.cmake: Removed.
* Source/JavaScriptCore/PlatformMac.cmake: Removed.
* Source/JavaScriptCore/shell/PlatformCocoa.cmake:
* Source/JavaScriptCore/shell/PlatformIOS.cmake: Removed.
* Source/JavaScriptCore/shell/PlatformMac.cmake: Removed.
* Source/PlatformCocoa.cmake: Renamed from Source/PlatformMac.cmake.
* Source/ThirdParty/ANGLE/PlatformCocoa.cmake:
* Source/ThirdParty/ANGLE/PlatformIOS.cmake: Removed.
* Source/ThirdParty/ANGLE/PlatformMac.cmake: Removed.
* Source/WTF/wtf/PlatformCocoa.cmake:
* Source/WTF/wtf/PlatformIOS.cmake: Removed.
* Source/WTF/wtf/PlatformMac.cmake: Removed.
* Source/WebCore/PAL/pal/PlatformCocoa.cmake:
* Source/WebCore/PAL/pal/PlatformIOS.cmake: Removed.
* Source/WebCore/PAL/pal/PlatformMac.cmake: Removed.
* Source/WebCore/PlatformCocoa.cmake:
* Source/WebCore/PlatformIOS.cmake: Removed.
* Source/WebCore/PlatformMac.cmake: Removed.
* Source/WebInspectorUI/PlatformCocoa.cmake: Renamed from
Source/WebInspectorUI/PlatformMac.cmake.
* Source/WebKit/CMakeLists.txt:
* Source/WebKit/PlatformCocoa.cmake:
* Source/WebKit/PlatformIOS.cmake: Removed.
* Source/WebKit/PlatformMac.cmake: Removed.
* Source/WebKitLegacy/PlatformCocoa.cmake:
* Source/WebKitLegacy/PlatformIOS.cmake: Removed.
* Source/WebKitLegacy/PlatformMac.cmake: Removed.
* Source/bmalloc/PlatformIOS.cmake: Removed.
* Source/bmalloc/PlatformMac.cmake: Removed.
* Source/cmake/OptionsCocoa.cmake:
* Source/cmake/OptionsIOS.cmake: Removed.
* Source/cmake/OptionsMac.cmake: Removed.
* Source/cmake/WebKitCommon.cmake:
* Source/cmake/WebKitFS.cmake:
* Source/cmake/WebKitMacros.cmake:
* Source/cmake/WebKitXcodeSDK.cmake:
* Tools/DumpRenderTree/PlatformCocoa.cmake: Renamed from
Tools/DumpRenderTree/PlatformMac.cmake.
* Tools/ImageDiff/PlatformCocoa.cmake: Renamed from
Tools/ImageDiff/PlatformMac.cmake.
* Tools/ImageDiff/PlatformIOS.cmake: Removed.
* Tools/PlatformCocoa.cmake: Renamed from Tools/PlatformMac.cmake.
* Tools/TestRunnerShared/PlatformCocoa.cmake: Renamed from
Tools/TestRunnerShared/PlatformMac.cmake.
* Tools/TestWebKitAPI/PlatformCocoa.cmake: Renamed from
Tools/TestWebKitAPI/PlatformMac.cmake.
* Tools/TestWebKitAPI/PlatformIOS.cmake: Removed.
* Tools/WebKitTestRunner/PlatformCocoa.cmake: Renamed from
Tools/WebKitTestRunner/PlatformMac.cmake.
* Tools/WebKitTestRunner/PlatformIOS.cmake: Removed.
Canonical link: https://commits.webkit.org/318097@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications