ef2ad6749f55687078fc8544161ab9af0990d4bd
[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': '62349',
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/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 dependencies
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   'printing':
93     Var('chromium_svn')+'/printing@'+Var('chromium_rev'),
94   'third_party/angle':  # needed by the gpu process
95     From('chromium_deps', 'src/third_party/angle'),
96   'third_party/ffmpeg': # needed by webkit/media
97     From('chromium_deps', 'src/third_party/ffmpeg'),
98   'third_party/libvpx/include':
99     From('chromium_deps', 'src/third_party/libvpx/include'),
100   'third_party/libvpx/lib':
101     From('chromium_deps', 'src/third_party/libvpx/lib'),
102   'tools/grit':
103     Var('chromium_svn')+'/tools/grit@'+Var('chromium_rev'),
104   'tools/generate_stubs':
105     Var('chromium_svn')+'/tools/generate_stubs@'+Var('chromium_rev'),
106
107   # other third party
108   'third_party':
109     Var('chromium_svn')+'/third_party@'+Var('chromium_rev'),
110   'third_party/icu':
111     From('chromium_deps', 'src/third_party/icu'),
112   'third_party/ppapi':
113     From('chromium_deps', 'src/third_party/ppapi'),
114   'third_party/ots':
115     From('chromium_deps', 'src/third_party/ots'),
116 }
117
118 deps_os = {
119   'win': {
120     'third_party/cygwin':
121       From('chromium_deps', 'src/third_party/cygwin'),
122     'third_party/python_24':
123       From('chromium_deps', 'src/third_party/python_24'),
124     'third_party/ffmpeg/binaries/chromium/win/ia32':
125       From('chromium_deps', 'src/third_party/ffmpeg/binaries/chromium/win/ia32'),
126     'third_party/lighttpd':
127       From('chromium_deps', 'src/third_party/lighttpd'),
128     'third_party/nss':
129       From('chromium_deps', 'src/third_party/nss'),
130   },
131   'mac': {
132     # needed by ffmpeg
133     'third_party/yasm/source/patched-yasm':
134       From('chromium_deps', 'src/third_party/yasm/source/patched-yasm'),
135     'third_party/nss':
136       From('chromium_deps', 'src/third_party/nss'),
137   },
138   'unix': {
139     # Linux, actually.
140     'tools/xdisplaycheck':
141       Var('chromium_svn')+'/tools/xdisplaycheck@'+Var('chromium_rev'),
142     'third_party/yasm/source/patched-yasm':
143       From('chromium_deps', 'src/third_party/yasm/source/patched-yasm'),
144   },
145 }
146
147 skip_child_includes = [
148    # Don't look for dependencies in the following folders: 
149    'base',
150    'build',
151    'googleurl',
152    'net',
153    'sdch',
154    'skia',
155    'testing',
156    'third_party',
157    'tools',
158    'v8',
159    'webkit',
160 ]
161
162 include_rules = [
163   # Everybody can use some things.
164   '+base',
165   '+build',
166   '+ipc',
167
168   # For now, we allow ICU to be included by specifying 'unicode/...', although
169   # this should probably change.
170   '+unicode',
171   '+testing',
172
173   # Allow anybody to include files from the 'public' Skia directory in the
174   # webkit port. This is shared between the webkit port and Chromium.
175   '+webkit/port/platform/graphics/skia/public',
176 ]
177
178
179 hooks = [
180   {
181     # A change to any file in this directory should run the gyp generator.
182     'pattern': '.',
183     'action': ['python', 'gyp_webkit'],
184   },
185 ]