2011-02-04 Daniel Cheng <dcheng@chromium.org>
[WebKit.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': '73764'
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/data_pack':
46     Var('chromium_svn')+'/tools/data_pack@'+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/gpu':
60     From('chromium_deps', 'src/third_party/skia/gpu'),
61   'third_party/skia/src':
62     From('chromium_deps', 'src/third_party/skia/src'),
63   'third_party/skia/include':
64     From('chromium_deps', 'src/third_party/skia/include'),
65
66   # testing
67   'testing':
68     Var('chromium_svn')+'/testing@'+Var('chromium_rev'),
69   'testing/gtest':
70     From('chromium_deps', 'src/testing/gtest'),
71   'testing/gmock':
72     From('chromium_deps', 'src/testing/gmock'),
73
74   # v8 javascript engine
75   'v8': From('chromium_deps', 'src/v8'),
76
77   # net dependencies
78   'net':
79     Var('chromium_svn')+'/net@'+Var('chromium_rev'),
80   'sdch':
81     Var('chromium_svn')+'/sdch@'+Var('chromium_rev'),
82   'sdch/open-vcdiff':
83     From('chromium_deps', 'src/sdch/open-vcdiff'),
84   'googleurl':
85     From('chromium_deps', 'src/googleurl'),
86
87   # webkit dependencies
88   'webkit': Var('chromium_svn')+'/webkit@'+Var('chromium_rev'),
89
90   'app':
91     Var('chromium_svn')+'/app@'+Var('chromium_rev'), # needed by appcache
92   'gpu':
93     Var('chromium_svn')+'/gpu@'+Var('chromium_rev'),
94   'ipc':
95     Var('chromium_svn')+'/ipc@'+Var('chromium_rev'),
96   'media':
97     Var('chromium_svn')+'/media@'+Var('chromium_rev'),
98   'printing':
99     Var('chromium_svn')+'/printing@'+Var('chromium_rev'),
100   'ppapi':
101     Var('chromium_svn')+'/ppapi@'+Var('chromium_rev'),
102   'third_party/angle':  # needed by the gpu process
103     From('chromium_deps', 'src/third_party/angle'),
104   'third_party/libvpx': # needed by webkit/media
105     From('chromium_deps', 'src/third_party/libvpx'),
106   'third_party/ffmpeg': # needed by webkit/media
107     From('chromium_deps', 'src/third_party/ffmpeg'),
108   'third_party/libwebp':
109     Var('chromium_svn')+'/third_party/libwebp@'+Var('chromium_rev'),
110   'tools/grit':
111     Var('chromium_svn')+'/tools/grit@'+Var('chromium_rev'),
112   'tools/generate_stubs':
113     Var('chromium_svn')+'/tools/generate_stubs@'+Var('chromium_rev'),
114   'ui':
115     Var('chromium_svn')+'/ui@'+Var('chromium_rev'), # needed by app
116
117   # other third party
118   'third_party/icu':
119     From('chromium_deps', 'src/third_party/icu'),
120   'third_party/ots':
121     From('chromium_deps', 'src/third_party/ots'),
122   'third_party/yasm/source/patched-yasm':
123     From('chromium_deps', 'src/third_party/yasm/source/patched-yasm'),
124   'third_party':
125     Var('chromium_svn')+'/third_party@'+Var('chromium_rev'),
126 }
127
128 deps_os = {
129   'win': {
130     'third_party/cygwin':
131       From('chromium_deps', 'src/third_party/cygwin'),
132     'third_party/ffmpeg/binaries/chromium/win/ia32':
133       From('chromium_deps', 'src/third_party/ffmpeg/binaries/chromium/win/ia32'),
134     'third_party/lighttpd':
135       From('chromium_deps', 'src/third_party/lighttpd'),
136     'third_party/nss':
137       From('chromium_deps', 'src/third_party/nss'),
138   },
139   'mac': {
140     'third_party/nss':
141       From('chromium_deps', 'src/third_party/nss'),
142   },
143   'unix': {
144     # Linux, actually.
145     'tools/xdisplaycheck':
146       Var('chromium_svn')+'/tools/xdisplaycheck@'+Var('chromium_rev'),
147     'third_party/openssl':
148       From('chromium_deps', 'src/third_party/openssl'),
149   },
150 }
151
152 skip_child_includes = [
153    # Don't look for dependencies in the following folders: 
154    'base',
155    'build',
156    'googleurl',
157    'net',
158    'sdch',
159    'skia',
160    'testing',
161    'third_party',
162    'tools',
163    'v8',
164    'webkit',
165 ]
166
167 include_rules = [
168   # Everybody can use some things.
169   '+base',
170   '+build',
171   '+ipc',
172
173   # For now, we allow ICU to be included by specifying 'unicode/...', although
174   # this should probably change.
175   '+unicode',
176   '+testing',
177
178   # Allow anybody to include files from the 'public' Skia directory in the
179   # webkit port. This is shared between the webkit port and Chromium.
180   '+webkit/port/platform/graphics/skia/public',
181 ]
182
183
184 hooks = [
185   {
186     # A change to any file in this directory should run the gyp generator.
187     'pattern': '.',
188     'action': ['python', 'gyp_webkit'],
189   },
190 ]