Title: [271498] trunk/Source/WebKit
Revision
271498
Author
[email protected]
Date
2021-01-14 13:40:55 -0800 (Thu, 14 Jan 2021)

Log Message

[Cocoa] Add a script to generate the "Feature Flags" plist file
https://bugs.webkit.org/show_bug.cgi?id=220080

Reviewed by Daniel Bates.

Add a script to combine a plist file from WebKitAdditions with the corresponding plist
file in this repo to generate a `WebKit.plist` required by the Feature Flags interface.

* FeatureFlags/WebKit-appletvos.plist: Copied from Source/WebKit/FeatureFlags/WebKit.plist.
* FeatureFlags/WebKit-ios.plist: Copied from Source/WebKit/FeatureFlags/WebKit.plist.
* FeatureFlags/WebKit-macos.plist: Copied from Source/WebKit/FeatureFlags/WebKit.plist.
* FeatureFlags/WebKit-watchos.plist: Renamed from Source/WebKit/FeatureFlags/WebKit.plist.
* Scripts/combine-feature-flags-plist.py: Added.
(main):
* Scripts/generate-feature-flags-plist.sh: Added.
* WebKit.xcodeproj/project.pbxproj:

Modified Paths

Added Paths

Removed Paths

Diff

Modified: trunk/Source/WebKit/ChangeLog (271497 => 271498)


--- trunk/Source/WebKit/ChangeLog	2021-01-14 20:56:00 UTC (rev 271497)
+++ trunk/Source/WebKit/ChangeLog	2021-01-14 21:40:55 UTC (rev 271498)
@@ -1,3 +1,22 @@
+2021-01-14  Peng Liu  <[email protected]>
+
+        [Cocoa] Add a script to generate the "Feature Flags" plist file
+        https://bugs.webkit.org/show_bug.cgi?id=220080
+
+        Reviewed by Daniel Bates.
+
+        Add a script to combine a plist file from WebKitAdditions with the corresponding plist
+        file in this repo to generate a `WebKit.plist` required by the Feature Flags interface.
+
+        * FeatureFlags/WebKit-appletvos.plist: Copied from Source/WebKit/FeatureFlags/WebKit.plist.
+        * FeatureFlags/WebKit-ios.plist: Copied from Source/WebKit/FeatureFlags/WebKit.plist.
+        * FeatureFlags/WebKit-macos.plist: Copied from Source/WebKit/FeatureFlags/WebKit.plist.
+        * FeatureFlags/WebKit-watchos.plist: Renamed from Source/WebKit/FeatureFlags/WebKit.plist.
+        * Scripts/combine-feature-flags-plist.py: Added.
+        (main):
+        * Scripts/generate-feature-flags-plist.sh: Added.
+        * WebKit.xcodeproj/project.pbxproj:
+
 2021-01-14  Tim Horton  <[email protected]>
 
         Exceptions thrown when invoking a <select> on an iPhone-idiom app running on macOS

Copied: trunk/Source/WebKit/FeatureFlags/WebKit-appletvos.plist (from rev 271497, trunk/Source/WebKit/FeatureFlags/WebKit.plist) (0 => 271498)


--- trunk/Source/WebKit/FeatureFlags/WebKit-appletvos.plist	                        (rev 0)
+++ trunk/Source/WebKit/FeatureFlags/WebKit-appletvos.plist	2021-01-14 21:40:55 UTC (rev 271498)
@@ -0,0 +1,91 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+    <key>app_highlights</key>
+    <dict>
+        <key>Enabled</key>
+        <true/>
+    </dict>
+    <key>async_frame_and_overflow_scrolling</key>
+    <dict>
+        <key>Enabled</key>
+        <true/>
+    </dict>
+    <key>gpu_process_canvas_rendering</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>gpu_process_dom_rendering</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>gpu_process_media</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>gpu_process_webgl</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>gpu_process_webrtc</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>InAppBrowserPrivacy</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>incremental_pdf</key>
+    <dict>
+        <key>Enabled</key>
+        <true/>
+    </dict>
+	<key>sw_vp9_decoder_on_battery</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+	<key>vp9_decoder</key>
+    <dict>
+        <key>Enabled</key>
+        <true/>
+    </dict>
+    <key>WebGL2</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>WebGPU</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>WebXR</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>webm_format_reader</key>
+    <dict>
+        <key>Enabled</key>
+        <true/>
+    </dict>
+    <key>webm_parser</key>
+    <dict>
+        <key>Enabled</key>
+        <true/>
+    </dict>
+    <key>RB_full_manage_WK_jetsam</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+</dict>
+</plist>

