// Copyright (C) 2009-2019 Apple Inc. All rights reserved.
// Copyright (C) 2009 Google 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. ``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
// 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.

// The contents of this file must be kept in sync with FeatureDefines.xcconfig in JavaScriptCore,
// WebCore, WebKitLegacy and WebKit.  Also the default values of the ENABLE_FEATURE_NAME macros in
// build-webkit should match the values below, but they do not need to be in the same order.

// Keep this list of features (not enabled/disabled state) in sync with FeatureDefines.props
// and FeatureDefinesCairo.props in Source/cmake/tools/vsprops.

// Set any ENABLE_FEATURE_NAME macro to an empty string to disable that feature.

#include "WebKitTargetConditionals.xcconfig"

ENABLE_3D_TRANSFORMS = ENABLE_3D_TRANSFORMS;

ENABLE_ACCELERATED_2D_CANVAS = ;

ENABLE_ACCESSIBILITY_ISOLATED_TREE = ;

ENABLE_APPLE_PAY = $(ENABLE_APPLE_PAY_$(WK_PLATFORM_NAME));
ENABLE_APPLE_PAY_iphoneos = ENABLE_APPLE_PAY;
ENABLE_APPLE_PAY_iphonesimulator = ENABLE_APPLE_PAY;
ENABLE_APPLE_PAY_macosx = ENABLE_APPLE_PAY;

ENABLE_APPLE_PAY_SESSION_V3 = $(ENABLE_APPLE_PAY_SESSION_V3_$(WK_PLATFORM_NAME));
ENABLE_APPLE_PAY_SESSION_V3_iphoneos = ENABLE_APPLE_PAY_SESSION_V3;
ENABLE_APPLE_PAY_SESSION_V3_iphonesimulator = ENABLE_APPLE_PAY_SESSION_V3;
ENABLE_APPLE_PAY_SESSION_V3_macosx = $(ENABLE_APPLE_PAY_SESSION_V3$(WK_MACOS_1013));
ENABLE_APPLE_PAY_SESSION_V3_MACOS_SINCE_1013 = ENABLE_APPLE_PAY_SESSION_V3;

ENABLE_APPLE_PAY_SESSION_V4 = $(ENABLE_APPLE_PAY_SESSION_V4_$(WK_PLATFORM_NAME));
ENABLE_APPLE_PAY_SESSION_V4_iphoneos = ENABLE_APPLE_PAY_SESSION_V4;
ENABLE_APPLE_PAY_SESSION_V4_iphoneos[sdk=iphone*11.*] = ;
ENABLE_APPLE_PAY_SESSION_V4_iphonesimulator = ENABLE_APPLE_PAY_SESSION_V4;
ENABLE_APPLE_PAY_SESSION_V4_iphonesimulator[sdk=iphone*11.*] = ;
ENABLE_APPLE_PAY_SESSION_V4_macosx = $(ENABLE_APPLE_PAY_SESSION_V4$(WK_MACOS_1014));
ENABLE_APPLE_PAY_SESSION_V4_MACOS_SINCE_1014 = ENABLE_APPLE_PAY_SESSION_V4;

ENABLE_APPLICATION_MANIFEST = ENABLE_APPLICATION_MANIFEST;

ENABLE_ATTACHMENT_ELEMENT = ENABLE_ATTACHMENT_ELEMENT;

ENABLE_AVF_CAPTIONS = ENABLE_AVF_CAPTIONS;

ENABLE_CACHE_PARTITIONING = ENABLE_CACHE_PARTITIONING;

ENABLE_CHANNEL_MESSAGING = ENABLE_CHANNEL_MESSAGING;

ENABLE_CONTENT_FILTERING = $(ENABLE_CONTENT_FILTERING_$(WK_PLATFORM_NAME));
ENABLE_CONTENT_FILTERING_iosmac = ENABLE_CONTENT_FILTERING;
ENABLE_CONTENT_FILTERING_iphoneos = ENABLE_CONTENT_FILTERING;
ENABLE_CONTENT_FILTERING_iphonesimulator = ENABLE_CONTENT_FILTERING;
ENABLE_CONTENT_FILTERING_macosx = ENABLE_CONTENT_FILTERING;
ENABLE_CONTENT_FILTERING_watchos = ENABLE_CONTENT_FILTERING;
ENABLE_CONTENT_FILTERING_watchsimulator = ENABLE_CONTENT_FILTERING;

ENABLE_CSS3_TEXT = ;

ENABLE_CSS_BOX_DECORATION_BREAK = ENABLE_CSS_BOX_DECORATION_BREAK;

ENABLE_CSS_COMPOSITING = ENABLE_CSS_COMPOSITING;

