5f3d4b55e74ecebcc41ed6f88956591b1ba246ab
[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': '158095'
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   'google_apis':
95     Var('chromium_svn')+'/google_apis@' + Var('chromium_rev'),
96   'gpu':
97     Var('chromium_svn')+'/gpu@'+Var('chromium_rev'),
98   'ipc':
99     Var('chromium_svn')+'/ipc@'+Var('chromium_rev'),
100   'media':
101     Var('chromium_svn')+'/media@'+Var('chromium_rev'),
102   'printing':
103     Var('chromium_svn')+'/printing@'+Var('chromium_rev'),
104   'ppapi':
105     Var('chromium_svn')+'/ppapi@'+Var('chromium_rev'),
106   'sql':
107     Var('chromium_svn')+'/sql@'+Var('chromium_rev'),
108   'third_party/angle':  # needed by the gpu process
109     From('chromium_deps', 'src/third_party/angle'),
110   'third_party/libvpx': # needed by webkit/media
111     From('chromium_deps', 'src/third_party/libvpx'),
112   'third_party/ffmpeg': # needed by webkit/media
113     From('chromium_deps', 'src/third_party/ffmpeg'),
114   'third_party/libjingle/source':
115     From('chromium_deps', 'src/third_party/libjingle/source'),
116   'tools/grit':
117     From('chromium_deps', 'src/tools/grit'),
118   'tools/gritsettings':
119     Var('chromium_svn')+'/tools/gritsettings@'+Var('chromium_rev'),
120   'tools/generate_stubs':
121     Var('chromium_svn')+'/tools/generate_stubs@'+Var('chromium_rev'),
122   'tools/win':
123     Var('chromium_svn')+'/tools/win@'+Var('chromium_rev'),
124   'ui':
125     Var('chromium_svn')+'/ui@'+Var('chromium_rev'),
126
127   # other third party
128   'third_party/pyftpdlib/src':
129     From('chromium_deps', 'src/third_party/pyftpdlib/src'),
130   'third_party/icu':
131     From('chromium_deps', 'src/third_party/icu'),
132   'third_party/ots':
133     From('chromium_deps', 'src/third_party/ots'),
134   'third_party/yasm/source/patched-yasm':
135     From('chromium_deps', 'src/third_party/yasm/source/patched-yasm'),
136   'third_party/libjpeg_turbo':
137     From('chromium_deps', 'src/third_party/libjpeg_turbo'),
138   'third_party/leveldatabase/src':
139     From('chromium_deps', 'src/third_party/leveldatabase/src'),
140   'third_party/snappy/src':
141     From('chromium_deps', 'src/third_party/snappy/src'),
142   'third_party/sfntly/cpp/src':
143     From('chromium_deps', 'src/third_party/sfntly/cpp/src'),
144   'third_party/v8-i18n':
145     From('chromium_deps', 'src/third_party/v8-i18n'),
146   'third_party':
147     Var('chromium_svn')+'/third_party@'+Var('chromium_rev'),
148 }
149
150 deps_os = {
151   'win': {
152     'third_party/bison':
153       From('chromium_deps', 'src/third_party/bison'),
154     'third_party/cygwin':
155       From('chromium_deps', 'src/third_party/cygwin'),
156     'third_party/gperf':
157       From('chromium_deps', 'src/third_party/gperf'),
158     'third_party/lighttpd':
159       From('chromium_deps', 'src/third_party/lighttpd'),
160     'third_party/nss':
161       From('chromium_deps', 'src/third_party/nss'),
162     'third_party/perl':
163       From('chromium_deps', 'src/third_party/perl'),
164     'tools/isolate':
165       Var('chromium_svn')+'/tools/isolate@'+Var('chromium_rev'),
166     # Dependencies used by libjpeg-turbo
167     'third_party/yasm/binaries':
168       From('chromium_deps', 'src/third_party/yasm/binaries'),
169   },
170   'mac': {
171     'third_party/nss':
172       From('chromium_deps', 'src/third_party/nss'),
173     'third_party/GTM':
174       From('chromium_deps', 'src/third_party/GTM'),
175   },
176   'unix': {
177     # Linux, actually.
178     'tools/xdisplaycheck':
179       Var('chromium_svn')+'/tools/xdisplaycheck@'+Var('chromium_rev'),
180     'third_party/gold':
181       From('chromium_deps', 'src/third_party/gold'),
182     'third_party/openssl':
183       From('chromium_deps', 'src/third_party/openssl'),
184   },
185   'android': {
186     'third_party/android_tools':
187       From('chromium_deps', 'src/third_party/android_tools'),
188     'third_party/freetype':
189       From('chromium_deps', 'src/third_party/freetype'),
190     'tools/android':
191       Var('chromium_svn') + '/tools/android@' + Var('chromium_rev'),
192   },
193 }
194
195 skip_child_includes = [
196    # Don't look for dependencies in the following folders: 
197    'base',
198    'build',
199    'googleurl',
200    'net',
201    'sdch',
202    'skia',
203    'testing',
204    'third_party',
205    'tools',
206    'v8',
207    'webkit',
208 ]
209
210 include_rules = [
211   # Everybody can use some things.
212   '+base',
213   '+build',
214   '+ipc',
215
216   # For now, we allow ICU to be included by specifying 'unicode/...', although
217   # this should probably change.
218   '+unicode',
219   '+testing',
220
221   # Allow anybody to include files from the 'public' Skia directory in the
222   # webkit port. This is shared between the webkit port and Chromium.
223   '+webkit/port/platform/graphics/skia/public',
224 ]
225
226
227 hooks = [
228   {
229     # Pull clang on mac.
230     "pattern": ".",
231     "action": ["python", "tools/clang/scripts/update.py", "--mac-only"],
232   },
233   {
234     # A change to any file in this directory should run the gyp generator.
235     'pattern': '.',
236     'action': ['python', 'gyp_webkit'],
237   },
238 ]