// Copyright (C) 2009-2018 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_ACCELERATED_OVERFLOW_SCROLLING = $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING_$(WK_COCOA_TOUCH));
ENABLE_ACCELERATED_OVERFLOW_SCROLLING_cocoatouch = ENABLE_ACCELERATED_OVERFLOW_SCROLLING;

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_iphoneos = ENABLE_CONTENT_FILTERING;
ENABLE_CONTENT_FILTERING_iphonesimulator = ENABLE_CONTENT_FILTERING;
ENABLE_CONTENT_FILTERING_macosx = ENABLE_CONTENT_FILTERING;

ENABLE_CSS3_TEXT = ;

ENABLE_CSS_BOX_DECORATION_BREAK = ENABLE_CSS_BOX_DECORATION_BREAK;

ENABLE_CSS_COMPOSITING = ENABLE_CSS_COMPOSITING;

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_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_CURSOR_VISIBILITY = ENABLE_CURSOR_VISIBILITY;

ENABLE_CUSTOM_SCHEME_HANDLER = ;

ENABLE_DARK_MODE_CSS = $(ENABLE_DARK_MODE_CSS_$(WK_PLATFORM_NAME));
ENABLE_DARK_MODE_CSS_macosx = ENABLE_DARK_MODE_CSS;

ENABLE_DASHBOARD_SUPPORT = $(ENABLE_DASHBOARD_SUPPORT_$(WK_PLATFORM_NAME));
ENABLE_DASHBOARD_SUPPORT_macosx = ENABLE_DASHBOARD_SUPPORT;

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_DATETIMELOCAL = $(ENABLE_INPUT_TYPE_DATETIMELOCAL_$(WK_COCOA_TOUCH));
ENABLE_INPUT_TYPE_DATETIMELOCAL_cocoatouch = ENABLE_INPUT_TYPE_DATETIMELOCAL;

ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE = ;

ENABLE_INPUT_TYPE_DATE = $(ENABLE_INPUT_TYPE_DATE_$(WK_COCOA_TOUCH));
ENABLE_INPUT_TYPE_DATE_cocoatouch = ENABLE_INPUT_TYPE_DATE;

ENABLE_INPUT_TYPE_MONTH = $(ENABLE_INPUT_TYPE_MONTH_$(WK_COCOA_TOUCH));
ENABLE_INPUT_TYPE_MONTH_cocoatouch = ENABLE_INPUT_TYPE_MONTH;

ENABLE_INPUT_TYPE_TIME = $(ENABLE_INPUT_TYPE_TIME_$(WK_COCOA_TOUCH));
ENABLE_INPUT_TYPE_TIME_cocoatouch = ENABLE_INPUT_TYPE_TIME;

ENABLE_INPUT_TYPE_WEEK = $(ENABLE_INPUT_TYPE_WEEK_$(WK_COCOA_TOUCH));
ENABLE_INPUT_TYPE_WEEK_cocoatouch = 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_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_CONTENT_UTILS = ;

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

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

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_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_RESOLUTION_MEDIA_QUERY = ;

ENABLE_RESOURCE_LOAD_STATISTICS = ENABLE_RESOURCE_LOAD_STATISTICS;
ENABLE_WEB_API_STATISTICS = ;

ENABLE_RESOURCE_USAGE = ENABLE_RESOURCE_USAGE;

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

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

ENABLE_SERVICE_WORKER = ENABLE_SERVICE_WORKER;

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_WEB_CRYPTO = ENABLE_WEB_CRYPTO;

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_WEBGL = ENABLE_WEBGL;

ENABLE_WEBGL2 = ENABLE_WEBGL2;

ENABLE_WEBGPU = $(ENABLE_WEBGPU_$(WK_PLATFORM_NAME));
ENABLE_WEBGPU_iphoneos = $(ENABLE_WEBGPU$(WK_IOS_1100));
ENABLE_WEBGPU_IOS_SINCE_1100 = 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_WEBMETAL = $(ENABLE_WEBMETAL_$(WK_PLATFORM_NAME));
ENABLE_WEBMETAL_iphoneos = ENABLE_WEBMETAL;
ENABLE_WEBMETAL_watchos = ENABLE_WEBMETAL;
ENABLE_WEBMETAL_appletvos = ENABLE_WEBMETAL;
ENABLE_WEBMETAL_macosx = ENABLE_WEBMETAL;

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[arch=x86_64] = ENABLE_WEB_AUTHN;

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[arch=x86_64] = 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_ACCELERATED_OVERFLOW_SCROLLING) $(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_C_LOOP) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CONTENT_FILTERING) $(ENABLE_CSS3_TEXT) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(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_CSS_CONIC_GRADIENTS) $(ENABLE_DARK_MODE_CSS) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATA_INTERACTION) $(ENABLE_DATACUE_VALUE) $(ENABLE_DATALIST_ELEMENT) $(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_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(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_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NAVIGATOR_STANDALONE) $(ENABLE_NOTIFICATIONS) $(ENABLE_PAYMENT_REQUEST) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_POINTER_EVENTS) $(ENABLE_POINTER_LOCK) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_RESOURCE_LOAD_STATISTICS) $(ENABLE_RESOURCE_USAGE) $(ENABLE_RUBBER_BANDING) $(ENABLE_SERVICE_CONTROLS) $(ENABLE_SERVICE_WORKER) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_STREAMS_API) $(ENABLE_WEB_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_USER_MESSAGE_HANDLERS) $(ENABLE_USERSELECT_ALL) $(ENABLE_VARIATION_FONTS) $(ENABLE_VIDEO) $(ENABLE_VIDEO_PRESENTATION_MODE) $(ENABLE_VIDEO_TRACK) $(ENABLE_VIDEO_USES_ELEMENT_FULLSCREEN) $(ENABLE_WEB_API_STATISTICS) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_AUTHN) $(ENABLE_WEB_RTC) $(ENABLE_WEBASSEMBLY) $(ENABLE_WEBASSEMBLY_STREAMING_API) $(ENABLE_WEBGL) $(ENABLE_WEBGL2) $(ENABLE_WEBGPU) $(ENABLE_WEBMETAL) $(ENABLE_WIRELESS_PLAYBACK_TARGET) $(ENABLE_XSLT);