ENABLE_CSS_CONIC_GRADIENTS = ENABLE_CSS_CONIC_GRADIENTS;
ENABLE_CSS_CONIC_GRADIENTS = $(ENABLE_CSS_CONIC_GRADIENTS_$(WK_PLATFORM_NAME));
ENABLE_CSS_CONIC_GRADIENTS_iphoneos = ENABLE_CSS_CONIC_GRADIENTS;
ENABLE_CSS_CONIC_GRADIENTS_iphoneos[sdk=iphone*11.*] = ;
ENABLE_CSS_CONIC_GRADIENTS_iphonesimulator = ENABLE_CSS_CONIC_GRADIENTS;
ENABLE_CSS_CONIC_GRADIENTS_iphonesimulator[sdk=iphone*11.*] = ;
ENABLE_CSS_CONIC_GRADIENTS_watchos = ENABLE_CSS_CONIC_GRADIENTS;
ENABLE_CSS_CONIC_GRADIENTS_watchsimulator = ENABLE_CSS_CONIC_GRADIENTS;
ENABLE_CSS_CONIC_GRADIENTS_iosmac = ENABLE_CSS_CONIC_GRADIENTS;
ENABLE_CSS_CONIC_GRADIENTS_macosx = $(ENABLE_CSS_CONIC_GRADIENTS$(WK_MACOS_1014));
ENABLE_CSS_CONIC_GRADIENTS_MACOS_SINCE_1014 = ENABLE_CSS_CONIC_GRADIENTS;

ENABLE_CSS_DEVICE_ADAPTATION = ;

ENABLE_CSS_IMAGE_ORIENTATION = ;

ENABLE_CSS_IMAGE_RESOLUTION = ;

ENABLE_CSS_PAINTING_API = ENABLE_CSS_PAINTING_API;

ENABLE_CSS_SCROLL_SNAP = ENABLE_CSS_SCROLL_SNAP;

ENABLE_CSS_SELECTORS_LEVEL4 = ENABLE_CSS_SELECTORS_LEVEL4;

ENABLE_CSS_TRAILING_WORD = ENABLE_CSS_TRAILING_WORD;

ENABLE_CSS_TYPED_OM = ENABLE_CSS_TYPED_OM;

ENABLE_CURSOR_VISIBILITY = ENABLE_CURSOR_VISIBILITY;

ENABLE_CUSTOM_SCHEME_HANDLER = ;

ENABLE_DARK_MODE_CSS = $(ENABLE_DARK_MODE_CSS_$(WK_PLATFORM_NAME));
ENABLE_DARK_MODE_CSS_iphoneos = ENABLE_DARK_MODE_CSS;
ENABLE_DARK_MODE_CSS_iphonesimulator = ENABLE_DARK_MODE_CSS;
ENABLE_DARK_MODE_CSS_iosmac = ENABLE_DARK_MODE_CSS;
ENABLE_DARK_MODE_CSS_macosx = ENABLE_DARK_MODE_CSS;

ENABLE_DATACUE_VALUE = ENABLE_DATACUE_VALUE;

ENABLE_DATALIST_ELEMENT = ENABLE_DATALIST_ELEMENT;

ENABLE_DATA_INTERACTION = $(ENABLE_DATA_INTERACTION_$(WK_PLATFORM_NAME));
ENABLE_DATA_INTERACTION_iphoneos = ENABLE_DATA_INTERACTION;
ENABLE_DATA_INTERACTION_iphonesimulator = ENABLE_DATA_INTERACTION;
ENABLE_DATA_INTERACTION_iosmac = ENABLE_DATA_INTERACTION;

ENABLE_DEVICE_ORIENTATION = $(ENABLE_DEVICE_ORIENTATION_$(WK_PLATFORM_NAME));
ENABLE_DEVICE_ORIENTATION_iphoneos = ENABLE_DEVICE_ORIENTATION;
ENABLE_DEVICE_ORIENTATION_iphonesimulator = ENABLE_DEVICE_ORIENTATION;
ENABLE_DEVICE_ORIENTATION_watchos = ENABLE_DEVICE_ORIENTATION;
ENABLE_DEVICE_ORIENTATION_watchsimulator = ENABLE_DEVICE_ORIENTATION;
ENABLE_DEVICE_ORIENTATION_appletvos = ENABLE_DEVICE_ORIENTATION;
ENABLE_DEVICE_ORIENTATION_appletvsimulator = ENABLE_DEVICE_ORIENTATION;

ENABLE_DRAG_SUPPORT = $(ENABLE_DRAG_SUPPORT_$(WK_PLATFORM_NAME));
ENABLE_DRAG_SUPPORT_iphoneos = ENABLE_DRAG_SUPPORT;
ENABLE_DRAG_SUPPORT_iphonesimulator = ENABLE_DRAG_SUPPORT;
ENABLE_DRAG_SUPPORT_iosmac = ENABLE_DRAG_SUPPORT;