Copied: trunk/Source/WebKit/FeatureFlags/WebKit-ios.plist (from rev 271497, trunk/Source/WebKit/FeatureFlags/WebKit.plist) (0 => 271498)


--- trunk/Source/WebKit/FeatureFlags/WebKit-ios.plist	                        (rev 0)
+++ trunk/Source/WebKit/FeatureFlags/WebKit-ios.plist	2021-01-14 21:40:55 UTC (rev 271498)
@@ -0,0 +1,91 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+    <key>app_highlights</key>
+    <dict>
+        <key>Enabled</key>
+        <true/>
+    </dict>
+    <key>async_frame_and_overflow_scrolling</key>
+    <dict>
+        <key>Enabled</key>
+        <true/>
+    </dict>
+    <key>gpu_process_canvas_rendering</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>gpu_process_dom_rendering</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>gpu_process_media</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>gpu_process_webgl</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>gpu_process_webrtc</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>InAppBrowserPrivacy</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>incremental_pdf</key>
+    <dict>
+        <key>Enabled</key>
+        <true/>
+    </dict>
+	<key>sw_vp9_decoder_on_battery</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+	<key>vp9_decoder</key>
+    <dict>
+        <key>Enabled</key>
+        <true/>
+    </dict>
+    <key>WebGL2</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>WebGPU</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>WebXR</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>webm_format_reader</key>
+    <dict>
+        <key>Enabled</key>
+        <true/>
+    </dict>
+    <key>webm_parser</key>
+    <dict>
+        <key>Enabled</key>
+        <true/>
+    </dict>
+    <key>RB_full_manage_WK_jetsam</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+</dict>
+</plist>

Copied: trunk/Source/WebKit/FeatureFlags/WebKit-macos.plist (from rev 271497, trunk/Source/WebKit/FeatureFlags/WebKit.plist) (0 => 271498)


--- trunk/Source/WebKit/FeatureFlags/WebKit-macos.plist	                        (rev 0)
+++ trunk/Source/WebKit/FeatureFlags/WebKit-macos.plist	2021-01-14 21:40:55 UTC (rev 271498)
@@ -0,0 +1,91 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+    <key>app_highlights</key>
+    <dict>
+        <key>Enabled</key>
+        <true/>
+    </dict>
+    <key>async_frame_and_overflow_scrolling</key>
+    <dict>
+        <key>Enabled</key>
+        <true/>
+    </dict>
+    <key>gpu_process_canvas_rendering</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>gpu_process_dom_rendering</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>gpu_process_media</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>gpu_process_webgl</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>gpu_process_webrtc</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>InAppBrowserPrivacy</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>incremental_pdf</key>
+    <dict>
+        <key>Enabled</key>
+        <true/>
+    </dict>
+	<key>sw_vp9_decoder_on_battery</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+	<key>vp9_decoder</key>
+    <dict>
+        <key>Enabled</key>
+        <true/>
+    </dict>
+    <key>WebGL2</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>WebGPU</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>WebXR</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>webm_format_reader</key>
+    <dict>
+        <key>Enabled</key>
+        <true/>
+    </dict>
+    <key>webm_parser</key>
+    <dict>
+        <key>Enabled</key>
+        <true/>
+    </dict>
+    <key>RB_full_manage_WK_jetsam</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+</dict>
+</plist>

