bdb9004b98baa0003b1675e14aec1cc44a310a60
[WebKit-https.git] / Source / WebKit / chromium / DEPS
1 #
2 # Copyright (C) 2009 Google Inc. All rights reserved.
3 #
4 # Redistribution and use in source and binary forms, with or without
5 # modification, are permitted provided that the following conditions are
6 # met:
7 #
8 #   * Redistributions of source code must retain the above copyright notice,
9 #     this list of conditions and the following disclaimer.
10 #   * Redistributions in binary form must reproduce the above copyright 
11 #     notice, this list of conditions and the following disclaimer in the
12 #     documentation and/or other materials provided with the distribution.
13 #   * Neither the name of Google Inc. nor the names of its contributors 
14 #     may be used to endorse or promote products derived from this software
15 #     without specific prior written permission.
16 #
17 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
18 # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
19 # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
20 # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
21 # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
22 # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
23 # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
24 # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
25 # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
27 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28 #
29
30 # This file is used by gclient to fetch the projects that the webkit
31 # chromium port depends on.
32
33 vars = {
34   'chromium_svn': 'http://src.chromium.org/svn/trunk/src',
35   'chromium_rev': '155144'
36 }
37
38 deps = {
39   'chromium_deps':
40     File(Var('chromium_svn')+'/DEPS@'+Var('chromium_rev')),
41
42   # build tools
43   'build':
44     Var('chromium_svn')+'/build@'+Var('chromium_rev'),
45   'tools/gyp':
46     From('chromium_deps', 'src/tools/gyp'),
47   'tools/clang':
48     Var('chromium_svn')+'/tools/clang@'+Var('chromium_rev'),
49
50   # Basic tools
51   'base':
52     Var('chromium_svn')+'/base@'+Var('chromium_rev'),
53
54   # skia dependencies
55   'skia':
56     Var('chromium_svn')+'/skia@'+Var('chromium_rev'),
57   'third_party/skia/src':
58     From('chromium_deps', 'src/third_party/skia/src'),
59   'third_party/skia/include':
60     From('chromium_deps', 'src/third_party/skia/include'),
61   'third_party/skia/gyp':
62     From('chromium_deps', 'src/third_party/skia/gyp'),
63
64   # testing
65   'testing':
66     Var('chromium_svn')+'/testing@'+Var('chromium_rev'),
67   'testing/gtest':
68     From('chromium_deps', 'src/testing/gtest'),
69   'testing/gmock':
70     From('chromium_deps', 'src/testing/gmock'),
71
72   # v8 javascript engine
73   'v8': From('chromium_deps', 'src/v8'),
74
75   # net dependencies
76   'net':
77     Var('chromium_svn')+'/net@'+Var('chromium_rev'),
78   'crypto':
79     Var('chromium_svn')+'/crypto@'+Var('chromium_rev'),
80   'dbus':
81     Var('chromium_svn')+'/dbus@'+Var('chromium_rev'),
82   'sdch':
83     Var('chromium_svn')+'/sdch@'+Var('chromium_rev'),
84   'sdch/open-vcdiff':
85     From('chromium_deps', 'src/sdch/open-vcdiff'),
86   'googleurl':
87     From('chromium_deps', 'src/googleurl'),
88
89   # webkit dependencies
90   'webkit': Var('chromium_svn')+'/webkit@'+Var('chromium_rev'),
91
92   'cc':
93     Var('chromium_svn')+'/cc@'+Var('chromium_rev'),
94   'gpu':
95     Var('chromium_svn')+'/gpu@'+Var('chromium_rev'),
96   'ipc':
97     Var('chromium_svn')+'/ipc@'+Var('chromium_rev'),
98   'media':
99     Var('chromium_svn')+'/media@'+Var('chromium_rev'),
100   'printing':
101     Var('chromium_svn')+'/printing@'+Var('chromium_rev'),
102   'ppapi':
103     Var('chromium_svn')+'/ppapi@'+Var('chromium_rev'),
104   'sql':
105     Var('chromium_svn')+'/sql@'+Var('chromium_rev'),
106   'third_party/angle':  # needed by the gpu process
107     From('chromium_deps', 'src/third_party/angle'),
108   'third_party/libvpx': # needed by webkit/media
109     From('chromium_deps', 'src/third_party/libvpx'),
110   'third_party/ffmpeg': # needed by webkit/media
111     From('chromium_deps', 'src/third_party/ffmpeg'),
112   'third_party/libjingle/source':
113     From('chromium_deps', 'src/third_party/libjingle/source'),
114   'tools/grit':
115     From('chromium_deps', 'src/tools/grit'),
116   'tools/gritsettings':
117     Var('chromium_svn')+'/tools/gritsettings@'+Var('chromium_rev'),
118   'tools/generate_stubs':
119     Var('chromium_svn')+'/tools/generate_stubs@'+Var('chromium_rev'),
120   'tools/win':
121     Var('chromium_svn')+'/tools/win@'+Var('chromium_rev'),
122   'ui':
123     Var('chromium_svn')+'/ui@'+Var('chromium_rev'),
124
125   # other third party
126   'third_party/pyftpdlib/src':
127     From('chromium_deps', 'src/third_party/pyftpdlib/src'),
128   'third_party/icu':
129     From('chromium_deps', 'src/third_party/icu'),
130   'third_party/ots':
131     From('chromium_deps', 'src/third_party/ots'),
132   'third_party/yasm/source/patched-yasm':
133     From('chromium_deps', 'src/third_party/yasm/source/patched-yasm'),
134   'third_party/libjpeg_turbo':
135     From('chromium_deps', 'src/third_party/libjpeg_turbo'),
136   'third_party/leveldatabase/src':
137     From('chromium_deps', 'src/third_party/leveldatabase/src'),
138   'third_party/snappy/src':
139     From('chromium_deps', 'src/third_party/snappy/src'),
140   'third_party/sfntly/cpp/src':
141     From('chromium_deps', 'src/third_party/sfntly/cpp/src'),
142   'third_party/v8-i18n':
143     From('chromium_deps', 'src/third_party/v8-i18n'),
144   'third_party':
145     Var('chromium_svn')+'/third_party@'+Var('chromium_rev'),
146 }
147
148 deps_os = {
149   'win': {
150     'third_party/bison':
151       From('chromium_deps', 'src/third_party/bison'),
152     'third_party/cygwin':
153       From('chromium_deps', 'src/third_party/cygwin'),
154     'third_party/gperf':
155       From('chromium_deps', 'src/third_party/gperf'),
156     'third_party/lighttpd':
157       From('chromium_deps', 'src/third_party/lighttpd'),
158     'third_party/nss':
159       From('chromium_deps', 'src/third_party/nss'),
160     'third_party/perl':
161       From('chromium_deps', 'src/third_party/perl'),
162     'tools/isolate':
163       Var('chromium_svn')+'/tools/isolate@'+Var('chromium_rev'),
164     # Dependencies used by libjpeg-turbo
165     'third_party/yasm/binaries':
166       From('chromium_deps', 'src/third_party/yasm/binaries'),
167   },
168   'mac': {
169     'third_party/nss':
170       From('chromium_deps', 'src/third_party/nss'),
171     'third_party/GTM':
172       From('chromium_deps', 'src/third_party/GTM'),
173   },
174   'unix': {
175     # Linux, actually.
176     'tools/xdisplaycheck':
177       Var('chromium_svn')+'/tools/xdisplaycheck@'+Var('chromium_rev'),
178     'third_party/gold':
179       From('chromium_deps', 'src/third_party/gold'),
180     'third_party/openssl':
181       From('chromium_deps', 'src/third_party/openssl'),
182   },
183   'android': {
184     'third_party/android_tools':
185       From('chromium_deps', 'src/third_party/android_tools'),
186     'third_party/freetype':
187       From('chromium_deps', 'src/third_party/freetype'),
188     'tools/android':
189       Var('chromium_svn') + '/tools/android@' + Var('chromium_rev'),
190   },
191 }
192
193 skip_child_includes = [
194    # Don't look for dependencies in the following folders: 
195    'base',
196    'build',
197    'googleurl',
198    'net',
199    'sdch',
200    'skia',
201    'testing',
202    'third_party',
203    'tools',
204    'v8',
205    'webkit',
206 ]
207
208 include_rules = [
209   # Everybody can use some things.
210   '+base',
211   '+build',
212   '+ipc',
213
214   # For now, we allow ICU to be included by specifying 'unicode/...', although
215   # this should probably change.
216   '+unicode',
217   '+testing',
218
219   # Allow anybody to include files from the 'public' Skia directory in the
220   # webkit port. This is shared between the webkit port and Chromium.
221   '+webkit/port/platform/graphics/skia/public',
222 ]
223
224
225 hooks = [
226   {
227     # Pull clang on mac.
228     "pattern": ".",
229     "action": ["python", "tools/clang/scripts/update.py", "--mac-only"],
230   },
231   {
232     # A change to any file in this directory should run the gyp generator.
233     'pattern': '.',
234     'action': ['python', 'gyp_webkit'],
235   },
236 ]