ENABLE_ENCRYPTED_MEDIA = $(ENABLE_ENCRYPTED_MEDIA_$(WK_PLATFORM_NAME));
ENABLE_ENCRYPTED_MEDIA_iphoneos = ENABLE_ENCRYPTED_MEDIA;
ENABLE_ENCRYPTED_MEDIA_iphonesimulator = ENABLE_ENCRYPTED_MEDIA;
ENABLE_ENCRYPTED_MEDIA_watchos = ENABLE_ENCRYPTED_MEDIA;
ENABLE_ENCRYPTED_MEDIA_watchsimulator = ENABLE_ENCRYPTED_MEDIA;
ENABLE_ENCRYPTED_MEDIA_appletvos = ENABLE_ENCRYPTED_MEDIA;
ENABLE_ENCRYPTED_MEDIA_appletvsimulator = ENABLE_ENCRYPTED_MEDIA;
ENABLE_ENCRYPTED_MEDIA_macosx = $(ENABLE_ENCRYPTED_MEDIA$(WK_MACOS_1014));
ENABLE_ENCRYPTED_MEDIA_MACOS_SINCE_1014 = ENABLE_ENCRYPTED_MEDIA;

ENABLE_EXPERIMENTAL_FEATURES = $(ENABLE_EXPERIMENTAL_FEATURES_$(WK_RELOCATABLE_FRAMEWORKS));
ENABLE_EXPERIMENTAL_FEATURES_YES = ENABLE_EXPERIMENTAL_FEATURES;

ENABLE_FAST_JIT_PERMISSIONS = $(ENABLE_FAST_JIT_PERMISSIONS_$(WK_PLATFORM_NAME));
ENABLE_FAST_JIT_PERMISSIONS_iphoneos[arch=arm64*] = $(ENABLE_FAST_JIT_PERMISSIONS_iphoneos_$(USE_INTERNAL_SDK));
ENABLE_FAST_JIT_PERMISSIONS_iphoneos_YES = ENABLE_FAST_JIT_PERMISSIONS;
ENABLE_FAST_JIT_PERMISSIONS_iosmac = ;

ENABLE_FILTERS_LEVEL_2 = ENABLE_FILTERS_LEVEL_2;

ENABLE_FTL_JIT = $(ENABLE_FTL_JIT_$(WK_PLATFORM_NAME))
ENABLE_FTL_JIT_macosx = ENABLE_FTL_JIT;
ENABLE_FTL_JIT_iphoneos = ENABLE_FTL_JIT;
ENABLE_FTL_JIT_iosmac = ENABLE_FTL_JIT;
ENABLE_FTL_JIT_watchos = ENABLE_FTL_JIT;
ENABLE_FTL_JIT_appletvos = ENABLE_FTL_JIT;

ENABLE_FULLSCREEN_API = $(ENABLE_FULLSCREEN_API_$(WK_PLATFORM_NAME));
ENABLE_FULLSCREEN_API_iphoneos = $(ENABLE_FULLSCREEN_API$(WK_IOS_12));
ENABLE_FULLSCREEN_API_iphonesimulator = $(ENABLE_FULLSCREEN_API$(WK_IOS_12));
ENABLE_FULLSCREEN_API_IOS_SINCE_12 = ENABLE_FULLSCREEN_API;
ENABLE_FULLSCREEN_API_macosx = ENABLE_FULLSCREEN_API;

ENABLE_GAMEPAD = $(ENABLE_GAMEPAD_$(WK_PLATFORM_NAME));
ENABLE_GAMEPAD_iphoneos = ENABLE_GAMEPAD;
ENABLE_GAMEPAD_iosmac = ENABLE_GAMEPAD;
ENABLE_GAMEPAD_iphonesimulator = ENABLE_GAMEPAD;
ENABLE_GAMEPAD_appletvos = ENABLE_GAMEPAD;
ENABLE_GAMEPAD_appletvsimulator = ENABLE_GAMEPAD;
ENABLE_GAMEPAD_macosx = ENABLE_GAMEPAD;

ENABLE_GEOLOCATION = $(ENABLE_GEOLOCATION_$(WK_PLATFORM_NAME));
ENABLE_GEOLOCATION_iphoneos = ENABLE_GEOLOCATION;
ENABLE_GEOLOCATION_iosmac = ENABLE_GEOLOCATION;
ENABLE_GEOLOCATION_iphonesimulator = ENABLE_GEOLOCATION;
ENABLE_GEOLOCATION_macosx = ENABLE_GEOLOCATION;

ENABLE_ICONDATABASE = $(ENABLE_ICONDATABASE_$(WK_PLATFORM_NAME));
ENABLE_ICONDATABASE_macosx = ENABLE_ICONDATABASE;

ENABLE_INDEXED_DATABASE = ENABLE_INDEXED_DATABASE;

ENABLE_INDEXED_DATABASE_IN_WORKERS = ENABLE_INDEXED_DATABASE_IN_WORKERS;

ENABLE_INPUT_TYPE_COLOR = ENABLE_INPUT_TYPE_COLOR;

ENABLE_INPUT_TYPE_DATE = $(ENABLE_INPUT_TYPE_DATE_$(WK_PLATFORM_NAME));
ENABLE_INPUT_TYPE_DATE_iphoneos = ENABLE_INPUT_TYPE_DATE;
ENABLE_INPUT_TYPE_DATE_iphonesimulator = ENABLE_INPUT_TYPE_DATE;
ENABLE_INPUT_TYPE_DATE_watchos = ENABLE_INPUT_TYPE_DATE;
ENABLE_INPUT_TYPE_DATE_watchsimulator = ENABLE_INPUT_TYPE_DATE;

ENABLE_INPUT_TYPE_DATETIMELOCAL = $(ENABLE_INPUT_TYPE_DATETIMELOCAL_$(WK_PLATFORM_NAME));
ENABLE_INPUT_TYPE_DATETIMELOCAL_iphoneos = ENABLE_INPUT_TYPE_DATETIMELOCAL;
ENABLE_INPUT_TYPE_DATETIMELOCAL_iphonesimulator = ENABLE_INPUT_TYPE_DATETIMELOCAL;
ENABLE_INPUT_TYPE_DATETIMELOCAL_watchos = ENABLE_INPUT_TYPE_DATETIMELOCAL;
ENABLE_INPUT_TYPE_DATETIMELOCAL_watchsimulator = ENABLE_INPUT_TYPE_DATETIMELOCAL;

ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE = ;

ENABLE_INPUT_TYPE_MONTH = $(ENABLE_INPUT_TYPE_MONTH_$(WK_PLATFORM_NAME));
ENABLE_INPUT_TYPE_MONTH_iphoneos = ENABLE_INPUT_TYPE_MONTH;
ENABLE_INPUT_TYPE_MONTH_iphonesimulator = ENABLE_INPUT_TYPE_MONTH;
ENABLE_INPUT_TYPE_MONTH_watchos = ENABLE_INPUT_TYPE_MONTH;
ENABLE_INPUT_TYPE_MONTH_watchsimulator = ENABLE_INPUT_TYPE_MONTH;

ENABLE_INPUT_TYPE_TIME = $(ENABLE_INPUT_TYPE_TIME_$(WK_PLATFORM_NAME));
ENABLE_INPUT_TYPE_TIME_iphoneos = ENABLE_INPUT_TYPE_TIME;
ENABLE_INPUT_TYPE_TIME_iphonesimulator = ENABLE_INPUT_TYPE_TIME;
ENABLE_INPUT_TYPE_TIME_watchos = ENABLE_INPUT_TYPE_TIME;
ENABLE_INPUT_TYPE_TIME_watchsimulator = ENABLE_INPUT_TYPE_TIME;

ENABLE_INPUT_TYPE_WEEK = $(ENABLE_INPUT_TYPE_WEEK_$(WK_PLATFORM_NAME));
ENABLE_INPUT_TYPE_WEEK_iphoneos = ENABLE_INPUT_TYPE_WEEK;
ENABLE_INPUT_TYPE_WEEK_iphonesimulator = ENABLE_INPUT_TYPE_WEEK;
ENABLE_INPUT_TYPE_WEEK_watchos = ENABLE_INPUT_TYPE_WEEK;
ENABLE_INPUT_TYPE_WEEK_watchsimulator = ENABLE_INPUT_TYPE_WEEK;

ENABLE_INSPECTOR_ALTERNATE_DISPATCHERS = ENABLE_INSPECTOR_ALTERNATE_DISPATCHERS;

ENABLE_INTERSECTION_OBSERVER = ENABLE_INTERSECTION_OBSERVER;

ENABLE_INTL = ENABLE_INTL;

ENABLE_IOS_GESTURE_EVENTS = $(ENABLE_IOS_GESTURE_EVENTS_$(WK_COCOA_TOUCH)_WITH_INTERNAL_SDK_$(USE_INTERNAL_SDK));
ENABLE_IOS_GESTURE_EVENTS_cocoatouch_WITH_INTERNAL_SDK_YES = ENABLE_IOS_GESTURE_EVENTS;

ENABLE_IOS_TOUCH_EVENTS = $(ENABLE_IOS_TOUCH_EVENTS_$(WK_COCOA_TOUCH)_WITH_INTERNAL_SDK_$(USE_INTERNAL_SDK));
ENABLE_IOS_TOUCH_EVENTS_cocoatouch_WITH_INTERNAL_SDK_YES = ENABLE_IOS_TOUCH_EVENTS;

ENABLE_KEYBOARD_CODE_ATTRIBUTE = ENABLE_KEYBOARD_CODE_ATTRIBUTE;

ENABLE_KEYBOARD_KEY_ATTRIBUTE = ENABLE_KEYBOARD_KEY_ATTRIBUTE;

ENABLE_LAYOUT_FORMATTING_CONTEXT = ENABLE_LAYOUT_FORMATTING_CONTEXT;

ENABLE_LEGACY_CSS_VENDOR_PREFIXES = ENABLE_LEGACY_CSS_VENDOR_PREFIXES;

