Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(19)

Side by Side Diff: webkit/SConscript

Issue 53121: Remove the checked-in scons configuration files. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 11 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « tools/gtk_clipboard_dump/gcd.scons ('k') | webkit/SConscript.javascriptcore_pcre » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 # Copyright (c) 2006-2008 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
4
5 import os
6
7 Import(['env'])
8
9 env = env.Clone()
10 env_res = env.Clone()
11
12 # We use the SCons addRepository() call (an internal API that will
13 # at some point be made public) to "back" the build directory
14 # hierarchy with the source directory hierarchies in which we want to
15 # find the source .cpp and .h files. Think of this kind of like
16 # Make's VPATH, but applied to entire directory hierarchies. The
17 # upshot is that when searching for any file (source or target),
18 # SCons will search the subdirectory hierarchies under the following
19 # paths:
20 #
21 # webkit/Hammer/port/
22 # webkit/port/
23 # third_party/WebKit/WebCore/
24 #
25 # SCons will replicate the compiler and linker -I and -L options so
26 # that the tools will find the right .h and library files. This comes
27 # at the cost of tripling the number of -I or -L options on a command
28 # line, but with the benefit that the build should "just work"
29 # regardless of which tree the file lives in, and regardless of whether
30 # or not the file involved is a generated file or checked-in source.
31 #
32 # (Note that because the build/SConscript.main file also calls
33 # addRepository() for the entire $OBJ_ROOT tree, that adds an
34 # extra -I or -L option for the webkit/port/ subdirectory, after the
35 # third_party/WebKit/WebCore/ in the above list. We'd like to
36 # eliminate that in the future, but that will require some
37 # deeper magic, and maybe a SCons modification.)
38
39 port_dir = env.Dir('$WEBKIT_DIR/port')
40 port_dir.addRepository(env.Dir('$CHROME_SRC_DIR/webkit/port'))
41 port_dir.addRepository(env.Dir('$CHROME_SRC_DIR/third_party/WebKit/WebCore'))
42
43 if env.Bit('windows'):
44 env['WEBKIT_PLATFORM_SUBDIR'] = 'win'
45 elif env.Bit('mac'):
46 env['WEBKIT_PLATFORM_SUBDIR'] = 'mac'
47 env.Append(
48 CCFLAGS = [
49 '-Wno-reorder',
50 '-Wno-unused',
51 ],
52 )
53 env.Prepend(
54 CPPPATH = [env.subst(x) for x in [
55 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/platform/graphics/cg',
56 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/loader/archive/cf',
57 ]]
58 )
59 elif env.Bit('linux'):
60 env.Append(
61 CPPDEFINES = [
62 # We want webkit to use pthreads rather than gthread.
63 'WTF_USE_PTHREADS=1',
64 ],
65 )
66
67 if env.Bit('posix'):
68 env.Append(
69 CCFLAGS = [
70 '-Wno-parentheses',
71 ],
72 )
73
74 env.Append(
75 WEBCORE_DIR = '$THIRD_PARTY_WEBKIT_DIR/WebCore',
76 PENDING_DIR = "$WEBKIT_DIR/pending",
77 PORT_DIR = "$WEBKIT_DIR/port",
78
79 JAVASCRIPTCORE_DIR = "$THIRD_PARTY_WEBKIT_DIR/JavaScriptCore",
80 WTF_DIR = "$JAVASCRIPTCORE_DIR/wtf",
81 KJS_DIR = "$JAVASCRIPTCORE_DIR/kjs",
82 PCRE_DIR = "$JAVASCRIPTCORE_DIR/pcre",
83
84 V8BINDINGS_DIR = "$WEBKIT_DIR/V8Bindings",
85 DERIVED_DIR = env.Dir("$WEBKIT_DIR/V8Bindings/DerivedSources"),
86 SHARED_DIR = env.Dir("$WEBKIT_DIR/V8Bindings/SharedSources"),
87
88 WEBKIT_DIR_PORT_INC = env.Dir("$CHROME_SRC_DIR/webkit/port"),
89 )
90
91 env.Prepend(
92 CPPPATH = [env.subst(x) for x in [
93
94 # We put our grit generated headers in a common place. This matches
95 # what we do in Visual Studios.
96 '$TARGET_ROOT/grit_derived_sources',
97 '$WEBKIT_DIR/build/JSConfig/WebCore',
98
99 # TODO(sgk): This directory was at this point in the /I list
100 # in the Visual Studio build of the merged webkit. It breaks
101 # the Linux build because of the pthread.h file there.
102 # Leaving it out doesn't obviously break the Windows build,
103 # but for now I'm leaving it commented out here in case it
104 # introduced any hidden problems.
105 #'$WEBKIT_DIR/build/JavaScriptCore',
106
107 '$ZLIB_DIR',
108 '$LIBPNG_DIR',
109 '$LIBJPEG_DIR',
110 '$LIBXSLT_DIR',
111 '$LIBXML_DIR/include',
112 '$LIBXML_DIR/DerivedSources/include',
113 '$ICU38_DIR/public/common',
114 '$ICU38_DIR/public/i18n',
115 '$SKIA_DIR/include',
116 '$SKIA_DIR/include/corecg',
117 '$SKIA_DIR/ext',
118 '$SKIA_DIR/platform',
119 '$NPAPI_DIR',
120 '$V8_DIR/include',
121 '$WEBKIT_DIR/V8Bindings/DerivedSources',
122 '$WEBKIT_DIR/V8Bindings/SharedSources',
123
124 '$WEBKIT_DIR/pending',
125 '$WEBKIT_DIR_PORT_INC/bindings/v8',
126 '$WEBKIT_DIR_PORT_INC/bindings/v8/custom',
127 '$WEBKIT_DIR_PORT_INC/platform',
128 '$WEBKIT_DIR_PORT_INC/platform/$WEBKIT_PLATFORM_SUBDIR',
129
130 '$JAVASCRIPTCORE_DIR',
131 '$JAVASCRIPTCORE_DIR/wtf',
132 '$JAVASCRIPTCORE_DIR/wtf/chromium',
133
134 # Directories in third_party/WebKit/Webcore that we pull headers
135 # from. We don't have to list directories that are listed in the
136 # $WEBKIT_DIR_PORT_INC section above because they automatically fall
137 # back to third_party/WebKit/Webcore.
138 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/css',
139 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/dom',
140 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/editing',
141 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/history',
142 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/html',
143 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/inspector',
144 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/loader',
145 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/loader/appcache',
146 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/loader/archive',
147 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/loader/icon',
148 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/page',
149 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/page/animation',
150 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/page/chromium',
151 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/platform',
152 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/platform/animation',
153 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/platform/chromium',
154 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/platform/graphics',
155 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/platform/graphics/chromium',
156 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/platform/graphics/skia',
157 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/platform/graphics/opentype',
158 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/platform/graphics/transforms ',
159 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/platform/image-decoders/skia ',
160 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/platform/image-encoders/skia ',
161 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/platform/network',
162 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/platform/network/chromium',
163 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/platform/sql',
164 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/platform/text',
165 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/plugins',
166 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/rendering',
167 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/rendering/style',
168 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/storage',
169 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/style',
170 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/svg',
171 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/svg/animation',
172 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/svg/graphics',
173 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/workers',
174 '$CHROME_SRC_DIR/third_party/WebKit/WebCore/xml',
175
176 '$CHROME_SRC_DIR',
177 ]],
178 )
179
180 env.Append(
181 CPPDEFINES = [
182 'U_STATIC_IMPLEMENTATION',
183 '_SCL_SECURE_NO_DEPRECATE',
184 '_SCL_SECURE_NO_WARNINGS',
185 ['ENABLE_DASHBOARD_SUPPORT', '0'],
186 ['ENABLE_JAVASCRIPT_DEBUGGER', '0'],
187 ['ENABLE_JSC_MULTIPLE_THREADS', '0'],
188 ['ENABLE_ICONDATABASE', '0'],
189 ['ENABLE_DATABASE', '1'],
190 ['ENABLE_XSLT', '1'],
191 ['ENABLE_XPATH', '1'],
192 ['ENABLE_SVG', '1'],
193 ['ENABLE_SVG_ANIMATION', '1'],
194 ['ENABLE_SVG_AS_IMAGE', '1'],
195 ['ENABLE_SVG_USE', '1'],
196 ['ENABLE_SVG_FOREIGN_OBJECT', '1'],
197 ['ENABLE_SVG_FONTS', '1'],
198 ['WEBCORE_NAVIGATOR_PLATFORM', '"\\"Win32\\""'],
199 'USE_GOOGLE_URL_LIBRARY',
200 ['BUILDING_CHROMIUM__', '1'],
201 'CHROMIUM_BUILD',
202 '_SECURE_ATL',
203
204 'LIBXSLT_STATIC',
205 'LIBXML_STATIC',
206 'PNG_USER_CONFIG',
207 'CHROME_PNG_WRITE_SUPPORT',
208 ['__PRETTY_FUNCTION__', '__FUNCTION__'],
209 'DISABLE_ACTIVEX_TYPE_CONVERSION_MPLAYER2',
210
211 '__STD_C',
212 ['USE_SYSTEM_MALLOC', '1'],
213 ],
214 )
215
216 # This addRepository call causes our webkit/port include paths to include both
217 # webkit/port and third_party/WebKit/WebCore.
218 webkit_port_inc = env.Dir("$WEBKIT_DIR_PORT_INC")
219 webkit_port_inc.addRepository(
220 env.Dir('$CHROME_SRC_DIR/third_party/WebKit/WebCore'))
221
222 # This list is the SConscripts that work on Windows and Linux.
223 sconscript_dirs = env.ChromiumLoadComponentSConscripts(
224 LOAD_NAMES = ['webkit'],
225 port = 'SConscript.port',
226 JavaScriptCore_pcre = 'SConscript.javascriptcore_pcre',
227 WebCore_config_h = 'build/JSConfig/SConscript',
228 JavaScriptCore = 'build/JavaScriptCore/SConscript',
229 webkit_resources = 'build/webkit_resources/SConscript',
230 webkit_strings = 'build/webkit_strings/SConscript',
231 bindings = 'build/port/SConscript',
232 V8Bindings = 'build/V8Bindings/SConscript',
233 WebCore = 'build/WebCore/SConscript',
234 WebKit = 'build/WebKit/SConscript',
235 default_plugin = 'default_plugin/SConscript',
236 glue = 'glue/SConscript',
237 npapi_test_plugin = 'glue/plugins/test/SConscript',
238 npapi_layout_test_plugin = 'tools/npapi_layout_test_plugin/SConscript',
239 test_shell = 'tools/test_shell/SConscript',
240 )
241
242 if env.Bit('windows'):
243 # These extra dirs aren't win32-specific, they're just the dirs that
244 # haven't yet been made portable.
245 sconscript_dirs.extend(env.ChromiumLoadComponentSConscripts(
246 LOAD_NAMES = ['webkit'],
247 activex_shim = 'activex_shim/SConscript',
248 npaxshim = 'activex_shim_dll/SConscript',
249 ))
250
251 env.Append(
252 CPPDEFINES = [
253 '_CRT_SECURE_NO_DEPRECATE',
254 '_CRT_NONSTDC_NO_WARNINGS',
255 '_CRT_NONSTDC_NO_DEPRECATE',
256 ['CRASH', '__debugbreak'],
257 ])
258
259 env.Prepend(
260 CPPPATH = [
261 # Windows precompiled headers are here
262 '$WEBKIT_DIR/build',
263
264 '$JAVASCRIPTCORE_DIR/os-win32',
265 ])
266 else:
267 env.Append(
268 CXXFLAGS = ['-Wno-multichar'],
269 )
270
271 env.SConscript(sconscript_dirs, exports=['env', 'env_res'])
272
273 # Setup alias for all webkit related targets.
274 # We'd like to do this as follows, but it leads to out-of-memory
275 # errors when SCons tries to use the entire contents of the
276 # directory tree as a huge content-signature string.
277 # Instead we're going to let all the subsidiary SConscript files
278 # add their own individual targets to the 'webkit' Alias.
279 #env.Alias('webkit', ['.', '$DESTINATION_ROOT/icudt38.dll'])
280 if env.Bit('windows'):
281 env.Alias('webkit', ['$DESTINATION_ROOT/icudt38.dll'])
282
283 version = env.Command('$WEBKIT_DIR/build/WebCore/webkit_version.h',
284 ['$WEBCORE_DIR/Configurations/Version.xcconfig',
285 '$CHROME_SRC_DIR/webkit/build/webkit_version.py'],
286 "$PYTHON ${SOURCES[1]} ${SOURCES[0]} ${TARGET.dir}")
287 env.AlwaysBuild(version)
OLDNEW
« no previous file with comments | « tools/gtk_clipboard_dump/gcd.scons ('k') | webkit/SConscript.javascriptcore_pcre » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698