Copied: trunk/Source/WebKit/FeatureFlags/WebKit-watchos.plist (from rev 271497, trunk/Source/WebKit/FeatureFlags/WebKit.plist) (0 => 271498)


--- trunk/Source/WebKit/FeatureFlags/WebKit-watchos.plist	                        (rev 0)
+++ trunk/Source/WebKit/FeatureFlags/WebKit-watchos.plist	2021-01-14 21:40:55 UTC (rev 271498)
@@ -0,0 +1,91 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+    <key>app_highlights</key>
+    <dict>
+        <key>Enabled</key>
+        <true/>
+    </dict>
+    <key>async_frame_and_overflow_scrolling</key>
+    <dict>
+        <key>Enabled</key>
+        <true/>
+    </dict>
+    <key>gpu_process_canvas_rendering</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>gpu_process_dom_rendering</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>gpu_process_media</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>gpu_process_webgl</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>gpu_process_webrtc</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>InAppBrowserPrivacy</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>incremental_pdf</key>
+    <dict>
+        <key>Enabled</key>
+        <true/>
+    </dict>
+	<key>sw_vp9_decoder_on_battery</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+	<key>vp9_decoder</key>
+    <dict>
+        <key>Enabled</key>
+        <true/>
+    </dict>
+    <key>WebGL2</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>WebGPU</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>WebXR</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+    <key>webm_format_reader</key>
+    <dict>
+        <key>Enabled</key>
+        <true/>
+    </dict>
+    <key>webm_parser</key>
+    <dict>
+        <key>Enabled</key>
+        <true/>
+    </dict>
+    <key>RB_full_manage_WK_jetsam</key>
+    <dict>
+        <key>Enabled</key>
+        <false/>
+    </dict>
+</dict>
+</plist>

Deleted: trunk/Source/WebKit/FeatureFlags/WebKit.plist (271497 => 271498)


--- trunk/Source/WebKit/FeatureFlags/WebKit.plist	2021-01-14 20:56:00 UTC (rev 271497)
+++ trunk/Source/WebKit/FeatureFlags/WebKit.plist	2021-01-14 21:40:55 UTC (rev 271498)
@@ -1,96 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
-<plist version="1.0">
-<dict>
-    <key>app_highlights</key>
-    <dict>
-        <key>Enabled</key>
-        <true/>
-    </dict>
-    <key>async_frame_and_overflow_scrolling</key>
-    <dict>
-        <key>Enabled</key>
-        <true/>
-    </dict>
-    <key>gpu_process_canvas_rendering</key>
-    <dict>
-        <key>Enabled</key>
-        <false/>
-    </dict>
-    <key>gpu_process_dom_rendering</key>
-    <dict>
-        <key>Enabled</key>
-        <false/>
-    </dict>
-    <key>gpu_process_media</key>
-    <dict>
-        <key>Enabled</key>
-        <false/>
-    </dict>
-    <key>gpu_process_webgl</key>
-    <dict>
-        <key>Enabled</key>
-        <false/>
-    </dict>
-    <key>gpu_process_webrtc</key>
-    <dict>
-        <key>Enabled</key>
-        <false/>
-    </dict>
-    <key>InAppBrowserPrivacy</key>
-    <dict>
-        <key>Enabled</key>
-        <false/>
-    </dict>
-    <key>incremental_pdf</key>
-    <dict>
-        <key>Enabled</key>
-        <true/>
-    </dict>
-    <key>ScriptOptimizations</key>
-    <dict>
-        <key>Enabled</key>
-        <false/>
-    </dict>
-	<key>sw_vp9_decoder_on_battery</key>
-    <dict>
-        <key>Enabled</key>
-        <false/>
-    </dict>
-	<key>vp9_decoder</key>
-    <dict>
-        <key>Enabled</key>
-        <true/>
-    </dict>
-    <key>WebGL2</key>
-    <dict>
-        <key>Enabled</key>
-        <false/>
-    </dict>
-    <key>WebGPU</key>
-    <dict>
-        <key>Enabled</key>
-        <false/>
-    </dict>
-    <key>WebXR</key>
-    <dict>
-        <key>Enabled</key>
-        <false/>
-    </dict>
-    <key>webm_format_reader</key>
-    <dict>
-        <key>Enabled</key>
-        <true/>
-    </dict>
-    <key>webm_parser</key>
-    <dict>
-        <key>Enabled</key>
-        <true/>
-    </dict>
-    <key>RB_full_manage_WK_jetsam</key>
-    <dict>
-        <key>Enabled</key>
-        <false/>
-    </dict>
-</dict>
-</plist>

Added: trunk/Source/WebKit/Scripts/combine-feature-flags-plist.py (0 => 271498)


--- trunk/Source/WebKit/Scripts/combine-feature-flags-plist.py	                        (rev 0)
+++ trunk/Source/WebKit/Scripts/combine-feature-flags-plist.py	2021-01-14 21:40:55 UTC (rev 271498)
@@ -0,0 +1,58 @@
+#
+# Copyright (c) 2021 Apple Inc. All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+# 1. Redistributions of source code must retain the above copyright
+#    notice, this list of conditions and the following disclaimer.
+# 2. Redistributions in binary form must reproduce the above copyright
+#    notice, this list of conditions and the following disclaimer in the
+#    documentation and/or other materials provided with the distribution.
+#
+# THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+# THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+# THE POSSIBILITY OF SUCH DAMAGE.
+
+import plistlib
+import sys
+
+
+def main(argv):
+    if len(argv) != 4:
+        print('Usage: ', argv[0], '<feature_flags_plist> <internal_feature_flags_plist> <output_plist>')
+        return 1
+
+    feature_flags_plist_path = argv[1]
+    internal_feature_flags_plist_path = argv[2]
+    output_plist_path = argv[3]
+
+    try:
+        with open(feature_flags_plist_path, 'rb') as feature_flags_file, open(internal_feature_flags_plist_path, 'rb') as internal_feature_flags_file:
+            feature_flags = plistlib.load(feature_flags_file)
+            internal_feature_flags = plistlib.load(internal_feature_flags_file)
+            for key in internal_feature_flags:
+                if key not in feature_flags:
+                    print('Error!', key, 'does not exist in' + feature_flags_plist_path)
+                    return 1
+
+                feature_flags[key].update(internal_feature_flags[key])
+
+            with open(output_plist_path, 'wb') as output_plist_file:
+                plistlib.dump(feature_flags, output_plist_file)
+    except IOError:
+        print('File read/write error! Please make sure file names', feature_flags_plist_path, 'and', internal_feature_flags_plist_path, 'are correct.')
+
+    return 0
+
+
+if __name__ == '__main__':
+    sys.exit(main(sys.argv))

Added: trunk/Source/WebKit/Scripts/generate-feature-flags-plist.sh (0 => 271498)