ENABLE_LEGACY_CUSTOM_PROTOCOL_MANAGER = ENABLE_LEGACY_CUSTOM_PROTOCOL_MANAGER;

ENABLE_LEGACY_ENCRYPTED_MEDIA = $(ENABLE_LEGACY_ENCRYPTED_MEDIA_$(WK_PLATFORM_NAME));
ENABLE_LEGACY_ENCRYPTED_MEDIA_iphoneos = ENABLE_LEGACY_ENCRYPTED_MEDIA;
ENABLE_LEGACY_ENCRYPTED_MEDIA_iphonesimulator = ENABLE_LEGACY_ENCRYPTED_MEDIA;
ENABLE_LEGACY_ENCRYPTED_MEDIA_watchos = ENABLE_LEGACY_ENCRYPTED_MEDIA;
ENABLE_LEGACY_ENCRYPTED_MEDIA_watchsimulator = ENABLE_LEGACY_ENCRYPTED_MEDIA;
ENABLE_LEGACY_ENCRYPTED_MEDIA_appletvos = ENABLE_LEGACY_ENCRYPTED_MEDIA;
ENABLE_LEGACY_ENCRYPTED_MEDIA_appletvsimulator = ENABLE_LEGACY_ENCRYPTED_MEDIA;
ENABLE_LEGACY_ENCRYPTED_MEDIA_macosx = ENABLE_LEGACY_ENCRYPTED_MEDIA;

ENABLE_LETTERPRESS = $(ENABLE_LETTERPRESS_$(WK_COCOA_TOUCH));
ENABLE_LETTERPRESS_cocoatouch = ENABLE_LETTERPRESS;

ENABLE_MAC_GESTURE_EVENTS = $(ENABLE_MAC_GESTURE_EVENTS_$(WK_PLATFORM_NAME)_WITH_INTERNAL_SDK_$(USE_INTERNAL_SDK));
ENABLE_MAC_GESTURE_EVENTS_macosx_WITH_INTERNAL_SDK_YES = ENABLE_MAC_GESTURE_EVENTS;

ENABLE_MAC_VIDEO_TOOLBOX = $(ENABLE_MAC_VIDEO_TOOLBOX_$(WK_PLATFORM_NAME)_WITH_INTERNAL_SDK_$(USE_INTERNAL_SDK));
ENABLE_MAC_VIDEO_TOOLBOX_macosx_WITH_INTERNAL_SDK_YES = ENABLE_MAC_VIDEO_TOOLBOX;

ENABLE_MATHML = ENABLE_MATHML;

ENABLE_MEDIA_CAPTURE = $(ENABLE_MEDIA_CAPTURE_$(WK_COCOA_TOUCH));
ENABLE_MEDIA_CAPTURE_cocoatouch = ENABLE_MEDIA_CAPTURE;

ENABLE_MEDIA_CONTROLS_SCRIPT = ENABLE_MEDIA_CONTROLS_SCRIPT;

ENABLE_MEDIA_SESSION = ;

ENABLE_MEDIA_SOURCE = $(ENABLE_MEDIA_SOURCE_$(WK_PLATFORM_NAME));
ENABLE_MEDIA_SOURCE_macosx = ENABLE_MEDIA_SOURCE;

ENABLE_MEDIA_STATISTICS = ;

ENABLE_MEDIA_STREAM = $(ENABLE_MEDIA_STREAM_$(WK_PLATFORM_NAME));
ENABLE_MEDIA_STREAM_iphoneos = ENABLE_MEDIA_STREAM;
ENABLE_MEDIA_STREAM_iphonesimulator = ENABLE_MEDIA_STREAM;
ENABLE_MEDIA_STREAM_watchos = ENABLE_MEDIA_STREAM;
ENABLE_MEDIA_STREAM_watchsimulator = ENABLE_MEDIA_STREAM;
ENABLE_MEDIA_STREAM_appletvos = ENABLE_MEDIA_STREAM;
ENABLE_MEDIA_STREAM_appletvsimulator = ENABLE_MEDIA_STREAM;
ENABLE_MEDIA_STREAM_macosx = ENABLE_MEDIA_STREAM;

ENABLE_MEMORY_SAMPLER = ENABLE_MEMORY_SAMPLER;

ENABLE_METER_ELEMENT = ENABLE_METER_ELEMENT;

ENABLE_MHTML = ;

ENABLE_MOUSE_CURSOR_SCALE = $(ENABLE_MOUSE_CURSOR_SCALE_$(WK_PLATFORM_NAME));
ENABLE_MOUSE_CURSOR_SCALE_macosx = ENABLE_MOUSE_CURSOR_SCALE;

ENABLE_NAVIGATOR_STANDALONE = $(ENABLE_NAVIGATOR_STANDALONE_$(WK_COCOA_TOUCH));
ENABLE_NAVIGATOR_STANDALONE_cocoatouch = ENABLE_NAVIGATOR_STANDALONE;

