Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 0cada7ea29c82071f39911718c534cf81f76e1c9
https://github.com/WebKit/WebKit/commit/0cada7ea29c82071f39911718c534cf81f76e1c9
Author: Zak Ridouh <[email protected]>
Date: 2026-04-16 (Thu, 16 Apr 2026)
Changed paths:
M Source/cmake/FindApple.cmake
M Tools/ImageDiff/CoreGraphics.cmake
M Tools/ImageDiff/PlatformMac.cmake
Log Message:
-----------
[CMake] Fix FindApple.cmake framework resolution on macOS
https://bugs.webkit.org/show_bug.cgi?id=312069
rdar://174942090
Reviewed by Geoffrey Garen.
FindApple.cmake was written for Windows-style Apple framework discovery
using find_path() + find_library(). On macOS, find_path() fails because
framework headers live inside .framework/Headers/ bundles and
Framework/Header.h does not resolve as a literal subdirectory path.
Since find_path() fails, Apple::* imported targets are never created.
Add an APPLE branch that uses find_library() with the framework's
canonical name (not the Windows-specific LIBRARY_NAMES) and creates
UNKNOWN IMPORTED targets with IMPORTED_LOCATION only. On macOS the
compiler resolves <Framework/Header.h> includes via the sysroot
framework search path, so INTERFACE_INCLUDE_DIRECTORIES is not needed.
The existing find_path()/find_library() logic moves into an else()
block for non-Apple platforms, preserving Windows behavior.
Add CoreServices and ImageIO as new FindApple components, and update
ImageDiff's PlatformMac.cmake to use find_package(Apple ...) with
CoreGraphics.cmake instead of raw -framework flags.
Also fix two pre-existing bugs: a ${options}/${OPTIONS} case mismatch
in cmake_parse_arguments, and a stray } in a status message string.
* Source/cmake/FindApple.cmake:
* Tools/ImageDiff/CoreGraphics.cmake:
* Tools/ImageDiff/PlatformMac.cmake:
Canonical link: https://commits.webkit.org/311404@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications