As a step towards making WebKit build with the public iOS SDK, add a SPI wrapper header for NSGeometry SPI. Note, I chose to separate out the adding of an NSGeometry SPI wrapper header into its own bug from the patch for bug #136487 so as to make it straightforward to review its correctness.
Created attachment 239490 [details] Patch
I am open to suggestions on this patch, including how best to support building WebKitLegacy apps with the Apple internal SDK and without the header wtf/Platform.h.
Comment on attachment 239490 [details] Patch r- since I don't like how this patch makes NSGeometrySPI.h a Private header in WebKitLegacy. These headers should only be for our own use. I talked with Dan in person and we think we devised a way to avoid making this header SPI.
Created attachment 241455 [details] Patch
Comment on attachment 241455 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=241455&action=review r- to move the NSGeometry.h items into their own NSGeometrySPI.h header. > Source/WebCore/platform/ios/wak/WAKAppKitStubs.h:64 > +// FIXME: <rdar://problem/6669434> Switch from using NSGeometry methods to CGGeometry methods > +// > +// We explicitly use __has_include() instead of the macro define WTF_USE_APPLE_INTERNAL_SDK as > +// the condition for including the header Foundation/NSGeometry.h to support internal Apple > +// clients that build without header wtf/Platform.h. > +#if __has_include(<Foundation/NSGeometry.h>) > + > +#import <Foundation/NSGeometry.h> > + > +#else I do not want to add more includes of WAKAppKitStubs.h. I want to get rid of WAKAppKitStubs.h. Please put this code into its own NSGeometrySPI.h header and include that instead of WAKAppKitStubs.h in files were WAKAppKitStubs.h was newly included. (It's fine to include NSGeometrySPI.h here, though, so you don't have to change existing clients.)
Comment on attachment 241455 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=241455&action=review >> Source/WebCore/platform/ios/wak/WAKAppKitStubs.h:64 >> +#else > > I do not want to add more includes of WAKAppKitStubs.h. I want to get rid of WAKAppKitStubs.h. > > Please put this code into its own NSGeometrySPI.h header and include that instead of WAKAppKitStubs.h in files were WAKAppKitStubs.h was newly included. (It's fine to include NSGeometrySPI.h here, though, so you don't have to change existing clients.) After talking to Dan, I remember why we did it this way--some internal clients still use WAKAppKitStubs.h and if we'd have to make NSGeometrySPI.h a private header (along with WAKAppKitStubs.h) so that we wouldn't break them. It's fine to do this for now since we can easily clean up the new WAKAppKitStubs.h includes because they are all in WebKit itself.
Committed r176105: <http://trac.webkit.org/changeset/176105>