blob: 75b06fe1d66be1cd96c8ec47a6fcfbba6abae9ce [file] [log] [blame]
aestes@apple.com05f4fdd2010-07-31 00:28:37 +00001// Copyright (C) 2009, 2010 Apple Inc. All rights reserved.
levin@chromium.orgeb623d72009-07-21 09:53:37 +00002// Copyright (C) 2009 Google Inc. All rights reserved.
weinig@apple.com60621c92009-04-20 18:06:07 +00003//
4// Redistribution and use in source and binary forms, with or without
5// modification, are permitted provided that the following conditions
6// are met:
7// 1. Redistributions of source code must retain the above copyright
8// notice, this list of conditions and the following disclaimer.
9// 2. Redistributions in binary form must reproduce the above copyright
10// notice, this list of conditions and the following disclaimer in the
11// documentation and/or other materials provided with the distribution.
12//
13// THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
14// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
16// PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR
17// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
18// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
19// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
20// PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
21// OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
22// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
23// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
24
ddkilzer@apple.com3dc77772009-04-17 23:11:46 +000025// The contents of this file must be kept in sync with FeatureDefines.xcconfig in JavaScriptCore,
mrowe@apple.comcd194ef2011-04-11 23:49:26 +000026// WebCore, WebKit and WebKit2. Also the default values of the ENABLE_FEATURE_NAME macros in
27// build-webkit should match the values below, but they do not need to be in the same order.
ddkilzer@apple.com3dc77772009-04-17 23:11:46 +000028
sfalken@apple.com81acc5b2010-01-20 17:51:44 +000029// Keep this list of features (not enabled/disabled state) in sync with FeatureDefines.vsprops
30// and FeatureDefinesCairo.vsprops in WebKitLibraries/win/tools/vsprops.
31
ddkilzer@apple.com3dc77772009-04-17 23:11:46 +000032// Set any ENABLE_FEATURE_NAME macro to an empty string to disable that feature.
33
eric@webkit.orge3e779a2012-05-03 02:52:16 +000034ENABLE_3D_RENDERING = ENABLE_3D_RENDERING;
35ENABLE_ACCELERATED_2D_CANVAS = ;
36ENABLE_ANIMATION_API = ;
ap@apple.com128f4e72012-03-23 23:55:45 +000037ENABLE_BLOB = ENABLE_BLOB;
eric@webkit.orge3e779a2012-05-03 02:52:16 +000038ENABLE_CHANNEL_MESSAGING = ENABLE_CHANNEL_MESSAGING;
commit-queue@webkit.orgf5584612012-06-19 09:13:52 +000039ENABLE_CSP_NEXT = ;
commit-queue@webkit.orgb885adc2012-10-26 10:20:33 +000040ENABLE_CSS_DEVICE_ADAPTATION = ;
timothy_horton@apple.com3f03ac12012-05-25 06:53:27 +000041ENABLE_CSS_EXCLUSIONS = ENABLE_CSS_EXCLUSIONS;
eric@webkit.orge3e779a2012-05-03 02:52:16 +000042ENABLE_CSS_FILTERS = ENABLE_CSS_FILTERS;
commit-queue@webkit.org656e6522012-08-09 02:29:35 +000043ENABLE_CSS_HIERARCHIES = ;
commit-queue@webkit.org7bf73302012-07-17 07:11:52 +000044ENABLE_CSS_IMAGE_ORIENTATION = ;
commit-queue@webkit.orgd5058402012-05-29 14:44:38 +000045ENABLE_CSS_IMAGE_RESOLUTION = ;
timothy_horton@apple.com3f03ac12012-05-25 06:53:27 +000046ENABLE_CSS_REGIONS = ENABLE_CSS_REGIONS;
simon.fraser@apple.com5cc8c732012-07-23 17:45:43 +000047ENABLE_CSS_SHADERS = ENABLE_CSS_SHADERS;
commit-queue@webkit.org68423ae2012-10-05 04:56:44 +000048ENABLE_CSS_COMPOSITING = ENABLE_CSS_COMPOSITING;
simon.fraser@apple.com8b810602012-07-23 21:03:45 +000049ENABLE_CSS_STICKY_POSITION = ENABLE_CSS_STICKY_POSITION;
macpherson@chromium.org0219c0d2012-05-15 04:39:07 +000050ENABLE_CSS_VARIABLES = ;
commit-queue@webkit.org80d18442012-10-18 18:43:15 +000051ENABLE_CSS3_CONDITIONAL_RULES = ;
commit-queue@webkit.org85886a92012-10-19 18:53:11 +000052ENABLE_CSS3_TEXT = ;
commit-queue@webkit.org3401b2d2012-06-05 11:32:22 +000053ENABLE_CUSTOM_SCHEME_HANDLER = ;
mlilek@apple.com1711d482012-02-14 23:40:29 +000054ENABLE_DASHBOARD_SUPPORT = $(ENABLE_DASHBOARD_SUPPORT_$(REAL_PLATFORM_NAME));
55ENABLE_DASHBOARD_SUPPORT_macosx = ENABLE_DASHBOARD_SUPPORT;
tkent@chromium.org3d897372012-07-21 02:00:46 +000056ENABLE_DATALIST_ELEMENT = ;
eric@webkit.orge3e779a2012-05-03 02:52:16 +000057ENABLE_DATA_TRANSFER_ITEMS = ;
tkent@chromium.org43921e62012-07-22 10:59:32 +000058ENABLE_DETAILS_ELEMENT = ENABLE_DETAILS_ELEMENT;
eric@webkit.orge3e779a2012-05-03 02:52:16 +000059ENABLE_DEVICE_ORIENTATION = ;
commit-queue@webkit.orge1bba8e2012-07-10 05:45:21 +000060ENABLE_DIALOG_ELEMENT = ;
eric@webkit.orge3e779a2012-05-03 02:52:16 +000061ENABLE_DIRECTORY_UPLOAD = ;
jianli@chromium.org9acde012012-10-17 00:14:47 +000062ENABLE_DRAGGABLE_REGION = ;
jer.noble@apple.coma39e5ce2012-10-12 18:08:40 +000063ENABLE_ENCRYPTED_MEDIA = $(ENABLE_ENCRYPTED_MEDIA_$(REAL_PLATFORM_NAME));
64ENABLE_ENCRYPTED_MEDIA_macosx = $(ENABLE_ENCRYPTED_MEDIA_macosx_$(TARGET_MAC_OS_X_VERSION_MAJOR));
65ENABLE_ENCRYPTED_MEDIA_macosx_1070 = ;
66ENABLE_ENCRYPTED_MEDIA_macosx_1080 = ;
67ENABLE_ENCRYPTED_MEDIA_macosx_1090 = ENABLE_ENCRYPTED_MEDIA;
eric@webkit.orge3e779a2012-05-03 02:52:16 +000068ENABLE_FILE_SYSTEM = ;
aestes@apple.com05f4fdd2010-07-31 00:28:37 +000069ENABLE_FILTERS = $(ENABLE_FILTERS_$(REAL_PLATFORM_NAME));
70ENABLE_FILTERS_macosx = ENABLE_FILTERS;
eric@webkit.orge3e779a2012-05-03 02:52:16 +000071ENABLE_FULLSCREEN_API = ENABLE_FULLSCREEN_API;
72ENABLE_GAMEPAD = ;
73ENABLE_GEOLOCATION = ENABLE_GEOLOCATION;
commit-queue@webkit.org9b4ec582012-10-09 05:45:48 +000074ENABLE_HIDDEN_PAGE_DOM_TIMER_THROTTLING = $(HIDDEN_PAGE_DOM_TIMER_THROTTLING_$(REAL_PLATFORM_NAME));
75ENABLE_HIDDEN_PAGE_DOM_TIMER_THROTTLING_macosx = HIDDEN_PAGE_DOM_TIMER_THROTTLING;
eric@webkit.orge3e779a2012-05-03 02:52:16 +000076ENABLE_HIGH_DPI_CANVAS = ENABLE_HIGH_DPI_CANVAS;
aestes@apple.com05f4fdd2010-07-31 00:28:37 +000077ENABLE_ICONDATABASE = $(ENABLE_ICONDATABASE_$(REAL_PLATFORM_NAME));
78ENABLE_ICONDATABASE_macosx = ENABLE_ICONDATABASE;
eric@webkit.orga1a6e122012-05-07 22:02:47 +000079ENABLE_IFRAME_SEAMLESS = ENABLE_IFRAME_SEAMLESS;
eric@webkit.orge3e779a2012-05-03 02:52:16 +000080ENABLE_INDEXED_DATABASE = ;
81ENABLE_INPUT_SPEECH = ;
82ENABLE_INPUT_TYPE_COLOR = ;
tkent@chromium.orgdfc91a42011-10-05 06:06:43 +000083ENABLE_INPUT_TYPE_DATE = $(ENABLE_INPUT_TYPE_DATE_$(REAL_PLATFORM_NAME));
84ENABLE_INPUT_TYPE_DATE_iphoneos = ENABLE_INPUT_TYPE_DATE;
85ENABLE_INPUT_TYPE_DATE_iphonesimulator = ENABLE_INPUT_TYPE_DATE;
86ENABLE_INPUT_TYPE_DATETIME = $(ENABLE_INPUT_TYPE_DATETIME_$(REAL_PLATFORM_NAME));
87ENABLE_INPUT_TYPE_DATETIME_iphoneos = ENABLE_INPUT_TYPE_DATETIME;
88ENABLE_INPUT_TYPE_DATETIME_iphonesimulator = ENABLE_INPUT_TYPE_DATETIME;
89ENABLE_INPUT_TYPE_DATETIMELOCAL = $(ENABLE_INPUT_TYPE_DATETIMELOCAL_$(REAL_PLATFORM_NAME));
90ENABLE_INPUT_TYPE_DATETIMELOCAL_iphoneos = ENABLE_INPUT_TYPE_DATETIMELOCAL;
91ENABLE_INPUT_TYPE_DATETIMELOCAL_iphonesimulator = ENABLE_INPUT_TYPE_DATETIMELOCAL;
92ENABLE_INPUT_TYPE_MONTH = $(ENABLE_INPUT_TYPE_MONTH_$(REAL_PLATFORM_NAME));
93ENABLE_INPUT_TYPE_MONTH_iphoneos = ENABLE_INPUT_TYPE_MONTH;
94ENABLE_INPUT_TYPE_MONTH_iphonesimulator = ENABLE_INPUT_TYPE_MONTH;
95ENABLE_INPUT_TYPE_TIME = $(ENABLE_INPUT_TYPE_TIME_$(REAL_PLATFORM_NAME));
96ENABLE_INPUT_TYPE_TIME_iphoneos = ENABLE_INPUT_TYPE_TIME;
97ENABLE_INPUT_TYPE_TIME_iphonesimulator = ENABLE_INPUT_TYPE_TIME;
98ENABLE_INPUT_TYPE_WEEK = $(ENABLE_INPUT_TYPE_WEEK_$(REAL_PLATFORM_NAME));
99ENABLE_INPUT_TYPE_WEEK_iphoneos = ENABLE_INPUT_TYPE_WEEK;
100ENABLE_INPUT_TYPE_WEEK_iphonesimulator = ENABLE_INPUT_TYPE_WEEK;
dglazkov@chromium.org18a33932009-04-30 18:28:12 +0000101ENABLE_JAVASCRIPT_DEBUGGER = ENABLE_JAVASCRIPT_DEBUGGER;
ddkilzer@apple.comba58a612012-06-04 14:55:26 +0000102ENABLE_LEGACY_CSS_VENDOR_PREFIXES = ENABLE_LEGACY_CSS_VENDOR_PREFIXES;
jonlee@apple.com2ca84e62012-04-22 23:01:53 +0000103ENABLE_LEGACY_NOTIFICATIONS = $(ENABLE_LEGACY_NOTIFICATIONS_$(REAL_PLATFORM_NAME));
104ENABLE_LEGACY_NOTIFICATIONS_macosx = $(ENABLE_LEGACY_NOTIFICATIONS_macosx_$(TARGET_MAC_OS_X_VERSION_MAJOR));
105ENABLE_LEGACY_NOTIFICATIONS_macosx_1070 = ;
106ENABLE_LEGACY_NOTIFICATIONS_macosx_1080 = ENABLE_LEGACY_NOTIFICATIONS;
107ENABLE_LEGACY_NOTIFICATIONS_macosx_1090 = ENABLE_LEGACY_NOTIFICATIONS;
abarth@webkit.org79bb5eb2012-09-14 22:04:58 +0000108ENABLE_LEGACY_VENDOR_PREFIXES = ENABLE_LEGACY_VENDOR_PREFIXES;
crogers@google.com143fd022012-09-21 22:12:36 +0000109ENABLE_LEGACY_WEB_AUDIO = ENABLE_LEGACY_WEB_AUDIO;
mrowe@apple.coma072f622011-08-03 23:51:03 +0000110ENABLE_LINK_PREFETCH = ;
gavinp@chromium.orge8963822012-04-27 16:38:33 +0000111ENABLE_LINK_PRERENDER = ;
bdakin@apple.combbd59212010-08-03 21:35:58 +0000112ENABLE_MATHML = ENABLE_MATHML;
commit-queue@webkit.org7b352312011-08-30 23:15:56 +0000113ENABLE_MEDIA_SOURCE = ;
mrowe@apple.coma072f622011-08-03 23:51:03 +0000114ENABLE_MEDIA_STATISTICS = ;
tkent@chromium.orgd89d5452012-07-22 23:23:53 +0000115ENABLE_METER_ELEMENT = ENABLE_METER_ELEMENT;
abarth@webkit.org832d4c72011-05-24 22:09:37 +0000116ENABLE_MHTML = ;
rniwa@webkit.org605c8e32012-03-09 01:22:49 +0000117ENABLE_MICRODATA = ;
adamk@chromium.org563e0de2012-02-11 00:06:53 +0000118ENABLE_MUTATION_OBSERVERS = ENABLE_MUTATION_OBSERVERS;
commit-queue@webkit.org30167702012-08-27 09:19:27 +0000119ENABLE_NAVIGATOR_CONTENT_UTILS = ;
jonlee@apple.com6c095452011-11-29 01:08:35 +0000120ENABLE_NOTIFICATIONS = $(ENABLE_NOTIFICATIONS_$(REAL_PLATFORM_NAME));
jonlee@apple.comc76b5652011-12-14 23:32:57 +0000121ENABLE_NOTIFICATIONS_macosx = $(ENABLE_NOTIFICATIONS_macosx_$(TARGET_MAC_OS_X_VERSION_MAJOR));
jonlee@apple.com2ca84e62012-04-22 23:01:53 +0000122ENABLE_NOTIFICATIONS_macosx_1070 = ;
jonlee@apple.comc76b5652011-12-14 23:32:57 +0000123ENABLE_NOTIFICATIONS_macosx_1080 = ENABLE_NOTIFICATIONS;
124ENABLE_NOTIFICATIONS_macosx_1090 = ENABLE_NOTIFICATIONS;
commit-queue@webkit.org2f0affc2011-04-16 02:26:26 +0000125ENABLE_PAGE_VISIBILITY_API = ;
tkent@chromium.orgd89d5452012-07-22 23:23:53 +0000126ENABLE_PROGRESS_ELEMENT = ENABLE_PROGRESS_ELEMENT;
kinuko@chromium.org2354b1f2011-04-07 03:24:59 +0000127ENABLE_QUOTA = ;
commit-queue@webkit.org21e53652011-10-27 22:51:40 +0000128ENABLE_REQUEST_ANIMATION_FRAME = ENABLE_REQUEST_ANIMATION_FRAME;
hans@chromium.org71874942012-03-04 01:06:09 +0000129ENABLE_SCRIPTED_SPEECH = ;
commit-queue@webkit.orgcb644342012-01-25 21:46:47 +0000130ENABLE_SHADOW_DOM = ;
mrowe@apple.comb1520b52011-08-03 23:50:50 +0000131ENABLE_SHARED_WORKERS = ENABLE_SHARED_WORKERS;
commit-queue@webkit.org21e53652011-10-27 22:51:40 +0000132ENABLE_SQL_DATABASE = ENABLE_SQL_DATABASE;
rolandsteiner@chromium.orgbb2c08d2011-11-29 04:51:56 +0000133ENABLE_STYLE_SCOPED = ;
ddkilzer@apple.com037a61e2009-04-19 17:05:52 +0000134ENABLE_SVG = ENABLE_SVG;
eric@webkit.orge3e779a2012-05-03 02:52:16 +0000135ENABLE_SVG_DOM_OBJC_BINDINGS = $(ENABLE_SVG_DOM_OBJC_BINDINGS_$(REAL_PLATFORM_NAME));
136ENABLE_SVG_DOM_OBJC_BINDINGS_macosx = ENABLE_SVG_DOM_OBJC_BINDINGS;
ddkilzer@apple.com037a61e2009-04-19 17:05:52 +0000137ENABLE_SVG_FONTS = ENABLE_SVG_FONTS;
commit-queue@webkit.org1fcb31a2012-07-04 16:16:01 +0000138ENABLE_TEXT_AUTOSIZING = ;
jonlee@apple.com51159d12012-01-16 23:46:32 +0000139ENABLE_TEXT_NOTIFICATIONS_ONLY = ENABLE_TEXT_NOTIFICATIONS_ONLY;
mrowe@apple.coma072f622011-08-03 23:51:03 +0000140ENABLE_TOUCH_ICON_LOADING = ;
commit-queue@webkit.org5deb7492012-06-09 09:05:22 +0000141ENABLE_UNDO_MANAGER = ;
ddkilzer@apple.com037a61e2009-04-19 17:05:52 +0000142ENABLE_VIDEO = ENABLE_VIDEO;
mlilek@apple.comf06626e52012-03-08 23:08:56 +0000143ENABLE_VIDEO_TRACK = $(ENABLE_VIDEO_TRACK_$(REAL_PLATFORM_NAME));
144ENABLE_VIDEO_TRACK_macosx = ENABLE_VIDEO_TRACK;
mrowe@apple.coma072f622011-08-03 23:51:03 +0000145ENABLE_WEBGL = ENABLE_WEBGL;
jer.noble@apple.come81543b2011-10-06 00:40:39 +0000146ENABLE_WEB_AUDIO = ENABLE_WEB_AUDIO;
mrowe@apple.comb1520b52011-08-03 23:50:50 +0000147ENABLE_WEB_SOCKETS = ENABLE_WEB_SOCKETS;
tonyg@chromium.org61804042010-06-26 07:49:30 +0000148ENABLE_WEB_TIMING = ;
mrowe@apple.comb1520b52011-08-03 23:50:50 +0000149ENABLE_WORKERS = ENABLE_WORKERS;
dominik.rottsches@intel.com6bf0b302012-10-25 19:26:47 +0000150ENABLE_XHR_TIMEOUT = ENABLE_XHR_TIMEOUT;
ddkilzer@apple.com037a61e2009-04-19 17:05:52 +0000151ENABLE_XSLT = ENABLE_XSLT;
ddkilzer@apple.com3dc77772009-04-17 23:11:46 +0000152
commit-queue@webkit.orgb885adc2012-10-26 10:20:33 +0000153FEATURE_DEFINES = $(ENABLE_3D_RENDERING) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ANIMATION_API) $(ENABLE_BLOB) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CSP_NEXT) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_EXCLUSIONS) $(ENABLE_CSS_FILTERS) $(ENABLE_CSS_HIERARCHIES) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_REGIONS) $(ENABLE_CSS_SHADERS) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_STICKY_POSITION) $(ENABLE_CSS_VARIABLES) $(ENABLE_CSS3_CONDITIONAL_RULES) $(ENABLE_CSS3_TEXT) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DATA_TRANSFER_ITEMS) $(ENABLE_DETAILS_ELEMENT) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DIALOG_ELEMENT) $(ENABLE_DIRECTORY_UPLOAD) $(ENABLE_DRAGGABLE_REGION) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_FILE_SYSTEM) $(ENABLE_FILTERS) $(ENABLE_FULLSCREEN_API) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_HIDDEN_PAGE_DOM_TIMER_THROTTLING) $(ENABLE_HIGH_DPI_CANVAS) $(ENABLE_ICONDATABASE) $(ENABLE_IFRAME_SEAMLESS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INPUT_SPEECH) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_JAVASCRIPT_DEBUGGER) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_NOTIFICATIONS) $(ENABLE_LEGACY_VENDOR_PREFIXES) $(ENABLE_LEGACY_WEB_AUDIO) $(ENABLE_LINK_PREFETCH) $(ENABLE_LINK_PRERENDER) $(ENABLE_MATHML) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MICRODATA) $(ENABLE_MUTATION_OBSERVERS) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NOTIFICATIONS) $(ENABLE_PAGE_VISIBILITY_API) $(ENABLE_PROGRESS_ELEMENT) $(ENABLE_QUOTA) $(ENABLE_REQUEST_ANIMATION_FRAME) $(ENABLE_SCRIPTED_SPEECH) $(ENABLE_SHADOW_DOM) $(ENABLE_SHARED_WORKERS) $(ENABLE_SQL_DATABASE) $(ENABLE_STYLE_SCOPED) $(ENABLE_SVG) $(ENABLE_SVG_DOM_OBJC_BINDINGS) $(ENABLE_SVG_FONTS) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TEXT_NOTIFICATIONS_ONLY) $(ENABLE_TOUCH_ICON_LOADING) $(ENABLE_UNDO_MANAGER) $(ENABLE_VIDEO) $(ENABLE_VIDEO_TRACK) $(ENABLE_WEBGL) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_SOCKETS) $(ENABLE_WEB_TIMING) $(ENABLE_WORKERS) $(ENABLE_XHR_TIMEOUT) $(ENABLE_XSLT);