2010-04-29 James Robinson <jamesr@chromium.org>
[WebKit-https.git] / 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': '45932',
36
37   'pthreads-win32_rev': '26716',
38 }
39
40 deps = {
41   'chromium_deps':
42     File(Var('chromium_svn')+'/DEPS@'+Var('chromium_rev')),
43
44   # build tools
45   'build':
46     Var('chromium_svn')+'/build@'+Var('chromium_rev'),
47   'tools/gyp':
48     From('chromium_deps', 'src/tools/gyp'),
49
50   # Basic tools
51   'base':
52     Var('chromium_svn')+'/base@'+Var('chromium_rev'),
53   'gfx':
54     Var('chromium_svn')+'/gfx@'+Var('chromium_rev'),
55
56   # skia dependencies
57   'skia':
58     Var('chromium_svn')+'/skia@'+Var('chromium_rev'),
59   'third_party/skia/src':
60     From('chromium_deps', 'src/third_party/skia/src'),
61   'third_party/skia/include':
62     From('chromium_deps', 'src/third_party/skia/include'),
63
64   # testing
65   'testing':
66     Var('chromium_svn')+'/testing@'+Var('chromium_rev'),
67   'testing/gtest':
68     From('chromium_deps', 'src/testing/gtest'),
69
70   # v8 javascript engine
71   'v8': From('chromium_deps', 'src/v8'),
72
73   # net dependencies
74   'net':
75     Var('chromium_svn')+'/net@'+Var('chromium_rev'),
76   'sdch':
77     Var('chromium_svn')+'/sdch@'+Var('chromium_rev'),
78   'sdch/open-vcdiff':
79     From('chromium_deps', 'src/sdch/open-vcdiff'),
80   'googleurl':
81     From('chromium_deps', 'src/googleurl'),
82
83   # webkit dependencis
84   'webkit': Var('chromium_svn')+'/webkit@'+Var('chromium_rev'),
85
86   'app':
87     Var('chromium_svn')+'/app@'+Var('chromium_rev'), # needed by appcache
88   'gpu':
89     Var('chromium_svn')+'/gpu@'+Var('chromium_rev'),
90   'media':
91     Var('chromium_svn')+'/media@'+Var('chromium_rev'),
92   'third_party/glew':  # webgl related
93     Var('chromium_svn')+'/third_party/glew@'+Var('chromium_rev'),
94   'third_party/ffmpeg': # needed by webkit/media
95     Var('chromium_svn')+'/third_party/ffmpeg@'+Var('chromium_rev'),
96   'third_party/yasm': # needed by ffmpeg
97     Var('chromium_svn')+'/third_party/yasm@'+Var('chromium_rev'),
98   'third_party/openmax': # needed by webkit/media
99     Var('chromium_svn')+'/third_party/openmax@'+Var('chromium_rev'),
100   'tools/grit':
101     Var('chromium_svn')+'/tools/grit@'+Var('chromium_rev'),
102   'tools/generate_stubs':
103     Var('chromium_svn')+'/tools/generate_stubs@'+Var('chromium_rev'),
104
105   # other third party
106   'third_party/icu':
107     From('chromium_deps', 'src/third_party/icu'),
108
109   'third_party/bzip2':
110     Var('chromium_svn')+'/third_party/bzip2@'+Var('chromium_rev'),
111
112   'third_party/libevent':
113     Var('chromium_svn')+'/third_party/libevent@'+Var('chromium_rev'),
114
115   'third_party/libjpeg':
116     Var('chromium_svn')+'/third_party/libjpeg@'+Var('chromium_rev'),
117
118   'third_party/libpng':
119     Var('chromium_svn')+'/third_party/libpng@'+Var('chromium_rev'),
120
121   'third_party/libxml':
122     Var('chromium_svn')+'/third_party/libxml@'+Var('chromium_rev'),
123
124   'third_party/libxslt':
125     Var('chromium_svn')+'/third_party/libxslt@'+Var('chromium_rev'),
126
127   'third_party/modp_b64':
128     Var('chromium_svn')+'/third_party/modp_b64@'+Var('chromium_rev'),
129
130   'third_party/npapi':
131     Var('chromium_svn')+'/third_party/npapi@'+Var('chromium_rev'),
132
133   'third_party/ots':
134     From('chromium_deps', 'src/third_party/ots'),
135
136   'third_party/sqlite':
137     Var('chromium_svn')+'/third_party/sqlite@'+Var('chromium_rev'),
138
139   'third_party/tcmalloc':
140     Var('chromium_svn')+'/third_party/tcmalloc@'+Var('chromium_rev'),
141
142   'third_party/zlib':
143     Var('chromium_svn')+'/third_party/zlib@'+Var('chromium_rev'),
144
145   'third_party/ffmpeg/source/patched-ffmpeg-mt':
146     From('chromium_deps', 'src/third_party/ffmpeg/source/patched-ffmpeg-mt'),
147 }
148
149 deps_os = {
150   'win': {
151     'third_party/cygwin':
152       From('chromium_deps', 'src/third_party/cygwin'),
153     'third_party/python_24':
154       From('chromium_deps', 'src/third_party/python_24'),
155     'third_party/ffmpeg/binaries/chromium/win/ia32':
156       From('chromium_deps', 'src/third_party/ffmpeg/binaries/chromium/win/ia32'),
157     'third_party/pthreads-win32':
158       'http://src.chromium.org/svn/trunk/deps/third_party/pthreads-win32@'+Var('pthreads-win32_rev'),
159     # base.gypi depends on nss on Windows
160     'third_party/nss':
161       From('chromium_deps', 'src/third_party/nss'),
162     'third_party/wtl':
163       Var('chromium_svn')+'/third_party/wtl@'+Var('chromium_rev'),
164   },
165   'mac': {
166     # needed by ffmpeg
167     'third_party/yasm/source/patched-yasm':
168       From('chromium_deps', 'src/third_party/yasm/source/patched-yasm'),
169   },
170   'unix': {
171     # Linux, actually.
172     'third_party/harfbuzz':
173       Var('chromium_svn')+'/third_party/harfbuzz@'+Var('chromium_rev'),
174     'tools/xdisplaycheck':
175       Var('chromium_svn')+'/tools/xdisplaycheck@'+Var('chromium_rev'),
176     'tools/data_pack':
177       Var('chromium_svn')+'/tools/data_pack@'+Var('chromium_rev'),
178     'third_party/yasm/source/patched-yasm':
179       From('chromium_deps', 'src/third_party/yasm/source/patched-yasm'),
180   },
181 }
182
183 skip_child_includes = [
184    # Don't look for dependencies in the following folders: 
185    'base',
186    'build',
187    'googleurl',
188    'net',
189    'sdch',
190    'skia',
191    'testing',
192    'third_party',
193    'tools',
194    'v8',
195    'webkit',
196 ]
197
198 include_rules = [
199   # Everybody can use some things.
200   '+base',
201   '+build',
202   '+ipc',
203
204   # For now, we allow ICU to be included by specifying 'unicode/...', although
205   # this should probably change.
206   '+unicode',
207   '+testing',
208
209   # Allow anybody to include files from the 'public' Skia directory in the
210   # webkit port. This is shared between the webkit port and Chromium.
211   '+webkit/port/platform/graphics/skia/public',
212 ]
213
214
215 hooks = [
216   {
217     # A change to any file in this directory should run the gyp generator.
218     'pattern': '.',
219     'action': ['python', 'gyp_webkit'],
220   },
221 ]