Since the watchOS simulator bot was updated to the watchOS 7 SDK, the build has been failing with the following errors: In file included from /Volumes/Data/slave/watchos-7-release/build/Source/WebCore/platform/ios/PlaybackSessionInterfaceAVKit.mm:36: In file included from /Volumes/Data/slave/watchos-7-release/build/Source/WebCore/platform/ios/WebAVPlayerController.h:28: PAL/pal/spi/cocoa/AVKitSPI.h:159:31: error: attempting to use the forward class 'UIView' as superclass of 'AVBackgroundView' @interface AVBackgroundView : UIView ~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ In file included from /Volumes/Data/slave/watchos-7-release/build/Source/WebCore/platform/ios/PlaybackSessionInterfaceAVKit.mm:36: In file included from /Volumes/Data/slave/watchos-7-release/build/Source/WebCore/platform/ios/WebAVPlayerController.h:28: In file included from PAL/pal/spi/cocoa/AVKitSPI.h:132: In file included from /Applications/Xcode.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS7.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIResponder.h:11: /Applications/Xcode.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS7.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEvent.h:16:18: note: forward declaration of class here @class UIWindow, UIView, UIGestureRecognizer, UITouch; ^ In file included from /Volumes/Data/slave/watchos-7-release/build/Source/WebCore/platform/ios/PlaybackSessionInterfaceAVKit.mm:36: In file included from /Volumes/Data/slave/watchos-7-release/build/Source/WebCore/platform/ios/WebAVPlayerController.h:28: PAL/pal/spi/cocoa/AVKitSPI.h:174:48: error: attempting to use the forward class 'UIView' as superclass of 'AVPictureInPicturePlayerLayerView' @interface AVPictureInPicturePlayerLayerView : UIView ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ In file included from /Volumes/Data/slave/watchos-7-release/build/Source/WebCore/platform/ios/PlaybackSessionInterfaceAVKit.mm:36: In file included from /Volumes/Data/slave/watchos-7-release/build/Source/WebCore/platform/ios/WebAVPlayerController.h:28: In file included from PAL/pal/spi/cocoa/AVKitSPI.h:132: In file included from /Applications/Xcode.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS7.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIResponder.h:11: /Applications/Xcode.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS7.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEvent.h:16:18: note: forward declaration of class here @class UIWindow, UIView, UIGestureRecognizer, UITouch; ^ In file included from /Volumes/Data/slave/watchos-7-release/build/Source/WebCore/platform/ios/PlaybackSessionInterfaceAVKit.mm:36: In file included from /Volumes/Data/slave/watchos-7-release/build/Source/WebCore/platform/ios/WebAVPlayerController.h:28: PAL/pal/spi/cocoa/AVKitSPI.h:178:34: error: attempting to use the forward class 'UIView' as superclass of '__AVPlayerLayerView' @interface __AVPlayerLayerView : UIView ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ In file included from /Volumes/Data/slave/watchos-7-release/build/Source/WebCore/platform/ios/PlaybackSessionInterfaceAVKit.mm:36: In file included from /Volumes/Data/slave/watchos-7-release/build/Source/WebCore/platform/ios/WebAVPlayerController.h:28: In file included from PAL/pal/spi/cocoa/AVKitSPI.h:132: In file included from /Applications/Xcode.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS7.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIResponder.h:11: /Applications/Xcode.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS7.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEvent.h:16:18: note: forward declaration of class here @class UIWindow, UIView, UIGestureRecognizer, UITouch; ^ In file included from /Volumes/Data/slave/watchos-7-release/build/Source/WebCore/platform/ios/PlaybackSessionInterfaceAVKit.mm:36: In file included from /Volumes/Data/slave/watchos-7-release/build/Source/WebCore/platform/ios/WebAVPlayerController.h:28: PAL/pal/spi/cocoa/AVKitSPI.h:185:54: error: cannot find protocol declaration for 'AVPlayerViewControllerDelegate' @protocol AVPlayerViewControllerDelegate_WebKitOnly <AVPlayerViewControllerDelegate> ^ PAL/pal/spi/cocoa/AVKitSPI.h:194:31: error: expected a type - (BOOL)playerViewController:(AVPlayerViewController *)playerViewController shouldExitFullScreenWithReason:(AVPlayerViewControllerExitFullScreenReason)reason; ^ PAL/pal/spi/cocoa/AVKitSPI.h:197:12: error: cannot find interface declaration for 'AVPlayerViewController'; did you mean 'AVPlayerController'? @interface AVPlayerViewController () ^~~~~~~~~~~~~~~~~~~~~~ AVPlayerController PAL/pal/spi/cocoa/AVKitSPI.h:133:12: note: 'AVPlayerController' declared here @interface AVPlayerController : UIResponder ^ 6 errors generated. https://build.webkit.org/builders/Apple-watchOS-7-Release-Build/builds/1/steps/compile-webkit/logs/stdio
<rdar://problem/69724883>
Created attachment 410030 [details] Patch
Created attachment 410033 [details] Patch
Created attachment 410040 [details] Patch
(In reply to Jonathan Bedard from comment #4) > Created attachment 410040 [details] > Patch We could fix this with SPI, but I think copying the iOS headers is a better approach.
Comment on attachment 410040 [details] Patch rs=me
Created attachment 410047 [details] Patch
Committed r267764: <https://trac.webkit.org/changeset/267764> All reviewed patches have been landed. Closing bug and clearing flags on attachment 410047 [details].
Latest trunk builds for watchOS are now successful.