ENABLE_NETWORK_CACHE_SPECULATIVE_REVALIDATION = ENABLE_NETWORK_CACHE_SPECULATIVE_REVALIDATION;

ENABLE_NOTIFICATIONS = $(ENABLE_NOTIFICATIONS_$(WK_PLATFORM_NAME));
ENABLE_NOTIFICATIONS_macosx = ENABLE_NOTIFICATIONS;

ENABLE_OVERFLOW_SCROLLING_TOUCH = $(ENABLE_OVERFLOW_SCROLLING_TOUCH_$(WK_COCOA_TOUCH));
ENABLE_OVERFLOW_SCROLLING_TOUCH_cocoatouch = ENABLE_OVERFLOW_SCROLLING_TOUCH;

ENABLE_PAYMENT_REQUEST = ENABLE_PAYMENT_REQUEST;

ENABLE_PDFKIT_PLUGIN = $(ENABLE_PDFKIT_PLUGIN_$(WK_PLATFORM_NAME));
ENABLE_PDFKIT_PLUGIN_macosx = ENABLE_PDFKIT_PLUGIN;

ENABLE_POINTER_EVENTS = $(ENABLE_POINTER_EVENTS_$(WK_PLATFORM_NAME));
ENABLE_POINTER_EVENTS_iosmac = ENABLE_POINTER_EVENTS;
ENABLE_POINTER_EVENTS_iphoneos = ENABLE_POINTER_EVENTS;
ENABLE_POINTER_EVENTS_iphonesimulator = ENABLE_POINTER_EVENTS;
ENABLE_POINTER_EVENTS_macosx = ENABLE_POINTER_EVENTS;
ENABLE_POINTER_EVENTS_watchos = ENABLE_POINTER_EVENTS;
ENABLE_POINTER_EVENTS_watchsimulator = ENABLE_POINTER_EVENTS;

ENABLE_POINTER_LOCK = $(ENABLE_POINTER_LOCK_$(WK_PLATFORM_NAME));
ENABLE_POINTER_LOCK_macosx = ENABLE_POINTER_LOCK;

ENABLE_PUBLIC_SUFFIX_LIST = ENABLE_PUBLIC_SUFFIX_LIST;

ENABLE_QUOTA = ;

ENABLE_REMOTE_INSPECTOR = ENABLE_REMOTE_INSPECTOR;

ENABLE_RESIZE_OBSERVER = ENABLE_RESIZE_OBSERVER;

ENABLE_RESOLUTION_MEDIA_QUERY = ;

ENABLE_RESOURCE_LOAD_STATISTICS = ENABLE_RESOURCE_LOAD_STATISTICS;

ENABLE_RESOURCE_USAGE = ENABLE_RESOURCE_USAGE;

ENABLE_RUBBER_BANDING = $(ENABLE_RUBBER_BANDING_$(WK_PLATFORM_NAME));
ENABLE_RUBBER_BANDING_macosx = ENABLE_RUBBER_BANDING;

ENABLE_SANDBOX_EXTENSIONS = ENABLE_SANDBOX_EXTENSIONS;

ENABLE_SERVER_PRECONNECT = ENABLE_SERVER_PRECONNECT;

ENABLE_SERVICE_CONTROLS = $(ENABLE_SERVICE_CONTROLS_$(WK_PLATFORM_NAME));
ENABLE_SERVICE_CONTROLS_macosx = ENABLE_SERVICE_CONTROLS;

ENABLE_SERVICE_WORKER = ENABLE_SERVICE_WORKER;

ENABLE_SHAREABLE_RESOURCE = ENABLE_SHAREABLE_RESOURCE;

ENABLE_SPEECH_SYNTHESIS = $(ENABLE_SPEECH_SYNTHESIS_$(WK_PLATFORM_NAME));
ENABLE_SPEECH_SYNTHESIS_iphoneos = ENABLE_SPEECH_SYNTHESIS;
ENABLE_SPEECH_SYNTHESIS_iphonesimulator = ENABLE_SPEECH_SYNTHESIS;
ENABLE_SPEECH_SYNTHESIS_watchos = ENABLE_SPEECH_SYNTHESIS;
ENABLE_SPEECH_SYNTHESIS_watchsimulator = ENABLE_SPEECH_SYNTHESIS;
ENABLE_SPEECH_SYNTHESIS_appletvos = ENABLE_SPEECH_SYNTHESIS;
ENABLE_SPEECH_SYNTHESIS_appletvsimulator = ENABLE_SPEECH_SYNTHESIS;
ENABLE_SPEECH_SYNTHESIS_macosx = ENABLE_SPEECH_SYNTHESIS;

ENABLE_STREAMS_API = ENABLE_STREAMS_API;

ENABLE_SVG_FONTS = ENABLE_SVG_FONTS;

ENABLE_TELEPHONE_NUMBER_DETECTION = ENABLE_TELEPHONE_NUMBER_DETECTION;

