Add Swift modulemap for WebKit Private APIs
https://bugs.webkit.org/show_bug.cgi?id=203059

Reviewed by Tim Horton.

Provide a Swift modulemap for WebKit_Private, and
ensure WKPreferencesPrivate.h is exposed.

Renamed OSX.modulemap to macOS.modulemap while here.

* Configurations/WebKit.xcconfig:
* Modules/iOS.private.modulemap: Added.
* Modules/macOS.modulemap: Renamed from Source/WebKit/Modules/OSX.modulemap.
* Modules/macOS.private.modulemap: Added.
* Shared/API/Cocoa/WebKitPrivate.h: Include WKPreferencesPrivate.h.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@251215 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/Source/WebKit/ChangeLog b/Source/WebKit/ChangeLog
index 3ed827b..c1a1794 100644
--- a/Source/WebKit/ChangeLog
+++ b/Source/WebKit/ChangeLog
@@ -1,3 +1,21 @@
+2019-10-16  Dean Jackson  <dino@apple.com>
+
+        Add Swift modulemap for WebKit Private APIs
+        https://bugs.webkit.org/show_bug.cgi?id=203059
+
+        Reviewed by Tim Horton.
+
+        Provide a Swift modulemap for WebKit_Private, and
+        ensure WKPreferencesPrivate.h is exposed.
+
+        Renamed OSX.modulemap to macOS.modulemap while here.
+
+        * Configurations/WebKit.xcconfig:
+        * Modules/iOS.private.modulemap: Added.
+        * Modules/macOS.modulemap: Renamed from Source/WebKit/Modules/OSX.modulemap.
+        * Modules/macOS.private.modulemap: Added.
+        * Shared/API/Cocoa/WebKitPrivate.h: Include WKPreferencesPrivate.h.
+
 2019-10-16  John Wilander  <wilander@apple.com>
 
         Resource Load Statistics (experimental): Block all third-party cookies on websites without prior user interaction
diff --git a/Source/WebKit/Configurations/WebKit.xcconfig b/Source/WebKit/Configurations/WebKit.xcconfig
index fea25eed..b67f1c2 100644
--- a/Source/WebKit/Configurations/WebKit.xcconfig
+++ b/Source/WebKit/Configurations/WebKit.xcconfig
@@ -30,7 +30,10 @@
 DEFINES_MODULE = YES;
 MODULEMAP_FILE = $(MODULEMAP_FILE_$(WK_COCOA_TOUCH));
 MODULEMAP_FILE_cocoatouch = Modules/iOS.modulemap;
-MODULEMAP_FILE_ = Modules/OSX.modulemap;
+MODULEMAP_FILE_ = Modules/macOS.modulemap;
+MODULEMAP_PRIVATE_FILE = $(MODULEMAP_PRIVATE_FILE_$(WK_COCOA_TOUCH));
+MODULEMAP_PRIVATE_FILE_cocoatouch = Modules/iOS.private.modulemap;
+MODULEMAP_PRIVATE_FILE_ = Modules/macOS.private.modulemap;
 
 INSTALL_PATH = $(WEBKIT_FRAMEWORKS_DIR);
 DYLIB_INSTALL_NAME_BASE = $(DYLIB_INSTALL_NAME_BASE_$(WK_USE_ALTERNATE_FRAMEWORKS_DIR));
diff --git a/Source/WebKit/Modules/iOS.private.modulemap b/Source/WebKit/Modules/iOS.private.modulemap
new file mode 100644
index 0000000..02d82e9a
--- /dev/null
+++ b/Source/WebKit/Modules/iOS.private.modulemap
@@ -0,0 +1,5 @@
+framework module WebKit_Private [system] [extern_c] {
+  umbrella header "WebKitPrivate.h"
+  module * { export * }
+  export *
+}
diff --git a/Source/WebKit/Modules/OSX.modulemap b/Source/WebKit/Modules/macOS.modulemap
similarity index 100%
rename from Source/WebKit/Modules/OSX.modulemap
rename to Source/WebKit/Modules/macOS.modulemap
diff --git a/Source/WebKit/Modules/macOS.private.modulemap b/Source/WebKit/Modules/macOS.private.modulemap
new file mode 100644
index 0000000..02d82e9a
--- /dev/null
+++ b/Source/WebKit/Modules/macOS.private.modulemap
@@ -0,0 +1,5 @@
+framework module WebKit_Private [system] [extern_c] {
+  umbrella header "WebKitPrivate.h"
+  module * { export * }
+  export *
+}
diff --git a/Source/WebKit/Shared/API/Cocoa/WebKitPrivate.h b/Source/WebKit/Shared/API/Cocoa/WebKitPrivate.h
index 18bf0c5..6ec3b4d 100644
--- a/Source/WebKit/Shared/API/Cocoa/WebKitPrivate.h
+++ b/Source/WebKit/Shared/API/Cocoa/WebKitPrivate.h
@@ -25,6 +25,7 @@
 
 #import <WebKit/WKHistoryDelegatePrivate.h>
 #import <WebKit/WKNavigationPrivate.h>
+#import <WebKit/WKPreferencesPrivate.h>
 #import <WebKit/WKProcessPoolPrivate.h>
 #import <WebKit/WKUIDelegatePrivate.h>
 #import <WebKit/WKWebViewConfigurationPrivate.h>