Nix upstreaming - Adding build files and supporting scripts
[WebKit-https.git] / Source / WTF / wtf / FeatureDefines.h
1 /*
2  * Copyright (C) 2006, 2007, 2008, 2009, 2013 Apple Inc. All rights reserved.
3  * Copyright (C) 2007-2009 Torch Mobile, Inc.
4  * Copyright (C) 2010, 2011 Research In Motion Limited. All rights reserved.
5  * Copyright (C) 2013 Samsung Electronics. All rights reserved.
6  *
7  * Redistribution and use in source and binary forms, with or without
8  * modification, are permitted provided that the following conditions
9  * are met:
10  * 1. Redistributions of source code must retain the above copyright
11  *    notice, this list of conditions and the following disclaimer.
12  * 2. Redistributions in binary form must reproduce the above copyright
13  *    notice, this list of conditions and the following disclaimer in the
14  *    documentation and/or other materials provided with the distribution.
15  *
16  * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
17  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
19  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
20  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
21  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
22  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
23  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
24  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
26  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27  */
28
29 #ifndef WTF_FeatureDefines_h
30 #define WTF_FeatureDefines_h
31
32 /* Use this file to list _all_ ENABLE() macros. Define the macros to be one of the following values:
33  *  - "0" disables the feature by default. The feature can still be enabled for a specific port or environment.
34  *  - "1" enables the feature by default. The feature can still be disabled for a specific port or environment.
35  *
36  * The feature defaults in this file are only taken into account if the (port specific) build system
37  * has not enabled or disabled a particular feature. 
38  *
39  * Use this file to define ENABLE() macros only. Do not use this file to define USE() or macros !
40  *
41  * Only define a macro if it was not defined before - always check for !defined first.
42  * 
43  * Keep the file sorted by the name of the defines. As an exception you can change the order
44  * to allow interdependencies between the default values.
45  * 
46  * Below are a few potential commands to take advantage of this file running from the Source/WTF directory
47  *
48  * Get the list of feature defines: grep -o "ENABLE_\(\w\+\)" wtf/FeatureDefines.h | sort | uniq
49  * Get the list of features enabled by default for a PLATFORM(XXX): gcc -E -dM -I. -DWTF_PLATFORM_XXX "wtf/Platform.h" | grep "ENABLE_\w\+ 1" | cut -d' ' -f2 | sort 
50  */
51
52 /* FIXME: Move out the PLATFORM specific rules into platform specific files. */
53
54 /* --------- Apple IOS (but not MAC) port --------- */
55 /* PLATFORM(IOS) is a specialization of PLATFORM(MAC). */
56 /* PLATFORM(MAC) is always enabled when PLATFORM(IOS) is enabled. */
57 #if PLATFORM(IOS)
58
59 #if !defined(ENABLE_8BIT_TEXTRUN)
60 #define ENABLE_8BIT_TEXTRUN 1
61 #endif
62
63 #if !defined(ENABLE_CONTEXT_MENUS)
64 #define ENABLE_CONTEXT_MENUS 0
65 #endif
66
67 #if !defined(ENABLE_CSS_IMAGE_SET)
68 #define ENABLE_CSS_IMAGE_SET 1
69 #endif
70
71 #if !defined(ENABLE_DISK_IMAGE_CACHE)
72 #define ENABLE_DISK_IMAGE_CACHE 1
73 #endif
74
75 #if !defined(ENABLE_DRAG_SUPPORT)
76 #define ENABLE_DRAG_SUPPORT 0
77 #endif
78
79 #if !defined(ENABLE_GEOLOCATION)
80 #define ENABLE_GEOLOCATION 1
81 #endif
82
83 #if !defined(ENABLE_ICONDATABASE)
84 #define ENABLE_ICONDATABASE 0
85 #endif
86
87 #if !defined(ENABLE_IOS_GESTURE_EVENTS)
88 #define ENABLE_IOS_GESTURE_EVENTS 1
89 #endif
90
91 #if !defined(ENABLE_LETTERPRESS)
92 #define ENABLE_LETTERPRESS 1
93 #endif
94
95 #if !defined(ENABLE_IOS_TEXT_AUTOSIZING)
96 #define ENABLE_IOS_TEXT_AUTOSIZING 1
97 #endif
98
99 #if !defined(ENABLE_METER_ELEMENT)
100 #define ENABLE_METER_ELEMENT 0
101 #endif
102
103 #if !defined(ENABLE_NETSCAPE_PLUGIN_API)
104 #define ENABLE_NETSCAPE_PLUGIN_API 0
105 #endif
106
107 #if !defined(ENABLE_ORIENTATION_EVENTS)
108 #define ENABLE_ORIENTATION_EVENTS 1
109 #endif
110
111 #if !defined(ENABLE_POINTER_LOCK)
112 #define ENABLE_POINTER_LOCK 0
113 #endif
114
115 #if !defined(ENABLE_REMOTE_INSPECTOR)
116 #define ENABLE_REMOTE_INSPECTOR 1
117 #endif
118
119 #if !defined(ENABLE_REPAINT_THROTTLING)
120 #define ENABLE_REPAINT_THROTTLING 0
121 #endif
122
123 #if !defined(ENABLE_RESPECT_EXIF_ORIENTATION)
124 #define ENABLE_RESPECT_EXIF_ORIENTATION 1
125 #endif
126
127 #if !defined(ENABLE_TEXT_CARET)
128 #define ENABLE_TEXT_CARET 0
129 #endif
130
131 #if !defined(ENABLE_TEXT_SELECTION)
132 #define ENABLE_TEXT_SELECTION 0
133 #endif
134
135 #if !defined(ENABLE_TOUCH_EVENTS)
136 #define ENABLE_TOUCH_EVENTS 1
137 #endif
138
139 #if !defined(ENABLE_WEB_ARCHIVE)
140 #define ENABLE_WEB_ARCHIVE 1
141 #endif
142
143 #if !defined(ENABLE_VIEW_MODE_CSS_MEDIA)
144 #define ENABLE_VIEW_MODE_CSS_MEDIA 0
145 #endif
146
147 #if !defined(ENABLE_WEBGL)
148 #define ENABLE_WEBGL 1
149 #endif
150
151 #endif /* PLATFORM(IOS) */
152
153 /* --------- Apple MAC port (not IOS) --------- */
154 #if PLATFORM(MAC) && !PLATFORM(IOS)
155
156 #if !defined(ENABLE_8BIT_TEXTRUN)
157 #define ENABLE_8BIT_TEXTRUN 1
158 #endif
159
160 #if !defined(ENABLE_CSS_IMAGE_SET)
161 #define ENABLE_CSS_IMAGE_SET 1
162 #endif
163
164 #if !defined(ENABLE_DASHBOARD_SUPPORT)
165 #define ENABLE_DASHBOARD_SUPPORT 1
166 #endif
167
168 #if !defined(ENABLE_DELETION_UI)
169 #define ENABLE_DELETION_UI 1
170 #endif
171
172 #if __MAC_OS_X_VERSION_MIN_REQUIRED >= 1090
173 #if !defined(ENABLE_ENCRYPTED_MEDIA)
174 #define ENABLE_ENCRYPTED_MEDIA 1
175 #endif
176 #if !defined(ENABLE_ENCRYPTED_MEDIA_V2)
177 #define ENABLE_ENCRYPTED_MEDIA_V2 1
178 #endif
179 #endif
180
181 #if !defined(ENABLE_FULLSCREEN_API)
182 #define ENABLE_FULLSCREEN_API 1
183 #endif
184
185 #if !defined(ENABLE_REMOTE_INSPECTOR)
186 #define ENABLE_REMOTE_INSPECTOR 1
187 #endif
188
189 #if !defined(ENABLE_RUBBER_BANDING)
190 #define ENABLE_RUBBER_BANDING 1
191 #endif
192
193 #if !defined(ENABLE_SMOOTH_SCROLLING)
194 #define ENABLE_SMOOTH_SCROLLING 1
195 #endif
196
197 #if !defined(ENABLE_THREADED_SCROLLING)
198 #define ENABLE_THREADED_SCROLLING 1
199 #endif
200
201 #if ENABLE(VIDEO)
202 #if !defined(ENABLE_VIDEO_TRACK)
203 #define ENABLE_VIDEO_TRACK 1
204 #endif
205 #endif
206
207 #if !defined(ENABLE_VIEW_MODE_CSS_MEDIA)
208 #define ENABLE_VIEW_MODE_CSS_MEDIA 0
209 #endif
210
211 #if !defined(ENABLE_WEB_ARCHIVE)
212 #define ENABLE_WEB_ARCHIVE 1
213 #endif
214
215 #if !defined(ENABLE_WEB_AUDIO)
216 #define ENABLE_WEB_AUDIO 1
217 #endif
218
219 #if !defined(ENABLE_CURSOR_VISIBILITY)
220 #define ENABLE_CURSOR_VISIBILITY 1
221 #endif
222
223 #if !defined(ENABLE_INPUT_TYPE_COLOR)
224 #define ENABLE_INPUT_TYPE_COLOR 1
225 #endif
226
227 #if !defined(ENABLE_INPUT_TYPE_COLOR_POPOVER)
228 #define ENABLE_INPUT_TYPE_COLOR_POPOVER 1
229 #endif
230
231 #if !defined(ENABLE_MEDIA_SOURCE)
232 #define ENABLE_MEDIA_SOURCE 1
233 #endif
234
235 #endif /* PLATFORM(MAC) && !PLATFORM(IOS) */
236
237 /* --------- Apple Windows port --------- */
238 #if PLATFORM(WIN) && !OS(WINCE) && !PLATFORM(WIN_CAIRO)
239
240 #if !defined(ENABLE_FULLSCREEN_API)
241 #define ENABLE_FULLSCREEN_API 1
242 #endif
243
244 #if !defined(ENABLE_WEB_ARCHIVE)
245 #define ENABLE_WEB_ARCHIVE 1
246 #endif
247
248 #endif /* PLATFORM(WIN) && !OS(WINCE) && !PLATFORM(WIN_CAIRO) */
249
250 /* --------- WinCE port --------- */
251 /* WinCE port is a specialization of PLATFORM(WIN). */
252 /* PLATFORM(WIN) is always enabled when building for the WinCE port. */
253 #if PLATFORM(WIN) && OS(WINCE)
254
255 #if !defined(ENABLE_DRAG_SUPPORT)
256 #define ENABLE_DRAG_SUPPORT 0
257 #endif
258
259 #if !defined(ENABLE_FTPDIR)
260 #define ENABLE_FTPDIR 0
261 #endif
262
263 #if !defined(ENABLE_INSPECTOR)
264 #define ENABLE_INSPECTOR 0
265 #endif
266
267 #endif /* PLATFORM(WIN) && OS(WINCE) */
268
269 /* --------- Windows CAIRO port --------- */
270 /* PLATFORM(WIN_CAIRO) is a specialization of PLATFORM(WIN). */
271 /* PLATFORM(WIN) is always enabled when PLATFORM(WIN_CAIRO) is enabled. */
272 #if PLATFORM(WIN_CAIRO)
273
274 #if !defined(ENABLE_WEB_ARCHIVE)
275 #define ENABLE_WEB_ARCHIVE 1
276 #endif
277
278 #if !defined(ENABLE_VIEW_MODE_CSS_MEDIA)
279 #define ENABLE_VIEW_MODE_CSS_MEDIA 0
280 #endif
281
282 #if !defined(ENABLE_WEBGL)
283 #define ENABLE_WEBGL 1
284 #endif
285
286 #endif /* PLATFORM(WIN_CAIRO) */
287
288 /* --------- NIX port (Unix) --------- */
289 #if PLATFORM(NIX)
290 #include "nix/FeatureDefinesNix.h"
291 #endif /* PLATFORM(NIX) */
292
293 /* --------- EFL port (Unix) --------- */
294 #if PLATFORM(EFL)
295
296 #if !defined(ENABLE_PLUGIN_PACKAGE_SIMPLE_HASH)
297 #define ENABLE_PLUGIN_PACKAGE_SIMPLE_HASH 1
298 #endif
299
300 #if !defined(ENABLE_SUBPIXEL_LAYOUT)
301 #define ENABLE_SUBPIXEL_LAYOUT 1
302 #endif
303
304 #if !defined(ENABLE_8BIT_TEXTRUN)
305 #define ENABLE_8BIT_TEXTRUN 1
306 #endif
307
308 #endif /* PLATFORM(EFL) */
309
310 /* --------- Gtk port (Unix, Windows, Mac) --------- */
311 #if PLATFORM(GTK)
312
313 #if OS(UNIX)
314 #if !defined(ENABLE_PLUGIN_PACKAGE_SIMPLE_HASH)
315 #define ENABLE_PLUGIN_PACKAGE_SIMPLE_HASH 1
316 #endif
317 #endif
318
319 #if !defined(ENABLE_8BIT_TEXTRUN)
320 #define ENABLE_8BIT_TEXTRUN 1
321 #endif
322
323 #endif /* PLATFORM(GTK) */
324
325 /* --------- Blackberry port (QNX) --------- */
326 #if PLATFORM(BLACKBERRY)
327
328 #if !defined(ENABLE_BLACKBERRY_CREDENTIAL_PERSIST)
329 #define ENABLE_BLACKBERRY_CREDENTIAL_PERSIST 1
330 #endif
331
332 #endif /* PLATFORM(BLACKBERRY) */
333
334 /* ENABLE macro defaults for WebCore */
335 /* Do not use PLATFORM() tests in this section ! */
336
337 #if !defined(ENABLE_3D_RENDERING)
338 #define ENABLE_3D_RENDERING 0
339 #endif
340
341 #if !defined(ENABLE_8BIT_TEXTRUN)
342 #define ENABLE_8BIT_TEXTRUN 0
343 #endif
344
345 #if !defined(ENABLE_ACCELERATED_2D_CANVAS)
346 #define ENABLE_ACCELERATED_2D_CANVAS 0
347 #endif
348
349 #if !defined(ENABLE_ACCELERATED_OVERFLOW_SCROLLING)
350 #define ENABLE_ACCELERATED_OVERFLOW_SCROLLING 0
351 #endif
352
353 #if !defined(ENABLE_BATTERY_STATUS)
354 #define ENABLE_BATTERY_STATUS 0
355 #endif
356
357 #if !defined(ENABLE_BLOB)
358 #define ENABLE_BLOB 0
359 #endif
360
361 #if !defined(ENABLE_CANVAS_PATH)
362 #define ENABLE_CANVAS_PATH 1
363 #endif
364
365 #if !defined(ENABLE_CANVAS_PROXY)
366 #define ENABLE_CANVAS_PROXY 0
367 #endif
368
369 #if !defined(ENABLE_CHANNEL_MESSAGING)
370 #define ENABLE_CHANNEL_MESSAGING 1
371 #endif
372
373 #if !defined(ENABLE_CONTEXT_MENUS)
374 #define ENABLE_CONTEXT_MENUS 1
375 #endif
376
377 #if !defined(ENABLE_CSP_NEXT)
378 #define ENABLE_CSP_NEXT 0
379 #endif
380
381 #if !defined(ENABLE_CSS3_CONDITIONAL_RULES)
382 #define ENABLE_CSS3_CONDITIONAL_RULES 0
383 #endif
384
385 #if !defined(ENABLE_CSS3_TEXT)
386 #define ENABLE_CSS3_TEXT 0
387 #endif
388
389 #if !defined(ENABLE_CSS_BOX_DECORATION_BREAK)
390 #define ENABLE_CSS_BOX_DECORATION_BREAK 1
391 #endif
392
393 #if !defined(ENABLE_CSS_DEVICE_ADAPTATION)
394 #define ENABLE_CSS_DEVICE_ADAPTATION 0
395 #endif
396
397 #if !defined(ENABLE_CSS_COMPOSITING)
398 #define ENABLE_CSS_COMPOSITING 0
399 #endif
400
401 #if !defined(ENABLE_CSS_FILTERS)
402 #define ENABLE_CSS_FILTERS 0
403 #endif
404
405 #if !defined(ENABLE_CSS_IMAGE_ORIENTATION)
406 #define ENABLE_CSS_IMAGE_ORIENTATION 0
407 #endif
408
409 #if !defined(ENABLE_CSS_IMAGE_RESOLUTION)
410 #define ENABLE_CSS_IMAGE_RESOLUTION 0
411 #endif
412
413 #if !defined(ENABLE_CSS_IMAGE_SET)
414 #define ENABLE_CSS_IMAGE_SET 0
415 #endif
416
417 #if !defined(ENABLE_CSS_SHADERS)
418 #define ENABLE_CSS_SHADERS 0
419 #endif
420
421 #if !defined(ENABLE_CSS_STICKY_POSITION)
422 #define ENABLE_CSS_STICKY_POSITION 0
423 #endif
424
425 #if !defined(ENABLE_CSS_TRANSFORMS_ANIMATIONS_TRANSITIONS_UNPREFIXED)
426 #define ENABLE_CSS_TRANSFORMS_ANIMATIONS_TRANSITIONS_UNPREFIXED 0
427 #endif
428
429 #if !defined(ENABLE_CSS_VARIABLES)
430 #define ENABLE_CSS_VARIABLES 0
431 #endif
432
433 #if !defined(ENABLE_CUSTOM_SCHEME_HANDLER)
434 #define ENABLE_CUSTOM_SCHEME_HANDLER 0
435 #endif
436
437 #if !defined(ENABLE_DASHBOARD_SUPPORT)
438 #define ENABLE_DASHBOARD_SUPPORT 0
439 #endif
440
441 #if !defined(ENABLE_DATALIST_ELEMENT)
442 #define ENABLE_DATALIST_ELEMENT 0
443 #endif
444
445 #if !defined(ENABLE_DATA_TRANSFER_ITEMS)
446 #define ENABLE_DATA_TRANSFER_ITEMS 0
447 #endif
448
449 #if !defined(ENABLE_DELETION_UI)
450 #define ENABLE_DELETION_UI 0
451 #endif
452
453 #if !defined(ENABLE_DETAILS_ELEMENT)
454 #define ENABLE_DETAILS_ELEMENT 1
455 #endif
456
457 #if !defined(ENABLE_DEVICE_ORIENTATION)
458 #define ENABLE_DEVICE_ORIENTATION 0
459 #endif
460
461 #if !defined(ENABLE_DIRECTORY_UPLOAD)
462 #define ENABLE_DIRECTORY_UPLOAD 0
463 #endif
464
465 #if !defined(ENABLE_DOWNLOAD_ATTRIBUTE)
466 #define ENABLE_DOWNLOAD_ATTRIBUTE 0
467 #endif
468
469 #if !defined(ENABLE_DRAGGABLE_REGION)
470 #define ENABLE_DRAGGABLE_REGION 0
471 #endif
472
473 #if !defined(ENABLE_DRAG_SUPPORT)
474 #define ENABLE_DRAG_SUPPORT 1
475 #endif
476
477 #if !defined(ENABLE_ENCRYPTED_MEDIA)
478 #define ENABLE_ENCRYPTED_MEDIA 0
479 #endif
480
481 #if !defined(ENABLE_ENCRYPTED_MEDIA_V2)
482 #define ENABLE_ENCRYPTED_MEDIA_V2 0
483 #endif
484
485 #if !defined(ENABLE_FAST_MOBILE_SCROLLING)
486 #define ENABLE_FAST_MOBILE_SCROLLING 0
487 #endif
488
489 #if !defined(ENABLE_FILTERS)
490 #define ENABLE_FILTERS 0
491 #endif
492
493 #if !defined(ENABLE_FONT_LOAD_EVENTS)
494 #define ENABLE_FONT_LOAD_EVENTS 0
495 #endif
496
497 #if !defined(ENABLE_FTPDIR)
498 #define ENABLE_FTPDIR 1
499 #endif
500
501 #if !defined(ENABLE_FULLSCREEN_API)
502 #define ENABLE_FULLSCREEN_API 0
503 #endif
504
505 #if !defined(ENABLE_GAMEPAD)
506 #define ENABLE_GAMEPAD 0
507 #endif
508
509 #if !defined(ENABLE_GEOLOCATION)
510 #define ENABLE_GEOLOCATION 0
511 #endif
512
513 #if !defined(ENABLE_GLIB_SUPPORT)
514 #define ENABLE_GLIB_SUPPORT 0
515 #endif
516
517 #if !defined(ENABLE_HIDDEN_PAGE_DOM_TIMER_THROTTLING)
518 #define ENABLE_HIDDEN_PAGE_DOM_TIMER_THROTTLING 0
519 #endif
520
521 #if !defined(ENABLE_HIGH_DPI_CANVAS)
522 #define ENABLE_HIGH_DPI_CANVAS 0
523 #endif
524
525 #if !defined(ENABLE_ICONDATABASE)
526 #define ENABLE_ICONDATABASE 1
527 #endif
528
529 #if !defined(ENABLE_IFRAME_SEAMLESS)
530 #define ENABLE_IFRAME_SEAMLESS 1
531 #endif
532
533 #if !defined(ENABLE_IMAGE_DECODER_DOWN_SAMPLING)
534 #define ENABLE_IMAGE_DECODER_DOWN_SAMPLING 0
535 #endif
536
537 #if !defined(ENABLE_INDEXED_DATABASE)
538 #define ENABLE_INDEXED_DATABASE 0
539 #endif
540
541 #if !defined(ENABLE_INPUT_SPEECH)
542 #define ENABLE_INPUT_SPEECH 0
543 #endif
544
545 #if !defined(ENABLE_INPUT_TYPE_COLOR)
546 #define ENABLE_INPUT_TYPE_COLOR 0
547 #endif
548
549 #if !defined(ENABLE_INPUT_TYPE_COLOR_POPOVER)
550 #define ENABLE_INPUT_TYPE_COLOR_POPOVER 0
551 #endif
552
553 #if !defined(ENABLE_INPUT_TYPE_DATE)
554 #define ENABLE_INPUT_TYPE_DATE 0
555 #endif
556
557 #if !defined(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE)
558 #define ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE 0
559 #endif
560
561 #if !defined(ENABLE_INPUT_TYPE_DATETIMELOCAL)
562 #define ENABLE_INPUT_TYPE_DATETIMELOCAL 0
563 #endif
564
565 #if !defined(ENABLE_INPUT_TYPE_MONTH)
566 #define ENABLE_INPUT_TYPE_MONTH 0
567 #endif
568
569 #if !defined(ENABLE_INPUT_TYPE_TIME)
570 #define ENABLE_INPUT_TYPE_TIME 0
571 #endif
572
573 #if !defined(ENABLE_INPUT_TYPE_WEEK)
574 #define ENABLE_INPUT_TYPE_WEEK 0
575 #endif
576
577 #if 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)
578 #if !defined(ENABLE_DATE_AND_TIME_INPUT_TYPES)
579 #define ENABLE_DATE_AND_TIME_INPUT_TYPES 1
580 #endif
581 #endif
582
583 #if !defined(ENABLE_INSPECTOR)
584 #define ENABLE_INSPECTOR 1
585 #endif
586
587 #if !defined(ENABLE_JAVASCRIPT_DEBUGGER)
588 #define ENABLE_JAVASCRIPT_DEBUGGER 1
589 #endif
590
591 #if !defined(ENABLE_JAVASCRIPT_I18N_API)
592 #define ENABLE_JAVASCRIPT_I18N_API 0
593 #endif
594
595 #if !defined(ENABLE_LEGACY_CSS_VENDOR_PREFIXES)
596 #define ENABLE_LEGACY_CSS_VENDOR_PREFIXES 0
597 #endif
598
599 #if !defined(ENABLE_LEGACY_NOTIFICATIONS)
600 #define ENABLE_LEGACY_NOTIFICATIONS 0
601 #endif
602
603 #if !defined(ENABLE_LEGACY_VENDOR_PREFIXES)
604 #define ENABLE_LEGACY_VENDOR_PREFIXES 0
605 #endif
606
607 #if !defined(ENABLE_LEGACY_VIEWPORT_ADAPTION)
608 #define ENABLE_LEGACY_VIEWPORT_ADAPTION 0
609 #endif
610
611 #if !defined(ENABLE_LETTERPRESS)
612 #define ENABLE_LETTERPRESS 0
613 #endif
614
615 #if !defined(ENABLE_LINK_PREFETCH)
616 #define ENABLE_LINK_PREFETCH 0
617 #endif
618
619 #if !defined(ENABLE_MATHML)
620 #define ENABLE_MATHML 1
621 #endif
622
623 #if !defined(ENABLE_MEDIA_CAPTURE)
624 #define ENABLE_MEDIA_CAPTURE 0
625 #endif
626
627 #if !defined(ENABLE_MEDIA_CONTROLS_SCRIPT)
628 #define ENABLE_MEDIA_CONTROLS_SCRIPT 0
629 #endif
630
631 #if !defined(ENABLE_MEDIA_SOURCE)
632 #define ENABLE_MEDIA_SOURCE 0
633 #endif
634
635 #if !defined(ENABLE_MEDIA_STATISTICS)
636 #define ENABLE_MEDIA_STATISTICS 0
637 #endif
638
639 #if !defined(ENABLE_MEDIA_STREAM)
640 #define ENABLE_MEDIA_STREAM 0
641 #endif
642
643 #if !defined(ENABLE_METER_ELEMENT)
644 #define ENABLE_METER_ELEMENT 1
645 #endif
646
647 #if !defined(ENABLE_MHTML)
648 #define ENABLE_MHTML 0
649 #endif
650
651 #if !defined(ENABLE_MOUSE_CURSOR_SCALE)
652 #define ENABLE_MOUSE_CURSOR_SCALE 0
653 #endif
654
655 #if !defined(ENABLE_NAVIGATOR_CONTENT_UTILS)
656 #define ENABLE_NAVIGATOR_CONTENT_UTILS 0
657 #endif
658
659 #if !defined(ENABLE_NETSCAPE_PLUGIN_API)
660 #define ENABLE_NETSCAPE_PLUGIN_API 1
661 #endif
662
663 #if !defined(ENABLE_NETSCAPE_PLUGIN_METADATA_CACHE)
664 #define ENABLE_NETSCAPE_PLUGIN_METADATA_CACHE 0
665 #endif
666
667 #if !defined(ENABLE_NETWORK_INFO)
668 #define ENABLE_NETWORK_INFO 0
669 #endif
670
671 #if !defined(ENABLE_NOTIFICATIONS)
672 #define ENABLE_NOTIFICATIONS 0
673 #endif
674
675 #if !defined(ENABLE_OBJECT_MARK_LOGGING)
676 #define ENABLE_OBJECT_MARK_LOGGING 0
677 #endif
678
679 #if !defined(ENABLE_OPENCL)
680 #define ENABLE_OPENCL 0
681 #endif
682
683 #if !defined(ENABLE_OPENTYPE_VERTICAL)
684 #define ENABLE_OPENTYPE_VERTICAL 0
685 #endif
686
687 #if !defined(ENABLE_ORIENTATION_EVENTS)
688 #define ENABLE_ORIENTATION_EVENTS 0
689 #endif
690
691 #if !defined(ENABLE_PAGE_VISIBILITY_API)
692 #define ENABLE_PAGE_VISIBILITY_API 0
693 #endif
694
695 #if OS(WINDOWS)
696 #if !defined(ENABLE_PAN_SCROLLING)
697 #define ENABLE_PAN_SCROLLING 1
698 #endif
699 #endif
700
701 #if !defined(ENABLE_PLUGIN_PACKAGE_SIMPLE_HASH)
702 #define ENABLE_PLUGIN_PACKAGE_SIMPLE_HASH 0
703 #endif
704
705 #if !defined(ENABLE_PLUGIN_PROXY_FOR_VIDEO)
706 #define ENABLE_PLUGIN_PROXY_FOR_VIDEO 0
707 #endif
708
709 #if !defined(ENABLE_POINTER_LOCK)
710 #define ENABLE_POINTER_LOCK 0
711 #endif
712
713 #if !defined(ENABLE_PROGRESS_ELEMENT)
714 #define ENABLE_PROGRESS_ELEMENT 0
715 #endif
716
717 #if !defined(ENABLE_PROMISES)
718 #define ENABLE_PROMISES 0
719 #endif
720
721 #if !defined(ENABLE_PROXIMITY_EVENTS)
722 #define ENABLE_PROXIMITY_EVENTS 0
723 #endif
724
725 #if !defined(ENABLE_QUOTA)
726 #define ENABLE_QUOTA 0
727 #endif
728
729 #if !defined(ENABLE_REPAINT_THROTTLING)
730 #define ENABLE_REPAINT_THROTTLING 0
731 #endif
732
733 #if !defined(ENABLE_REMOTE_INSPECTOR)
734 #define ENABLE_REMOTE_INSPECTOR 0
735 #endif
736
737 #if !defined(ENABLE_REQUEST_ANIMATION_FRAME)
738 #define ENABLE_REQUEST_ANIMATION_FRAME 0
739 #endif
740
741 #if !defined(ENABLE_RUBBER_BANDING)
742 #define ENABLE_RUBBER_BANDING 0
743 #endif
744
745 #if !defined(ENABLE_SATURATED_LAYOUT_ARITHMETIC)
746 #define ENABLE_SATURATED_LAYOUT_ARITHMETIC 0
747 #endif
748
749 #if !defined(ENABLE_SCRIPTED_SPEECH)
750 #define ENABLE_SCRIPTED_SPEECH 0
751 #endif
752
753 #if !defined(ENABLE_SHADOW_DOM)
754 #define ENABLE_SHADOW_DOM 0
755 #endif
756
757 #if !defined(ENABLE_SHARED_WORKERS)
758 #define ENABLE_SHARED_WORKERS 0
759 #endif
760
761 #if !defined(ENABLE_SMOOTH_SCROLLING)
762 #define ENABLE_SMOOTH_SCROLLING 0
763 #endif
764
765 #if !defined(ENABLE_SPEECH_SYNTHESIS)
766 #define ENABLE_SPEECH_SYNTHESIS 0
767 #endif
768
769 #if !defined(ENABLE_SPELLCHECK)
770 #define ENABLE_SPELLCHECK 0
771 #endif
772
773 #if !defined(ENABLE_SQL_DATABASE)
774 #define ENABLE_SQL_DATABASE 1
775 #endif
776
777 #if !defined(ENABLE_SUBPIXEL_LAYOUT)
778 #define ENABLE_SUBPIXEL_LAYOUT 0
779 #endif
780
781 #if !defined(ENABLE_SVG)
782 #define ENABLE_SVG 1
783 #endif
784
785 #if ENABLE(SVG)
786 #if !defined(ENABLE_SVG_FONTS)
787 #define ENABLE_SVG_FONTS 1
788 #endif
789 #endif
790
791 #if !defined(ENABLE_TEMPLATE_ELEMENT)
792 #define ENABLE_TEMPLATE_ELEMENT 0
793 #endif
794
795 #if !defined(ENABLE_TEXT_AUTOSIZING)
796 #define ENABLE_TEXT_AUTOSIZING 0
797 #endif
798
799 #if !defined(ENABLE_TEXT_CARET)
800 #define ENABLE_TEXT_CARET 1
801 #endif
802
803 #if !defined(ENABLE_TEXT_SELECTION)
804 #define ENABLE_TEXT_SELECTION 1
805 #endif
806
807 #if !defined(ENABLE_THREADED_HTML_PARSER)
808 #define ENABLE_THREADED_HTML_PARSER 0
809 #endif
810
811 #if !defined(ENABLE_THREADED_SCROLLING)
812 #define ENABLE_THREADED_SCROLLING 0
813 #endif
814
815 #if !defined(ENABLE_TOUCH_EVENTS)
816 #define ENABLE_TOUCH_EVENTS 0
817 #endif
818
819 #if !defined(ENABLE_TOUCH_ICON_LOADING)
820 #define ENABLE_TOUCH_ICON_LOADING 0
821 #endif
822
823 #if !defined(ENABLE_VIBRATION)
824 #define ENABLE_VIBRATION 0
825 #endif
826
827 #if !defined(ENABLE_VIDEO)
828 #define ENABLE_VIDEO 0
829 #endif
830
831 #if !defined(ENABLE_VIDEO_TRACK)
832 #define ENABLE_VIDEO_TRACK 0
833 #endif
834
835 #if !defined(ENABLE_VIEWPORT)
836 #define ENABLE_VIEWPORT 0
837 #endif
838
839 #if !defined(ENABLE_VIEWSOURCE_ATTRIBUTE)
840 #define ENABLE_VIEWSOURCE_ATTRIBUTE 1
841 #endif
842
843 #if !defined(ENABLE_VIEW_MODE_CSS_MEDIA)
844 #define ENABLE_VIEW_MODE_CSS_MEDIA 1
845 #endif
846
847 #if !defined(ENABLE_WEBGL)
848 #define ENABLE_WEBGL 0
849 #endif
850
851 #if !defined(ENABLE_WEB_ANIMATIONS)
852 #define ENABLE_WEB_ANIMATIONS 0
853 #endif
854
855 #if !defined(ENABLE_WEB_ARCHIVE)
856 #define ENABLE_WEB_ARCHIVE 0
857 #endif
858
859 #if !defined(ENABLE_WEB_AUDIO)
860 #define ENABLE_WEB_AUDIO 0
861 #endif
862
863 #if !defined(ENABLE_WEB_SOCKETS)
864 #define ENABLE_WEB_SOCKETS 1
865 #endif
866
867 #if !defined(ENABLE_WEB_TIMING)
868 #define ENABLE_WEB_TIMING 0
869 #endif
870
871 #if !defined(ENABLE_XHR_TIMEOUT)
872 #define ENABLE_XHR_TIMEOUT 0
873 #endif
874
875 #if !defined(ENABLE_XSLT)
876 #define ENABLE_XSLT 1
877 #endif
878
879 /* Asserts, invariants for macro definitions */
880
881 #if ENABLE(SATURATED_LAYOUT_ARITHMETIC) && !ENABLE(SUBPIXEL_LAYOUT)
882 #error "ENABLE(SATURATED_LAYOUT_ARITHMETIC) requires ENABLE(SUBPIXEL_LAYOUT)"
883 #endif
884
885 #if ENABLE(SVG_FONTS) && !ENABLE(SVG)
886 #error "ENABLE(SVG_FONTS) requires ENABLE(SVG)"
887 #endif
888
889 #if ENABLE(VIDEO_TRACK) && !ENABLE(VIDEO)
890 #error "ENABLE(VIDEO_TRACK) requires ENABLE(VIDEO)"
891 #endif
892
893 #if ENABLE(CSS_SHADERS) && !ENABLE(WEBGL)
894 #error "ENABLE(CSS_SHADERS) requires ENABLE(WEBGL)"
895 #endif
896
897 #if ENABLE(REMOTE_INSPECTOR) && !ENABLE(INSPECTOR)
898 #error "ENABLE(REMOTE_INSPECTOR) requires ENABLE(INSPECTOR)"
899 #endif
900
901 #endif /* WTF_FeatureDefines_h */