ENABLE_TEXT_AUTOSIZING = ENABLE_TEXT_AUTOSIZING;

// FIXME: Remove the USE_INTERNAL_SDK condition once we support touch events when building for iOS with
// the public SDK. See <https://webkit.org/b/179167>.
ENABLE_TOUCH_EVENTS = $(ENABLE_TOUCH_EVENTS_$(WK_COCOA_TOUCH)_WITH_INTERNAL_SDK_$(USE_INTERNAL_SDK));
ENABLE_TOUCH_EVENTS_cocoatouch_WITH_INTERNAL_SDK_YES = ENABLE_TOUCH_EVENTS;

ENABLE_USERSELECT_ALL = ENABLE_USERSELECT_ALL;

ENABLE_USER_MESSAGE_HANDLERS = ENABLE_USER_MESSAGE_HANDLERS;

ENABLE_VARIATION_FONTS = $(ENABLE_VARIATION_FONTS_$(WK_PLATFORM_NAME));
ENABLE_VARIATION_FONTS_iphoneos = ENABLE_VARIATION_FONTS;
ENABLE_VARIATION_FONTS_iosmac = ENABLE_VARIATION_FONTS;
ENABLE_VARIATION_FONTS_iphonesimulator = ENABLE_VARIATION_FONTS;
ENABLE_VARIATION_FONTS_macosx = $(ENABLE_VARIATION_FONTS$(WK_MACOS_1013));
ENABLE_VARIATION_FONTS_MACOS_SINCE_1013 = ENABLE_VARIATION_FONTS;

ENABLE_VIDEO = ENABLE_VIDEO;

ENABLE_VIDEO_PRESENTATION_MODE = ENABLE_VIDEO_PRESENTATION_MODE;

ENABLE_VIDEO_TRACK = ENABLE_VIDEO_TRACK;

ENABLE_VIDEO_USES_ELEMENT_FULLSCREEN = $(ENABLE_VIDEO_USES_ELEMENT_FULLSCREEN_$(WK_PLATFORM_NAME));
ENABLE_VIDEO_USES_ELEMENT_FULLSCREEN_macosx = ENABLE_VIDEO_USES_ELEMENT_FULLSCREEN;

ENABLE_WEBASSEMBLY = ;

ENABLE_WEBASSEMBLY_STREAMING_API = ;

ENABLE_WEBDRIVER_MOUSE_INTERACTIONS = $(ENABLE_WEBDRIVER_MOUSE_INTERACTIONS_$(WK_PLATFORM_NAME));
ENABLE_WEBDRIVER_MOUSE_INTERACTIONS_macosx = ENABLE_WEBDRIVER_MOUSE_INTERACTIONS;

ENABLE_WEBDRIVER_KEYBOARD_INTERACTIONS = ENABLE_WEBDRIVER_KEYBOARD_INTERACTIONS;

ENABLE_WEBDRIVER_TOUCH_INTERACTIONS = $(ENABLE_WEBDRIVER_TOUCH_INTERACTIONS_$(WK_PLATFORM_NAME));
ENABLE_WEBDRIVER_TOUCH_INTERACTIONS_iphoneos = ENABLE_WEBDRIVER_TOUCH_INTERACTIONS;

ENABLE_WEBGL = ENABLE_WEBGL;

ENABLE_WEBGL2 = ENABLE_WEBGL2;

ENABLE_WEBGPU = $(ENABLE_WEBGPU_$(WK_PLATFORM_NAME));
ENABLE_WEBGPU_iphoneos = $(ENABLE_WEBGPU$(WK_IOS_11));
ENABLE_WEBGPU_IOS_SINCE_11 = ENABLE_WEBGPU;
ENABLE_WEBGPU_watchos = ENABLE_WEBGPU;
ENABLE_WEBGPU_appletvos = ENABLE_WEBGPU;
ENABLE_WEBGPU_macosx = $(ENABLE_WEBGPU$(WK_MACOS_1013));
ENABLE_WEBGPU_MACOS_SINCE_1013 = ENABLE_WEBGPU;

ENABLE_WEB_API_STATISTICS = ;

ENABLE_WEB_AUDIO = ENABLE_WEB_AUDIO;

ENABLE_WEB_AUTHN = $(ENABLE_WEB_AUTHN_$(WK_PLATFORM_NAME));
ENABLE_WEB_AUTHN_iphoneos = ENABLE_WEB_AUTHN;
ENABLE_WEB_AUTHN_iphonesimulator = ENABLE_WEB_AUTHN;
ENABLE_WEB_AUTHN_macosx = ENABLE_WEB_AUTHN;

ENABLE_WEB_CRYPTO = ENABLE_WEB_CRYPTO;

ENABLE_WEB_PROCESS_SANDBOX = ENABLE_WEB_PROCESS_SANDBOX;

