• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2009 The Chromium Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5# This file is only included in full-chromium builds, and overrides the
6# feature_defines variable in
7# third_party/WebKit/Source/WebKit/chromium/features.gypi.
8{
9  'variables': {
10    # WARNING: This list of strings completely replaces the list in
11    # features.gypi. Therefore, if an enable is listed in features.gypi
12    # but not listed below, it will revert to its hardcoded webkit value.
13    'feature_defines': [
14      'ENABLE_3D_PLUGIN=1',
15      'ENABLE_BLOB=1',
16      'ENABLE_BLOB_SLICE=1',
17      'ENABLE_CHANNEL_MESSAGING=1',
18      'ENABLE_CLIENT_BASED_GEOLOCATION=1',
19      'ENABLE_DASHBOARD_SUPPORT=0',
20      'ENABLE_DATABASE=1',
21      'ENABLE_DATAGRID=0',
22      'ENABLE_DATA_TRANSFER_ITEMS=1',
23      'ENABLE_DEVICE_ORIENTATION=1',
24      'ENABLE_DIRECTORY_UPLOAD=1',
25      'ENABLE_DOM_STORAGE=1',
26      'ENABLE_EVENTSOURCE=1',
27      'ENABLE_JAVASCRIPT_I18N_API=1',
28      'ENABLE_FILE_SYSTEM=1',
29      'ENABLE_FILTERS=1',
30      'ENABLE_GEOLOCATION=1',
31      'ENABLE_ICONDATABASE=0',
32      'ENABLE_INDEXED_DATABASE=1',
33      'ENABLE_INPUT_SPEECH=1',
34      'ENABLE_JAVASCRIPT_DEBUGGER=1',
35      'ENABLE_JSC_MULTIPLE_THREADS=0',
36      'ENABLE_LEVELDB=0',
37      'ENABLE_LINK_PREFETCH=1',
38      'ENABLE_METER_TAG=1',
39      'ENABLE_MEDIA_STATISTICS=1',
40      'ENABLE_MEDIA_STREAM=1',
41      'ENABLE_NOTIFICATIONS=1',
42      'ENABLE_OFFLINE_WEB_APPLICATIONS=1',
43      'ENABLE_OPENTYPE_SANITIZER=1',
44      'ENABLE_ORIENTATION_EVENTS=0',
45      'ENABLE_PROGRESS_TAG=1',
46      'ENABLE_REQUEST_ANIMATION_FRAME=1',
47      'ENABLE_RUBY=1',
48      'ENABLE_SANDBOX=1',
49      'ENABLE_SHARED_WORKERS=1',
50      'ENABLE_SKIA_GPU=<(use_skia_gpu)',
51      'ENABLE_SVG=<(enable_svg)',
52      'ENABLE_SVG_ANIMATION=<(enable_svg)',
53      'ENABLE_SVG_AS_IMAGE=<(enable_svg)',
54      'ENABLE_SVG_FONTS=<(enable_svg)',
55      'ENABLE_SVG_FOREIGN_OBJECT=<(enable_svg)',
56      'ENABLE_SVG_USE=<(enable_svg)',
57      'ENABLE_TOUCH_EVENTS=<(enable_touch_events)',
58      'ENABLE_V8_SCRIPT_DEBUG_SERVER=1',
59      'ENABLE_VIDEO=1',
60      'ENABLE_WEB_SOCKETS=1',
61      'ENABLE_WEB_TIMING=1',
62      'ENABLE_WEBGL=1',
63      'ENABLE_WORKERS=1',
64      'ENABLE_XHR_RESPONSE_BLOB=1',
65      'ENABLE_XPATH=1',
66      'ENABLE_XSLT=1',
67      'WTF_USE_BUILTIN_UTF8_CODEC=1',
68      # WTF_USE_DYNAMIC_ANNOTATIONS=1 may be defined in build/common.gypi
69      # We can't define it here because it should be present only
70      # in Debug or release_valgrind_build=1 builds.
71      'WTF_USE_WEBP=1',
72      'WTF_USE_WEBKIT_IMAGE_DECODERS=1',
73    ],
74    # We have to nest variables inside variables so that they can be overridden
75    # through GYP_DEFINES.
76    'variables': {
77      'use_accelerated_compositing%': 1,
78      'use_threaded_compositing%': 0,
79      'enable_svg%': 1,
80      'enable_touch_events%': 1,
81      'use_skia_gpu%': 0,
82    },
83    'use_accelerated_compositing%': '<(use_accelerated_compositing)',
84    'use_threaded_compositing%': '<(use_threaded_compositing)',
85    'enable_svg%': '<(enable_svg)',
86    'enable_touch_events%': '<(enable_touch_events)',
87    'conditions': [
88      ['(OS=="win" or OS=="linux" or OS=="mac") and use_accelerated_compositing==1', {
89        'feature_defines': [
90          'WTF_USE_ACCELERATED_COMPOSITING=1',
91          'ENABLE_3D_RENDERING=1',
92          'ENABLE_ACCELERATED_2D_CANVAS=1',
93        ],
94        'use_accelerated_compositing': 1,
95      }],
96      ['use_accelerated_compositing==1 and use_threaded_compositing==1', {
97        'feature_defines': [
98          'WTF_USE_THREADED_COMPOSITING=1',
99        ],
100        'use_threaded_compositing': 1,
101      }],
102      ['OS=="mac"', {
103        'feature_defines': [
104          'ENABLE_WEB_AUDIO=1',
105        ],
106      }],
107    ],
108    # TODO: If the need arises, create a mechanism that will intelligently
109    # merge the lists rather than replace one with the other. This may
110    # require changes in gyp.
111  },
112
113}
114
115# Local Variables:
116# tab-width:2
117# indent-tabs-mode:nil
118# End:
119# vim: set expandtab tabstop=2 shiftwidth=2:
120