--- trunk/Source/WebKit/Scripts/generate-feature-flags-plist.sh	                        (rev 0)
+++ trunk/Source/WebKit/Scripts/generate-feature-flags-plist.sh	2021-01-14 21:40:55 UTC (rev 271498)
@@ -0,0 +1,54 @@
+#!/bin/sh
+#
+# Copyright (c) 2021 Apple Inc. All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+# 1. Redistributions of source code must retain the above copyright
+#    notice, this list of conditions and the following disclaimer.
+# 2. Redistributions in binary form must reproduce the above copyright
+#    notice, this list of conditions and the following disclaimer in the
+#    documentation and/or other materials provided with the distribution.
+#
+# THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+# THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+# THE POSSIBILITY OF SUCH DAMAGE.
+
+set -e
+
+if [[ ${WK_PLATFORM_NAME} == "appletvos" ]]; then
+    WEBKIT_PLIST_FILE_NAME="WebKit-appletvos.plist"
+elif [[ ${WK_PLATFORM_NAME} == "iphoneos" ]]; then
+    WEBKIT_PLIST_FILE_NAME="WebKit-ios.plist"
+elif [[ ${WK_PLATFORM_NAME} == "macosx" ]]; then
+    WEBKIT_PLIST_FILE_NAME="WebKit-macos.plist"
+elif [[ ${WK_PLATFORM_NAME} == "watchos" ]]; then
+    WEBKIT_PLIST_FILE_NAME="WebKit-watchos.plist"
+else
+    exit 0;
+fi
+
+WEBKIT_PLIST_DIR="${SRCROOT}/FeatureFlags"
+INTERNAL_WEBKIT_PLIST_DIR="${WK_WEBKITADDITIONS_HEADERS_FOLDER_PATH}/WebKit"
+DEST_DIR="${INSTALL_ROOT}/${WK_INSTALL_PATH_PREFIX}/${SYSTEM_LIBRARY_DIR}/FeatureFlags/Domain"
+
+if [[ ! -d "${DEST_DIR}" ]]; then
+    mkdir -p "${DEST_DIR}"
+fi
+
+if [[ ! -f "${INTERNAL_WEBKIT_PLIST_DIR}/${WEBKIT_PLIST_FILE_NAME}" ]]; then
+    echo "Copy ${WEBKIT_PLIST_DIR}/${WEBKIT_PLIST_FILE_NAME} to ${DEST_DIR}/WebKit.plist"
+    ditto "${WEBKIT_PLIST_DIR}/${WEBKIT_PLIST_FILE_NAME}" "${DEST_DIR}/WebKit.plist"
+else
+    echo "Generate ${DEST_DIR}/WebKit.plist"
+    python3 "${SRCROOT}/Scripts/combine-feature-flags-plist.py" "${WEBKIT_PLIST_DIR}/${WEBKIT_PLIST_FILE_NAME}" "${INTERNAL_WEBKIT_PLIST_DIR}/${WEBKIT_PLIST_FILE_NAME}" "${DEST_DIR}/WebKit.plist"
+fi
Property changes on: trunk/Source/WebKit/Scripts/generate-feature-flags-plist.sh
___________________________________________________________________

Added: svn:executable

+* \ No newline at end of property

Modified: trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj (271497 => 271498)


--- trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj	2021-01-14 20:56:00 UTC (rev 271497)
+++ trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj	2021-01-14 21:40:55 UTC (rev 271498)
@@ -2956,6 +2956,12 @@
 		1D0369A82567943C00440372 /* RemoteTextTrackProxyMessagesReplies.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = RemoteTextTrackProxyMessagesReplies.h; path = DerivedSources/WebKit2/RemoteTextTrackProxyMessagesReplies.h; sourceTree = BUILT_PRODUCTS_DIR; };
 		1D0369A92567943C00440372 /* RemoteVideoTrackProxyMessagesReplies.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = RemoteVideoTrackProxyMessagesReplies.h; path = DerivedSources/WebKit2/RemoteVideoTrackProxyMessagesReplies.h; sourceTree = BUILT_PRODUCTS_DIR; };
 		1D0369AA2567943C00440372 /* RemoteTextTrackProxyMessageReceiver.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = RemoteTextTrackProxyMessageReceiver.cpp; path = DerivedSources/WebKit2/RemoteTextTrackProxyMessageReceiver.cpp; sourceTree = BUILT_PRODUCTS_DIR; };
+		1D0530C9258EAB4400E436F7 /* combine-feature-flags-plist.py */ = {isa = PBXFileReference; lastKnownFileType = text.script.python; path = "combine-feature-flags-plist.py"; sourceTree = "<group>"; };
+		1D0530D1259162C800E436F7 /* WebKit-ios.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "WebKit-ios.plist"; sourceTree = "<group>"; };
+		1D0530D2259162C900E436F7 /* WebKit-appletvos.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "WebKit-appletvos.plist"; sourceTree = "<group>"; };
+		1D0530D3259162C900E436F7 /* WebKit-macos.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "WebKit-macos.plist"; sourceTree = "<group>"; };
+		1D0530D4259162C900E436F7 /* WebKit-watchos.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "WebKit-watchos.plist"; sourceTree = "<group>"; };
+		1D0530D52591941500E436F7 /* generate-feature-flags-plist.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = "generate-feature-flags-plist.sh"; sourceTree = "<group>"; };
 		1D0ECEAA23FC858400D172F6 /* RemoteMediaPlayerProxyCocoa.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = RemoteMediaPlayerProxyCocoa.mm; sourceTree = "<group>"; };
 		1D32F89823A8465A00B1EA6A /* RemoteMediaResource.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RemoteMediaResource.h; sourceTree = "<group>"; };
 		1D32F89923A8468000B1EA6A /* RemoteMediaResource.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = RemoteMediaResource.cpp; sourceTree = "<group>"; };
@@ -3001,7 +3007,6 @@
 		1DE076D92460CCBD00B211E8 /* WebPreferencesDefaultValuesCocoa.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = WebPreferencesDefaultValuesCocoa.mm; sourceTree = "<group>"; };
 		1DE0D095211CC21300439B5F /* WKShareSheet.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKShareSheet.h; sourceTree = "<group>"; };
 		1DE2DFAC23A959F8003E013A /* RemoteMediaResourceIdentifier.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RemoteMediaResourceIdentifier.h; sourceTree = "<group>"; };
-		1DEC97AC246B691E007C83F4 /* WebKit.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = WebKit.plist; sourceTree = "<group>"; };
 		1DF29018257F202F003C28AF /* MediaSourcePrivateRemote.messages.in */ = {isa = PBXFileReference; lastKnownFileType = text; path = MediaSourcePrivateRemote.messages.in; sourceTree = "<group>"; };
 		1DF29E61257F3794003C28AF /* MediaSourcePrivateRemoteMessageReceiver.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = MediaSourcePrivateRemoteMessageReceiver.cpp; path = DerivedSources/WebKit2/MediaSourcePrivateRemoteMessageReceiver.cpp; sourceTree = BUILT_PRODUCTS_DIR; };
 		1DF29E62257F3795003C28AF /* MediaSourcePrivateRemoteMessagesReplies.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = MediaSourcePrivateRemoteMessagesReplies.h; path = DerivedSources/WebKit2/MediaSourcePrivateRemoteMessagesReplies.h; sourceTree = BUILT_PRODUCTS_DIR; };
@@ -6973,7 +6978,10 @@
 		1DEC97AB246B6865007C83F4 /* FeatureFlags */ = {
 			isa = PBXGroup;
 			children = (
-				1DEC97AC246B691E007C83F4 /* WebKit.plist */,
+				1D0530D2259162C900E436F7 /* WebKit-appletvos.plist */,
+				1D0530D1259162C800E436F7 /* WebKit-ios.plist */,
+				1D0530D3259162C900E436F7 /* WebKit-macos.plist */,
+				1D0530D4259162C900E436F7 /* WebKit-watchos.plist */,
 			);
 			path = FeatureFlags;
 			sourceTree = "<group>";
@@ -10975,7 +10983,9 @@
 				535E08CA225460FC00DF00CA /* postprocess-header-rule */,
 				7CDE73A21F9DA59700390312 /* PreferencesTemplates */,
 				0FC0856E187CE0A900780D86 /* __init__.py */,
+				1D0530C9258EAB4400E436F7 /* combine-feature-flags-plist.py */,
 				4157853021276B6F00DD3800 /* copy-webcontent-resources-to-private-headers.sh */,
+				1D0530D52591941500E436F7 /* generate-feature-flags-plist.sh */,
 				C0CE73361247F70E00BC0EC4 /* generate-message-receiver.py */,
 				0FC0856F187CE0A900780D86 /* messages.py */,
 				0FC08570187CE0A900780D86 /* model.py */,
@@ -13096,17 +13106,20 @@
 			inputFileListPaths = (
 			);
 			inputPaths = (
-				"${SRCROOT}/FeatureFlags/WebKit.plist",
+				"$(SRCROOT)/FeatureFlags/WebKit-appletvos.plist",
+				"$(SRCROOT)/FeatureFlags/WebKit-ios.plist",
+				"$(SRCROOT)/FeatureFlags/WebKit-macos.plist",
+				"$(SRCROOT)/FeatureFlags/WebKit-watchos.plist",
 			);
 			name = "Copy Feature Flags Plist";
 			outputFileListPaths = (
 			);
 			outputPaths = (
-				"${INSTALL_ROOT}/${WK_INSTALL_PATH_PREFIX}/${SYSTEM_LIBRARY_DIR}/FeatureFlags/Domain/WebKit.plist",
+				"$(INSTALL_ROOT)/$(WK_INSTALL_PATH_PREFIX)/$(SYSTEM_LIBRARY_DIR)/FeatureFlags/Domain/WebKit.plist",
 			);
 			runOnlyForDeploymentPostprocessing = 1;
 			shellPath = /bin/sh;
-			shellScript = "if [[ ${WK_PLATFORM_NAME} == \"maccatalyst\" ]]; then\n    exit 0;\nfi\n\nSOURCE_DIR=\"${SRCROOT}/FeatureFlags\"\nDEST_DIR=${INSTALL_ROOT}/${WK_INSTALL_PATH_PREFIX}/${SYSTEM_LIBRARY_DIR}/FeatureFlags/Domain\n\nif [[ ! -d \"${DEST_DIR}\" ]]; then\n    mkdir -p \"${DEST_DIR}\"\nfi\n\nditto \"${SOURCE_DIR}/WebKit.plist\" \"${DEST_DIR}/WebKit.plist\"\n";
+			shellScript = "${SRCROOT}/Scripts/generate-feature-flags-plist.sh\n";
 		};
 		2D7DEBDF21269C9F00B9F73C /* Generate Unified Sources */ = {
 			isa = PBXShellScriptBuildPhase;
@@ -13721,6 +13734,7 @@
 				1D0369AE256796B900440372 /* RemoteAudioTrackProxyMessageReceiver.cpp in Sources */,
 				0FF24A2D1879E4BC003ABF0D /* RemoteCaptureSampleManagerMessageReceiver.cpp in Sources */,
 				CDAC20F723FC726C0021DEE3 /* RemoteCDMFactoryProxyMessageReceiver.cpp in Sources */,
+				CDA6D45125A989C7004B1DF6 /* RemoteCDMInstanceMessageReceiver.cpp in Sources */,
 				CDAC20F823FC726C0021DEE3 /* RemoteCDMInstanceProxyMessageReceiver.cpp in Sources */,
 				CD46618324010A670047CA35 /* RemoteCDMInstanceSessionMessageReceiver.cpp in Sources */,
 				CDAC20F923FC726C0021DEE3 /* RemoteCDMInstanceSessionProxyMessageReceiver.cpp in Sources */,
@@ -13781,7 +13795,6 @@
 				2D11B7642126A282006F8878 /* UnifiedSource10.cpp in Sources */,
 				2D11B7632126A282006F8878 /* UnifiedSource10-mm.mm in Sources */,
 				2D11B7652126A282006F8878 /* UnifiedSource11-mm.mm in Sources */,
-				CDA6D45125A989C7004B1DF6 /* RemoteCDMInstanceMessageReceiver.cpp in Sources */,
 				2D11B7662126A282006F8878 /* UnifiedSource11.cpp in Sources */,
 				2D11B7672126A282006F8878 /* UnifiedSource12-mm.mm in Sources */,
 				2D11B7682126A282006F8878 /* UnifiedSource12.cpp in Sources */,
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to