ENABLE_WEB_RTC = $(ENABLE_WEB_RTC_$(WK_PLATFORM_NAME));
ENABLE_WEB_RTC_iphoneos = ENABLE_WEB_RTC;
ENABLE_WEB_RTC_iphonesimulator = ENABLE_WEB_RTC;
ENABLE_WEB_RTC_macosx = ENABLE_WEB_RTC;

ENABLE_WIRELESS_PLAYBACK_TARGET = ENABLE_WIRELESS_PLAYBACK_TARGET;

ENABLE_XSLT = ENABLE_XSLT;

FEATURE_DEFINES = $(ENABLE_3D_TRANSFORMS) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCESSIBILITY_ISOLATED_TREE) $(ENABLE_APPLE_PAY) $(ENABLE_APPLE_PAY_SESSION_V3) $(ENABLE_APPLE_PAY_SESSION_V4) $(ENABLE_APPLICATION_MANIFEST) $(ENABLE_ATTACHMENT_ELEMENT) $(ENABLE_AVF_CAPTIONS) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CONTENT_FILTERING) $(ENABLE_CSS3_TEXT) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_CONIC_GRADIENTS) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_PAINTING_API) $(ENABLE_CSS_SCROLL_SNAP) $(ENABLE_CSS_SELECTORS_LEVEL4) $(ENABLE_CSS_TRAILING_WORD) $(ENABLE_CSS_TYPED_OM) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_C_LOOP) $(ENABLE_DARK_MODE_CSS) $(ENABLE_DATACUE_VALUE) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DATA_INTERACTION) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DRAG_SUPPORT) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_EXPERIMENTAL_FEATURES) $(ENABLE_FAST_JIT_PERMISSIONS) $(ENABLE_FILTERS_LEVEL_2) $(ENABLE_FTL_JIT) $(ENABLE_FULLSCREEN_API) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INDEXED_DATABASE_IN_WORKERS) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_INSPECTOR_ALTERNATE_DISPATCHERS) $(ENABLE_INTERSECTION_OBSERVER) $(ENABLE_INTL) $(ENABLE_IOS_GESTURE_EVENTS) $(ENABLE_IOS_TOUCH_EVENTS) $(ENABLE_JIT) $(ENABLE_KEYBOARD_CODE_ATTRIBUTE) $(ENABLE_KEYBOARD_KEY_ATTRIBUTE) $(ENABLE_LAYOUT_FORMATTING_CONTEXT) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_CUSTOM_PROTOCOL_MANAGER) $(ENABLE_LEGACY_ENCRYPTED_MEDIA) $(ENABLE_LETTERPRESS) $(ENABLE_MAC_GESTURE_EVENTS) $(ENABLE_MAC_VIDEO_TOOLBOX) $(ENABLE_MATHML) $(ENABLE_MEDIA_CAPTURE) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SESSION) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_MEDIA_STREAM) $(ENABLE_MEMORY_SAMPLER) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_STANDALONE) $(ENABLE_NETWORK_CACHE_SPECULATIVE_REVALIDATION) $(ENABLE_NOTIFICATIONS) $(ENABLE_OVERFLOW_SCROLLING_TOUCH) $(ENABLE_PAYMENT_REQUEST) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_POINTER_EVENTS) $(ENABLE_POINTER_LOCK) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_RESIZE_OBSERVER) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_RESOURCE_LOAD_STATISTICS) $(ENABLE_RESOURCE_USAGE) $(ENABLE_RUBBER_BANDING) $(ENABLE_SANDBOX_EXTENSIONS) $(ENABLE_SERVER_PRECONNECT) $(ENABLE_SERVICE_CONTROLS) $(ENABLE_SERVICE_WORKER) $(ENABLE_SHAREABLE_RESOURCE) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_STREAMS_API) $(ENABLE_SVG_FONTS) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_USERSELECT_ALL) $(ENABLE_USER_MESSAGE_HANDLERS) $(ENABLE_VARIATION_FONTS) $(ENABLE_VIDEO) $(ENABLE_VIDEO_PRESENTATION_MODE) $(ENABLE_VIDEO_TRACK) $(ENABLE_VIDEO_USES_ELEMENT_FULLSCREEN) $(ENABLE_WEBASSEMBLY) $(ENABLE_WEBASSEMBLY_STREAMING_API) $(ENABLE_WEBDRIVER_MOUSE_INTERACTIONS) $(ENABLE_WEBDRIVER_KEYBOARD_INTERACTIONS) $(ENABLE_WEBDRIVER_TOUCH_INTERACTIONS) $(ENABLE_WEBGL) $(ENABLE_WEBGL2) $(ENABLE_WEBGPU) $(ENABLE_WEB_API_STATISTICS) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_AUTHN) $(ENABLE_WEB_CRYPTO) $(ENABLE_WEB_PROCESS_SANDBOX) $(ENABLE_WEB_RTC) $(ENABLE_WIRELESS_PLAYBACK_TARGET) $(ENABLE_XSLT);
