[MSE] [Mac] Enable MediaSource on the Mac
[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_REPAINT_THROTTLING)
116 #define ENABLE_REPAINT_THROTTLING 0
117 #endif
118
119 #if !defined(ENABLE_RESPECT_EXIF_ORIENTATION)
120 #define ENABLE_RESPECT_EXIF_ORIENTATION 1
121 #endif
122
123 #if !defined(ENABLE_TEXT_CARET)
124 #define ENABLE_TEXT_CARET 0
125 #endif
126
127 #if !defined(ENABLE_TOUCH_EVENTS)
128 #define ENABLE_TOUCH_EVENTS 1
129 #endif
130
131 #if !defined(ENABLE_WEB_ARCHIVE)
132 #define ENABLE_WEB_ARCHIVE 1
133 #endif
134
135 #if !defined(ENABLE_VIEW_MODE_CSS_MEDIA)
136 #define ENABLE_VIEW_MODE_CSS_MEDIA 0
137 #endif
138
139 #if !defined(ENABLE_WEBGL)
140 #define ENABLE_WEBGL 1
141 #endif
142
143 #endif /* PLATFORM(IOS) */
144
145 /* --------- Apple MAC port (not IOS) --------- */
146 #if PLATFORM(MAC) && !PLATFORM(IOS)
147
148 #if !defined(ENABLE_8BIT_TEXTRUN)
149 #define ENABLE_8BIT_TEXTRUN 1
150 #endif
151
152 #if !defined(ENABLE_CSS_IMAGE_SET)
153 #define ENABLE_CSS_IMAGE_SET 1
154 #endif
155
156 #if !defined(ENABLE_DASHBOARD_SUPPORT)
157 #define ENABLE_DASHBOARD_SUPPORT 1
158 #endif
159
160 #if !defined(ENABLE_DELETION_UI)
161 #define ENABLE_DELETION_UI 1
162 #endif
163
164 #if __MAC_OS_X_VERSION_MIN_REQUIRED >= 1090
165 #if !defined(ENABLE_ENCRYPTED_MEDIA)
166 #define ENABLE_ENCRYPTED_MEDIA 1
167 #endif
168 #if !defined(ENABLE_ENCRYPTED_MEDIA_V2)
169 #define ENABLE_ENCRYPTED_MEDIA_V2 1
170 #endif
171 #endif
172
173 #if !defined(ENABLE_FULLSCREEN_API)
174 #define ENABLE_FULLSCREEN_API 1
175 #endif
176
177 #if !defined(ENABLE_RUBBER_BANDING)
178 #define ENABLE_RUBBER_BANDING 1
179 #endif
180
181 #if !defined(ENABLE_SMOOTH_SCROLLING)
182 #define ENABLE_SMOOTH_SCROLLING 1
183 #endif
184
185 #if !defined(ENABLE_THREADED_SCROLLING)
186 #define ENABLE_THREADED_SCROLLING 1
187 #endif
188
189 #if ENABLE(VIDEO)
190 #if !defined(ENABLE_VIDEO_TRACK)
191 #define ENABLE_VIDEO_TRACK 1
192 #endif
193 #endif
194
195 #if !defined(ENABLE_VIEW_MODE_CSS_MEDIA)
196 #define ENABLE_VIEW_MODE_CSS_MEDIA 0
197 #endif
198
199 #if !defined(ENABLE_WEB_ARCHIVE)
200 #define ENABLE_WEB_ARCHIVE 1
201 #endif
202
203 #if !defined(ENABLE_WEB_AUDIO)
204 #define ENABLE_WEB_AUDIO 1
205 #endif
206
207 #if !defined(ENABLE_CURSOR_VISIBILITY)
208 #define ENABLE_CURSOR_VISIBILITY 1
209 #endif
210
211 #if !defined(ENABLE_INPUT_TYPE_COLOR)
212 #define ENABLE_INPUT_TYPE_COLOR 1
213 #endif
214
215 #if !defined(ENABLE_INPUT_TYPE_COLOR_POPOVER)
216 #define ENABLE_INPUT_TYPE_COLOR_POPOVER 1
217 #endif
218
219 #if !defined(ENABLE_MEDIA_SOURCE)
220 #define ENABLE_MEDIA_SOURCE 1
221 #endif
222
223 #endif /* PLATFORM(MAC) && !PLATFORM(IOS) */
224
225 /* --------- Apple Windows port --------- */
226 #if PLATFORM(WIN) && !OS(WINCE) && !PLATFORM(WIN_CAIRO)
227
228 #if !defined(ENABLE_FULLSCREEN_API)
229 #define ENABLE_FULLSCREEN_API 1
230 #endif
231
232 #if !defined(ENABLE_WEB_ARCHIVE)
233 #define ENABLE_WEB_ARCHIVE 1
234 #endif
235
236 #endif /* PLATFORM(WIN) && !OS(WINCE) && !PLATFORM(WIN_CAIRO) */
237
238 /* --------- WinCE port --------- */
239 /* WinCE port is a specialization of PLATFORM(WIN). */
240 /* PLATFORM(WIN) is always enabled when building for the WinCE port. */
241 #if PLATFORM(WIN) && OS(WINCE)
242
243 #if !defined(ENABLE_DRAG_SUPPORT)
244 #define ENABLE_DRAG_SUPPORT 0
245 #endif
246
247 #if !defined(ENABLE_FTPDIR)
248 #define ENABLE_FTPDIR 0
249 #endif
250
251 #if !defined(ENABLE_INSPECTOR)
252 #define ENABLE_INSPECTOR 0
253 #endif
254
255 #endif /* PLATFORM(WIN) && OS(WINCE) */
256
257 /* --------- Windows CAIRO port --------- */
258 /* PLATFORM(WIN_CAIRO) is a specialization of PLATFORM(WIN). */
259 /* PLATFORM(WIN) is always enabled when PLATFORM(WIN_CAIRO) is enabled. */
260 #if PLATFORM(WIN_CAIRO)
261
262 #if !defined(ENABLE_WEB_ARCHIVE)
263 #define ENABLE_WEB_ARCHIVE 1
264 #endif
265
266 #if !defined(ENABLE_VIEW_MODE_CSS_MEDIA)
267 #define ENABLE_VIEW_MODE_CSS_MEDIA 0
268 #endif
269
270 #if !defined(ENABLE_WEBGL)
271 #define ENABLE_WEBGL 1
272 #endif
273
274 #endif /* PLATFORM(WIN_CAIRO) */
275
276 /* --------- EFL port (Unix) --------- */
277 #if PLATFORM(EFL)
278
279 #if !defined(ENABLE_PLUGIN_PACKAGE_SIMPLE_HASH)
280 #define ENABLE_PLUGIN_PACKAGE_SIMPLE_HASH 1
281 #endif
282
283 #if !defined(ENABLE_SUBPIXEL_LAYOUT)
284 #define ENABLE_SUBPIXEL_LAYOUT 1
285 #endif
286
287 #endif /* PLATFORM(EFL) */
288
289 /* --------- Gtk port (Unix, Windows, Mac) --------- */
290 #if PLATFORM(GTK)
291
292 #if OS(UNIX)
293 #if !defined(ENABLE_PLUGIN_PACKAGE_SIMPLE_HASH)
294 #define ENABLE_PLUGIN_PACKAGE_SIMPLE_HASH 1
295 #endif
296 #endif
297
298 #endif /* PLATFORM(GTK) */
299
300 /* --------- Blackberry port (QNX) --------- */
301 #if PLATFORM(BLACKBERRY)
302
303 #if !defined(ENABLE_BLACKBERRY_CREDENTIAL_PERSIST)
304 #define ENABLE_BLACKBERRY_CREDENTIAL_PERSIST 1
305 #endif
306
307 #endif /* PLATFORM(BLACKBERRY) */
308
309 /* ENABLE macro defaults for WebCore */
310 /* Do not use PLATFORM() tests in this section ! */
311
312 #if !defined(ENABLE_3D_RENDERING)
313 #define ENABLE_3D_RENDERING 0
314 #endif
315
316 #if !defined(ENABLE_8BIT_TEXTRUN)
317 #define ENABLE_8BIT_TEXTRUN 0
318 #endif
319
320 #if !defined(ENABLE_ACCELERATED_2D_CANVAS)
321 #define ENABLE_ACCELERATED_2D_CANVAS 0
322 #endif
323
324 #if !defined(ENABLE_ACCELERATED_OVERFLOW_SCROLLING)
325 #define ENABLE_ACCELERATED_OVERFLOW_SCROLLING 0
326 #endif
327
328 #if !defined(ENABLE_BATTERY_STATUS)
329 #define ENABLE_BATTERY_STATUS 0
330 #endif
331
332 #if !defined(ENABLE_BLOB)
333 #define ENABLE_BLOB 0
334 #endif
335
336 #if !defined(ENABLE_CANVAS_PATH)
337 #define ENABLE_CANVAS_PATH 1
338 #endif
339
340 #if !defined(ENABLE_CANVAS_PROXY)
341 #define ENABLE_CANVAS_PROXY 0
342 #endif
343
344 #if !defined(ENABLE_CHANNEL_MESSAGING)
345 #define ENABLE_CHANNEL_MESSAGING 1
346 #endif
347
348 #if !defined(ENABLE_CONTEXT_MENUS)
349 #define ENABLE_CONTEXT_MENUS 1
350 #endif
351
352 #if !defined(ENABLE_CSP_NEXT)
353 #define ENABLE_CSP_NEXT 0
354 #endif
355
356 #if !defined(ENABLE_CSS3_CONDITIONAL_RULES)
357 #define ENABLE_CSS3_CONDITIONAL_RULES 0
358 #endif
359
360 #if !defined(ENABLE_CSS3_TEXT)
361 #define ENABLE_CSS3_TEXT 0
362 #endif
363
364 #if !defined(ENABLE_CSS_BOX_DECORATION_BREAK)
365 #define ENABLE_CSS_BOX_DECORATION_BREAK 1
366 #endif
367
368 #if !defined(ENABLE_CSS_DEVICE_ADAPTATION)
369 #define ENABLE_CSS_DEVICE_ADAPTATION 0
370 #endif
371
372 #if !defined(ENABLE_CSS_COMPOSITING)
373 #define ENABLE_CSS_COMPOSITING 0
374 #endif
375
376 #if !defined(ENABLE_CSS_FILTERS)
377 #define ENABLE_CSS_FILTERS 0
378 #endif
379
380 #if !defined(ENABLE_CSS_IMAGE_ORIENTATION)
381 #define ENABLE_CSS_IMAGE_ORIENTATION 0
382 #endif
383
384 #if !defined(ENABLE_CSS_IMAGE_RESOLUTION)
385 #define ENABLE_CSS_IMAGE_RESOLUTION 0
386 #endif
387
388 #if !defined(ENABLE_CSS_IMAGE_SET)
389 #define ENABLE_CSS_IMAGE_SET 0
390 #endif
391
392 #if !defined(ENABLE_CSS_SHADERS)
393 #define ENABLE_CSS_SHADERS 0
394 #endif
395
396 #if !defined(ENABLE_CSS_STICKY_POSITION)
397 #define ENABLE_CSS_STICKY_POSITION 0
398 #endif
399
400 #if !defined(ENABLE_CSS_TRANSFORMS_ANIMATIONS_TRANSITIONS_UNPREFIXED)
401 #define ENABLE_CSS_TRANSFORMS_ANIMATIONS_TRANSITIONS_UNPREFIXED 0
402 #endif
403
404 #if !defined(ENABLE_CSS_VARIABLES)
405 #define ENABLE_CSS_VARIABLES 0
406 #endif
407
408 #if !defined(ENABLE_CUSTOM_SCHEME_HANDLER)
409 #define ENABLE_CUSTOM_SCHEME_HANDLER 0
410 #endif
411
412 #if !defined(ENABLE_DASHBOARD_SUPPORT)
413 #define ENABLE_DASHBOARD_SUPPORT 0
414 #endif
415
416 #if !defined(ENABLE_DATALIST_ELEMENT)
417 #define ENABLE_DATALIST_ELEMENT 0
418 #endif
419
420 #if !defined(ENABLE_DATA_TRANSFER_ITEMS)
421 #define ENABLE_DATA_TRANSFER_ITEMS 0
422 #endif
423
424 #if !defined(ENABLE_DELETION_UI)
425 #define ENABLE_DELETION_UI 0
426 #endif
427
428 #if !defined(ENABLE_DETAILS_ELEMENT)
429 #define ENABLE_DETAILS_ELEMENT 1
430 #endif
431
432 #if !defined(ENABLE_DEVICE_ORIENTATION)
433 #define ENABLE_DEVICE_ORIENTATION 0
434 #endif
435
436 #if !defined(ENABLE_DIRECTORY_UPLOAD)
437 #define ENABLE_DIRECTORY_UPLOAD 0
438 #endif
439
440 #if !defined(ENABLE_DOWNLOAD_ATTRIBUTE)
441 #define ENABLE_DOWNLOAD_ATTRIBUTE 0
442 #endif
443
444 #if !defined(ENABLE_DRAGGABLE_REGION)
445 #define ENABLE_DRAGGABLE_REGION 0
446 #endif
447
448 #if !defined(ENABLE_DRAG_SUPPORT)
449 #define ENABLE_DRAG_SUPPORT 1
450 #endif
451
452 #if !defined(ENABLE_ENCRYPTED_MEDIA)
453 #define ENABLE_ENCRYPTED_MEDIA 0
454 #endif
455
456 #if !defined(ENABLE_ENCRYPTED_MEDIA_V2)
457 #define ENABLE_ENCRYPTED_MEDIA_V2 0
458 #endif
459
460 #if !defined(ENABLE_FAST_MOBILE_SCROLLING)
461 #define ENABLE_FAST_MOBILE_SCROLLING 0
462 #endif
463
464 #if !defined(ENABLE_FILTERS)
465 #define ENABLE_FILTERS 0
466 #endif
467
468 #if !defined(ENABLE_FONT_LOAD_EVENTS)
469 #define ENABLE_FONT_LOAD_EVENTS 0
470 #endif
471
472 #if !defined(ENABLE_FTPDIR)
473 #define ENABLE_FTPDIR 1
474 #endif
475
476 #if !defined(ENABLE_FULLSCREEN_API)
477 #define ENABLE_FULLSCREEN_API 0
478 #endif
479
480 #if !defined(ENABLE_GAMEPAD)
481 #define ENABLE_GAMEPAD 0
482 #endif
483
484 #if !defined(ENABLE_GEOLOCATION)
485 #define ENABLE_GEOLOCATION 0
486 #endif
487
488 #if !defined(ENABLE_GLIB_SUPPORT)
489 #define ENABLE_GLIB_SUPPORT 0
490 #endif
491
492 #if !defined(ENABLE_HIDDEN_PAGE_DOM_TIMER_THROTTLING)
493 #define ENABLE_HIDDEN_PAGE_DOM_TIMER_THROTTLING 0
494 #endif
495
496 #if !defined(ENABLE_HIGH_DPI_CANVAS)
497 #define ENABLE_HIGH_DPI_CANVAS 0
498 #endif
499
500 #if !defined(ENABLE_ICONDATABASE)
501 #define ENABLE_ICONDATABASE 1
502 #endif
503
504 #if !defined(ENABLE_IFRAME_SEAMLESS)
505 #define ENABLE_IFRAME_SEAMLESS 1
506 #endif
507
508 #if !defined(ENABLE_IMAGE_DECODER_DOWN_SAMPLING)
509 #define ENABLE_IMAGE_DECODER_DOWN_SAMPLING 0
510 #endif
511
512 #if !defined(ENABLE_INDEXED_DATABASE)
513 #define ENABLE_INDEXED_DATABASE 0
514 #endif
515
516 #if !defined(ENABLE_INPUT_SPEECH)
517 #define ENABLE_INPUT_SPEECH 0
518 #endif
519
520 #if !defined(ENABLE_INPUT_TYPE_COLOR)
521 #define ENABLE_INPUT_TYPE_COLOR 0
522 #endif
523
524 #if !defined(ENABLE_INPUT_TYPE_COLOR_POPOVER)
525 #define ENABLE_INPUT_TYPE_COLOR_POPOVER 0
526 #endif
527
528 #if !defined(ENABLE_INPUT_TYPE_DATE)
529 #define ENABLE_INPUT_TYPE_DATE 0
530 #endif
531
532 #if !defined(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE)
533 #define ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE 0
534 #endif
535
536 #if !defined(ENABLE_INPUT_TYPE_DATETIMELOCAL)
537 #define ENABLE_INPUT_TYPE_DATETIMELOCAL 0
538 #endif
539
540 #if !defined(ENABLE_INPUT_TYPE_MONTH)
541 #define ENABLE_INPUT_TYPE_MONTH 0
542 #endif
543
544 #if !defined(ENABLE_INPUT_TYPE_TIME)
545 #define ENABLE_INPUT_TYPE_TIME 0
546 #endif
547
548 #if !defined(ENABLE_INPUT_TYPE_WEEK)
549 #define ENABLE_INPUT_TYPE_WEEK 0
550 #endif
551
552 #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)
553 #if !defined(ENABLE_DATE_AND_TIME_INPUT_TYPES)
554 #define ENABLE_DATE_AND_TIME_INPUT_TYPES 1
555 #endif
556 #endif
557
558 #if !defined(ENABLE_INSPECTOR)
559 #define ENABLE_INSPECTOR 1
560 #endif
561
562 #if !defined(ENABLE_JAVASCRIPT_DEBUGGER)
563 #define ENABLE_JAVASCRIPT_DEBUGGER 1
564 #endif
565
566 #if !defined(ENABLE_JAVASCRIPT_I18N_API)
567 #define ENABLE_JAVASCRIPT_I18N_API 0
568 #endif
569
570 #if !defined(ENABLE_LEGACY_CSS_VENDOR_PREFIXES)
571 #define ENABLE_LEGACY_CSS_VENDOR_PREFIXES 0
572 #endif
573
574 #if !defined(ENABLE_LEGACY_NOTIFICATIONS)
575 #define ENABLE_LEGACY_NOTIFICATIONS 0
576 #endif
577
578 #if !defined(ENABLE_LEGACY_VENDOR_PREFIXES)
579 #define ENABLE_LEGACY_VENDOR_PREFIXES 0
580 #endif
581
582 #if !defined(ENABLE_LEGACY_VIEWPORT_ADAPTION)
583 #define ENABLE_LEGACY_VIEWPORT_ADAPTION 0
584 #endif
585
586 #if !defined(ENABLE_LINK_PREFETCH)
587 #define ENABLE_LINK_PREFETCH 0
588 #endif
589
590 #if !defined(ENABLE_MATHML)
591 #define ENABLE_MATHML 1
592 #endif
593
594 #if !defined(ENABLE_MEDIA_CAPTURE)
595 #define ENABLE_MEDIA_CAPTURE 0
596 #endif
597
598 #if !defined(ENABLE_MEDIA_CONTROLS_SCRIPT)
599 #define ENABLE_MEDIA_CONTROLS_SCRIPT 0
600 #endif
601
602 #if !defined(ENABLE_MEDIA_SOURCE)
603 #define ENABLE_MEDIA_SOURCE 0
604 #endif
605
606 #if !defined(ENABLE_MEDIA_STATISTICS)
607 #define ENABLE_MEDIA_STATISTICS 0
608 #endif
609
610 #if !defined(ENABLE_MEDIA_STREAM)
611 #define ENABLE_MEDIA_STREAM 0
612 #endif
613
614 #if !defined(ENABLE_METER_ELEMENT)
615 #define ENABLE_METER_ELEMENT 1
616 #endif
617
618 #if !defined(ENABLE_MHTML)
619 #define ENABLE_MHTML 0
620 #endif
621
622 #if !defined(ENABLE_MOUSE_CURSOR_SCALE)
623 #define ENABLE_MOUSE_CURSOR_SCALE 0
624 #endif
625
626 #if !defined(ENABLE_NAVIGATOR_CONTENT_UTILS)
627 #define ENABLE_NAVIGATOR_CONTENT_UTILS 0
628 #endif
629
630 #if !defined(ENABLE_NETSCAPE_PLUGIN_API)
631 #define ENABLE_NETSCAPE_PLUGIN_API 1
632 #endif
633
634 #if !defined(ENABLE_NETSCAPE_PLUGIN_METADATA_CACHE)
635 #define ENABLE_NETSCAPE_PLUGIN_METADATA_CACHE 0
636 #endif
637
638 #if !defined(ENABLE_NETWORK_INFO)
639 #define ENABLE_NETWORK_INFO 0
640 #endif
641
642 #if !defined(ENABLE_NOTIFICATIONS)
643 #define ENABLE_NOTIFICATIONS 0
644 #endif
645
646 #if !defined(ENABLE_OBJECT_MARK_LOGGING)
647 #define ENABLE_OBJECT_MARK_LOGGING 0
648 #endif
649
650 #if !defined(ENABLE_OPENCL)
651 #define ENABLE_OPENCL 0
652 #endif
653
654 #if !defined(ENABLE_OPENTYPE_VERTICAL)
655 #define ENABLE_OPENTYPE_VERTICAL 0
656 #endif
657
658 #if !defined(ENABLE_ORIENTATION_EVENTS)
659 #define ENABLE_ORIENTATION_EVENTS 0
660 #endif
661
662 #if !defined(ENABLE_PAGE_VISIBILITY_API)
663 #define ENABLE_PAGE_VISIBILITY_API 0
664 #endif
665
666 #if OS(WINDOWS)
667 #if !defined(ENABLE_PAN_SCROLLING)
668 #define ENABLE_PAN_SCROLLING 1
669 #endif
670 #endif
671
672 #if !defined(ENABLE_PLUGIN_PACKAGE_SIMPLE_HASH)
673 #define ENABLE_PLUGIN_PACKAGE_SIMPLE_HASH 0
674 #endif
675
676 #if !defined(ENABLE_PLUGIN_PROXY_FOR_VIDEO)
677 #define ENABLE_PLUGIN_PROXY_FOR_VIDEO 0
678 #endif
679
680 #if !defined(ENABLE_POINTER_LOCK)
681 #define ENABLE_POINTER_LOCK 0
682 #endif
683
684 #if !defined(ENABLE_PROGRESS_ELEMENT)
685 #define ENABLE_PROGRESS_ELEMENT 0
686 #endif
687
688 #if !defined(ENABLE_PROMISES)
689 #define ENABLE_PROMISES 0
690 #endif
691
692 #if !defined(ENABLE_PROXIMITY_EVENTS)
693 #define ENABLE_PROXIMITY_EVENTS 0
694 #endif
695
696 #if !defined(ENABLE_QUOTA)
697 #define ENABLE_QUOTA 0
698 #endif
699
700 #if !defined(ENABLE_REPAINT_THROTTLING)
701 #define ENABLE_REPAINT_THROTTLING 0
702 #endif
703
704 #if !defined(ENABLE_REQUEST_ANIMATION_FRAME)
705 #define ENABLE_REQUEST_ANIMATION_FRAME 0
706 #endif
707
708 #if !defined(ENABLE_RUBBER_BANDING)
709 #define ENABLE_RUBBER_BANDING 0
710 #endif
711
712 #if !defined(ENABLE_SATURATED_LAYOUT_ARITHMETIC)
713 #define ENABLE_SATURATED_LAYOUT_ARITHMETIC 0
714 #endif
715
716 #if !defined(ENABLE_SCRIPTED_SPEECH)
717 #define ENABLE_SCRIPTED_SPEECH 0
718 #endif
719
720 #if !defined(ENABLE_SHADOW_DOM)
721 #define ENABLE_SHADOW_DOM 0
722 #endif
723
724 #if !defined(ENABLE_SHARED_WORKERS)
725 #define ENABLE_SHARED_WORKERS 0
726 #endif
727
728 #if !defined(ENABLE_SMOOTH_SCROLLING)
729 #define ENABLE_SMOOTH_SCROLLING 0
730 #endif
731
732 #if !defined(ENABLE_SPEECH_SYNTHESIS)
733 #define ENABLE_SPEECH_SYNTHESIS 0
734 #endif
735
736 #if !defined(ENABLE_SPELLCHECK)
737 #define ENABLE_SPELLCHECK 0
738 #endif
739
740 #if !defined(ENABLE_SQL_DATABASE)
741 #define ENABLE_SQL_DATABASE 1
742 #endif
743
744 #if !defined(ENABLE_SUBPIXEL_LAYOUT)
745 #define ENABLE_SUBPIXEL_LAYOUT 0
746 #endif
747
748 #if !defined(ENABLE_SVG)
749 #define ENABLE_SVG 1
750 #endif
751
752 #if ENABLE(SVG)
753 #if !defined(ENABLE_SVG_FONTS)
754 #define ENABLE_SVG_FONTS 1
755 #endif
756 #endif
757
758 #if !defined(ENABLE_TEMPLATE_ELEMENT)
759 #define ENABLE_TEMPLATE_ELEMENT 0
760 #endif
761
762 #if !defined(ENABLE_TEXT_AUTOSIZING)
763 #define ENABLE_TEXT_AUTOSIZING 0
764 #endif
765
766 #if !defined(ENABLE_TEXT_CARET)
767 #define ENABLE_TEXT_CARET 1
768 #endif
769
770 #if !defined(ENABLE_THREADED_HTML_PARSER)
771 #define ENABLE_THREADED_HTML_PARSER 0
772 #endif
773
774 #if !defined(ENABLE_THREADED_SCROLLING)
775 #define ENABLE_THREADED_SCROLLING 0
776 #endif
777
778 #if !defined(ENABLE_TOUCH_EVENTS)
779 #define ENABLE_TOUCH_EVENTS 0
780 #endif
781
782 #if !defined(ENABLE_TOUCH_ICON_LOADING)
783 #define ENABLE_TOUCH_ICON_LOADING 0
784 #endif
785
786 #if !defined(ENABLE_VIBRATION)
787 #define ENABLE_VIBRATION 0
788 #endif
789
790 #if !defined(ENABLE_VIDEO)
791 #define ENABLE_VIDEO 0
792 #endif
793
794 #if !defined(ENABLE_VIDEO_TRACK)
795 #define ENABLE_VIDEO_TRACK 0
796 #endif
797
798 #if !defined(ENABLE_VIEWPORT)
799 #define ENABLE_VIEWPORT 0
800 #endif
801
802 #if !defined(ENABLE_VIEWSOURCE_ATTRIBUTE)
803 #define ENABLE_VIEWSOURCE_ATTRIBUTE 1
804 #endif
805
806 #if !defined(ENABLE_VIEW_MODE_CSS_MEDIA)
807 #define ENABLE_VIEW_MODE_CSS_MEDIA 1
808 #endif
809
810 #if !defined(ENABLE_WEBGL)
811 #define ENABLE_WEBGL 0
812 #endif
813
814 #if !defined(ENABLE_WEB_ANIMATIONS)
815 #define ENABLE_WEB_ANIMATIONS 0
816 #endif
817
818 #if !defined(ENABLE_WEB_ARCHIVE)
819 #define ENABLE_WEB_ARCHIVE 0
820 #endif
821
822 #if !defined(ENABLE_WEB_AUDIO)
823 #define ENABLE_WEB_AUDIO 0
824 #endif
825
826 #if !defined(ENABLE_WEB_SOCKETS)
827 #define ENABLE_WEB_SOCKETS 1
828 #endif
829
830 #if !defined(ENABLE_WEB_TIMING)
831 #define ENABLE_WEB_TIMING 0
832 #endif
833
834 #if !defined(ENABLE_WORKERS)
835 #define ENABLE_WORKERS 0
836 #endif
837
838 #if !defined(ENABLE_XHR_TIMEOUT)
839 #define ENABLE_XHR_TIMEOUT 0
840 #endif
841
842 #if !defined(ENABLE_XSLT)
843 #define ENABLE_XSLT 1
844 #endif
845
846 /* Asserts, invariants for macro definitions */
847
848 #if ENABLE(SATURATED_LAYOUT_ARITHMETIC) && !ENABLE(SUBPIXEL_LAYOUT)
849 #error "ENABLE(SATURATED_LAYOUT_ARITHMETIC) requires ENABLE(SUBPIXEL_LAYOUT)"
850 #endif
851
852 #if ENABLE(SVG_FONTS) && !ENABLE(SVG)
853 #error "ENABLE(SVG_FONTS) requires ENABLE(SVG)"
854 #endif
855
856 #if ENABLE(VIDEO_TRACK) && !ENABLE(VIDEO)
857 #error "ENABLE(VIDEO_TRACK) requires ENABLE(VIDEO)"
858 #endif
859
860 #if ENABLE(CSS_SHADERS) && !ENABLE(WEBGL)
861 #error "ENABLE(CSS_SHADERS) requires ENABLE(WEBGL)"
862 #endif
863
864 #endif /* WTF_FeatureDefines_h */