diff options
author | tc@google.com <tc@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-11-24 18:07:14 +0000 |
---|---|---|
committer | tc@google.com <tc@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-11-24 18:07:14 +0000 |
commit | c0bdc575a1ada4d36844f9a868c1b08205526546 (patch) | |
tree | d3ca4730266b221895c743b9fb927df535cf6d60 /webkit | |
parent | 4bbcdf477f495c49200c45bc3f5c8ee8c40936e1 (diff) | |
download | chromium_src-c0bdc575a1ada4d36844f9a868c1b08205526546.zip chromium_src-c0bdc575a1ada4d36844f9a868c1b08205526546.tar.gz chromium_src-c0bdc575a1ada4d36844f9a868c1b08205526546.tar.bz2 |
faster scons builds of test shell
By reducing the number of include paths that are specified
as $WEBKIT_DIR/port, we reduce the number of paths that get
expanded by the addRepository functions. Instead, we only specify directories from $WEBKIT_DIR/port if we have header files in those directories. The down side is that if we add a header to port, we need to update the include paths.
Also, don't specify WebCore includes with OBJ_ROOT as the fallback repository so we save on -I expansion.
Remove $WEBKIT_PORT_DIR because it's the same as $PORT_DIR.
The change to glue/SConscript is to pick up webkit_version.h since glue is the only place that needs it.
Review URL: http://codereview.chromium.org/11598
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5923 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit')
-rw-r--r-- | webkit/SConscript | 86 | ||||
-rw-r--r-- | webkit/build/port/SConscript | 72 | ||||
-rw-r--r-- | webkit/glue/SConscript | 6 |
3 files changed, 72 insertions, 92 deletions
diff --git a/webkit/SConscript b/webkit/SConscript index 237b113..219af0c 100644 --- a/webkit/SConscript +++ b/webkit/SConscript @@ -9,7 +9,6 @@ Import(['env']) env = env.Clone() env_res = env.Clone() - # We use the SCons addRepository() call (an internal API that will # at some point be made public) to "back" the build directory # hierarchy with the source directory hierarchies in which we want to @@ -43,12 +42,9 @@ port_dir.addRepository(env.Dir('$CHROME_SRC_DIR/third_party/WebKit/WebCore')) if env['PLATFORM'] == 'win32': env['WEBKIT_PLATFORM_SUBDIR'] = 'win' - env['JAVASCRIPTCORE_PLATFORM_SUBDIR'] = 'os-win32' elif env['PLATFORM'] == 'darwin': env['WEBKIT_PLATFORM_SUBDIR'] = 'mac' - env['JAVASCRIPTCORE_PLATFORM_SUBDIR'] = 'TODO' elif env['PLATFORM'] == 'posix': - env['JAVASCRIPTCORE_PLATFORM_SUBDIR'] = 'TODO' env.Append( CCFLAGS = [ '-Wno-parentheses', @@ -72,8 +68,6 @@ env.Prepend( # introduced any hidden problems. #'$WEBKIT_DIR/build/JavaScriptCore', - '$WEBKIT_DIR/build/WebCore', - '$WEBKIT_DIR/port/platform/image-decoders', '$WEBKIT_DIR/port/platform/image-decoders/bmp', '$WEBKIT_DIR/port/platform/image-decoders/gif', @@ -96,23 +90,12 @@ env.Prepend( '$V8_DIR/include', '$WEBKIT_DIR/V8Bindings/DerivedSources', '$WEBKIT_DIR/V8Bindings/SharedSources', - '$WEBKIT_DIR/port/bindings/v8', - '$WEBKIT_DIR/WebCore', - '$WEBKIT_DIR/WebCore/JavaScriptHeaders', - '$WEBKIT_DIR/WebCore/JavaScriptHeaders/JavaScriptCore', + '$WEBKIT_DIR/pending', - '$WEBKIT_DIR/port/bridge', + '$WEBKIT_DIR/port/bindings/v8', '$WEBKIT_DIR/port/css', '$WEBKIT_DIR/port/dom', - '$WEBKIT_DIR/port/editing', '$WEBKIT_DIR/port/history', - '$WEBKIT_DIR/port/html', - '$WEBKIT_DIR/port/loader', - '$WEBKIT_DIR/port/loader/appcache', - '$WEBKIT_DIR/port/loader/archive', - '$WEBKIT_DIR/port/loader/icon', - '$WEBKIT_DIR/port/page', - '$WEBKIT_DIR/port/page/animation', '$WEBKIT_DIR/port/page/chromium', '$WEBKIT_DIR/port/platform', '$WEBKIT_DIR/port/platform/chromium', @@ -120,38 +103,43 @@ env.Prepend( '$WEBKIT_DIR/port/platform/graphics/chromium', '$WEBKIT_DIR/port/platform/graphics/skia', '$WEBKIT_DIR/port/platform/$WEBKIT_PLATFORM_SUBDIR', - '$WEBKIT_DIR/port/svg/graphics', - '$WEBKIT_DIR/port/platform/network', '$WEBKIT_DIR/port/platform/network/chromium', - '$WEBKIT_DIR/port/platform/network/$WEBKIT_PLATFORM_SUBDIR', - '$WEBKIT_DIR/port/platform/sql', - '$WEBKIT_DIR/port/platform/text', - '$WEBKIT_DIR/port/plugins', - '$WEBKIT_DIR/port/plugins/chromium', '$WEBKIT_DIR/port/rendering', - '$WEBKIT_DIR/port/rendering/style', - '$WEBKIT_DIR/port/storage', - '$WEBKIT_DIR/port/style', - '$WEBKIT_DIR', - '$WEBKIT_DIR/build/port', '$JAVASCRIPTCORE_DIR', '$JAVASCRIPTCORE_DIR/wtf', - '$JAVASCRIPTCORE_DIR/$JAVASCRIPTCORE_PLATFORM_SUBDIR', - '$WEBKIT_DIR/build', - - '$WEBKIT_DIR/port/DerivedSources', - '$WEBKIT_DIR/port/svg', - '$WEBKIT_DIR/port/svg/animation', - '$WEBKIT_DIR/port/svg/graphics/filters', + # Directories in third_party/WebKit/Webcore that we pull headers + # from. We don't have to list directories that are listed in the + # $WEBKIT_DIR/port section above because they automatically fall + # back to third_party/WebKit/Webcore. + '$WEBCORE_DIR/editing', + '$WEBCORE_DIR/html', + '$WEBCORE_DIR/inspector', + '$WEBCORE_DIR/loader', + '$WEBCORE_DIR/loader/appcache', + '$WEBCORE_DIR/loader/archive', + '$WEBCORE_DIR/loader/icon', + '$WEBCORE_DIR/page', + '$WEBCORE_DIR/page/animation', + '$WEBCORE_DIR/platform/network', + '$WEBCORE_DIR/platform/sql', + '$WEBCORE_DIR/platform/text', + '$WEBCORE_DIR/plugins', + '$WEBCORE_DIR/rendering/style', + '$WEBCORE_DIR/storage', + '$WEBCORE_DIR/style', + '$WEBCORE_DIR/svg', + '$WEBCORE_DIR/svg/animation', + '$WEBCORE_DIR/svg/graphics', + '$WEBCORE_DIR/xml', '$CHROME_SRC_DIR', ], ) env.Append( - WEBCORE_DIR = "$THIRD_PARTY_WEBKIT_DIR/WebCore", + WEBCORE_DIR = '$CHROME_SRC_DIR/third_party/WebKit/WebCore', PENDING_DIR = "$WEBKIT_DIR/pending", PORT_DIR = "$WEBKIT_DIR/port", @@ -164,17 +152,6 @@ env.Append( DERIVED_DIR = env.Dir("$WEBKIT_DIR/V8Bindings/DerivedSources"), SHARED_DIR = env.Dir("$WEBKIT_DIR/V8Bindings/SharedSources"), - # This is a stop gap to get linux building in time for the webkit - # merge. The true fix is to move the above CPPPATH prepend under this - # Append block and remove all the old pending directories (and add the new - # upstream ones.) - CPPPATH = [ - '$WEBCORE_DIR/rendering', - '$WEBCORE_DIR/rendering/style', - '$WEBCORE_DIR/inspector', - '$WEBCORE_DIR/xml', - ], - CPPDEFINES = [ 'U_STATIC_IMPLEMENTATION', '_SCL_SECURE_NO_DEPRECATE', @@ -247,13 +224,12 @@ if env['PLATFORM'] == 'win32': env.Prepend( CPPPATH = [ - '$WEBKIT_DIR/port/$JAVASCRIPTCORE_PLATFORM_SUBDIR', - '$THIRD_PARTY_WEBKIT_DIR/JavaScriptCore/$JAVASCRIPTCORE_PLATFORM_SUBDIR', + # Windows precompiled headers are here + '$WEBKIT_DIR/build', + + '$JAVASCRIPTCORE_DIR/os-win32', ]) else: - env.Prepend( - CPPPATH = ['$WEBKIT_DIR/build/JSConfig/WebCore/v8'], - ) env.Append( CXXFLAGS = ['-Wno-multichar'], ) diff --git a/webkit/build/port/SConscript b/webkit/build/port/SConscript index 9582457..1e16989 100644 --- a/webkit/build/port/SConscript +++ b/webkit/build/port/SConscript @@ -44,8 +44,6 @@ env = env.Clone( PERL_INCLUDE_PATH = ['$BINDINGS_SCRIPTS_DIR', '$CHROME_SRC_DIR/third_party/WebKit/WebCore/bindings/scripts'], - WEBKIT_PORT_DIR = '$WEBKIT_DIR/port', - FEATURE_DEFINES = [ 'ENABLE_CROSS_DOCUMENT_MESSAGING', 'ENABLE_XSLT', @@ -482,8 +480,8 @@ for name in idl_files: # copy over some files i = env.Install('$SHARED_DIR', - ['$WEBKIT_PORT_DIR/bindings/js/PausedTimeouts.h', - '$WEBKIT_PORT_DIR/bindings/js/PausedTimeouts.cpp']) + ['$PORT_DIR/bindings/js/PausedTimeouts.h', + '$PORT_DIR/bindings/js/PausedTimeouts.cpp']) env.Alias('webkit', i) # HTML tag and attribute names @@ -491,9 +489,9 @@ env.Alias('webkit', i) # --extraDefines $HTML_FLAGS. env.Command(['$DERIVED_DIR/HTMLNames.cpp', '$DERIVED_DIR/HTMLNames.h'], - ['$WEBKIT_PORT_DIR/dom/make_names.pl', - '$WEBKIT_PORT_DIR/html/HTMLTagNames.in', - '$WEBKIT_PORT_DIR/html/HTMLAttributeNames.in'], + ['$PORT_DIR/dom/make_names.pl', + '$PORT_DIR/html/HTMLTagNames.in', + '$PORT_DIR/html/HTMLAttributeNames.in'], '$PERL $_PERL_INCLUDE_FLAGS ${SOURCES[0].posix} ' '--tags ${SOURCES[1].posix} ' '--attrs ${SOURCES[2].posix} ' @@ -502,8 +500,8 @@ env.Command(['$DERIVED_DIR/HTMLNames.cpp', env.Command(['$DERIVED_DIR/XMLNames.cpp', '$DERIVED_DIR/XMLNames.h'], - ['$WEBKIT_PORT_DIR/dom/make_names.pl', - '$WEBKIT_PORT_DIR/xml/xmlattrs.in'], + ['$PORT_DIR/dom/make_names.pl', + '$PORT_DIR/xml/xmlattrs.in'], '$PERL $_PERL_INCLUDE_FLAGS ${SOURCES[0].posix} ' '--attrs ${SOURCES[1].posix} ' '--outputDir $DERIVED_DIR') @@ -512,9 +510,9 @@ env.Command(['$DERIVED_DIR/SVGElementFactory.cpp', '$DERIVED_DIR/SVGElementFactory.h', '$DERIVED_DIR/SVGNames.cpp', '$DERIVED_DIR/SVGNames.h'], - ['$WEBKIT_PORT_DIR/dom/make_names.pl', - '$WEBKIT_PORT_DIR/svg/svgtags.in', - '$WEBKIT_PORT_DIR/svg/svgattrs.in'], + ['$PORT_DIR/dom/make_names.pl', + '$PORT_DIR/svg/svgtags.in', + '$PORT_DIR/svg/svgattrs.in'], '$PERL $_PERL_INCLUDE_FLAGS ${SOURCES[0].posix} ' '--tags ${SOURCES[1].posix} ' '--attrs ${SOURCES[2].posix} ' @@ -525,8 +523,8 @@ env.Command(['$DERIVED_DIR/SVGElementFactory.cpp', env.Command(['$DERIVED_DIR/XLinkNames.cpp', '$DERIVED_DIR/XLinkNames.h'], - ['$WEBKIT_PORT_DIR/dom/make_names.pl', - '$WEBKIT_PORT_DIR/svg/xlinkattrs.in'], + ['$PORT_DIR/dom/make_names.pl', + '$PORT_DIR/svg/xlinkattrs.in'], '$PERL $_PERL_INCLUDE_FLAGS ${SOURCES[0].posix} ' '--attrs ${SOURCES[1].posix} ' '--outputDir $DERIVED_DIR') @@ -545,20 +543,20 @@ def cat_files(target, source, env): fout.close() env.Command('$DERIVED_DIR/html4.css', - ['$WEBKIT_PORT_DIR/css/html4.css', + ['$PORT_DIR/css/html4.css', '$PORTROOT/css/html4-overrides.css'], cat_files) env.Command('$DERIVED_DIR/quirks.css', - ['$WEBKIT_PORT_DIR/css/quirks.css', + ['$PORT_DIR/css/quirks.css', '$PORTROOT/css/quirks-overrides.css'], cat_files) env.Command(['$DERIVED_DIR/UserAgentStyleSheets.h', '$DERIVED_DIR/UserAgentStyleSheetsData.cpp'], - ['$WEBKIT_PORT_DIR/css/make-css-file-arrays.pl', - '$WEBKIT_PORT_DIR/css/view-source.css', - '$WEBKIT_PORT_DIR/css/svg.css', + ['$PORT_DIR/css/make-css-file-arrays.pl', + '$PORT_DIR/css/view-source.css', + '$PORT_DIR/css/svg.css', '$DERIVED_DIR/html4.css', '$DERIVED_DIR/quirks.css'], '$PERL ${SOURCES[0].posix} ${TARGETS.posix} ${SOURCES[1:].posix}') @@ -580,7 +578,7 @@ def create_h_wrapper(target, source, env): def BuildYacc(env, dir, name, file): env.Command(['$DERIVED_DIR/%s.cpp' % file, '$DERIVED_DIR/%s.h' % file], - ['$WEBKIT_PORT_DIR/%s/%s.y' % (dir, file)], + ['$PORT_DIR/%s/%s.y' % (dir, file)], ['$YACC -d -p %s ${SOURCES[0].posix} ' % name + '-o ${TARGET.posix}', Action(create_h_wrapper), @@ -591,24 +589,24 @@ BuildYacc(env, 'css', 'cssyy', 'CSSGrammar') # TODO(bradnelson): need to add in error checking -env.Command('$WEBKIT_PORT_DIR/SVGCSSValueKeywords.in', - '$WEBKIT_PORT_DIR/css/SVGCSSValueKeywords.in', +env.Command('$PORT_DIR/SVGCSSValueKeywords.in', + '$PORT_DIR/css/SVGCSSValueKeywords.in', '$PERL -ne "print lc" $SOURCES > $TARGET') -env.Command('$WEBKIT_PORT_DIR/CSSValueKeywords.in', - ['$WEBKIT_PORT_DIR/css/CSSValueKeywords.in', - '$WEBKIT_PORT_DIR/css/SVGCSSValueKeywords.in'], +env.Command('$PORT_DIR/CSSValueKeywords.in', + ['$PORT_DIR/css/CSSValueKeywords.in', + '$PORT_DIR/css/SVGCSSValueKeywords.in'], '$PERL -ne "print lc" $SOURCES > $TARGET') -env.Command('$WEBKIT_PORT_DIR/CSSPropertyNames.in', - ['$WEBKIT_PORT_DIR/css/CSSPropertyNames.in', - '$WEBKIT_PORT_DIR/css/SVGCSSPropertyNames.in'], +env.Command('$PORT_DIR/CSSPropertyNames.in', + ['$PORT_DIR/css/CSSPropertyNames.in', + '$PORT_DIR/css/SVGCSSPropertyNames.in'], '$PERL -ne "print lc" $SOURCES > $TARGET') env.Command(['$DERIVED_DIR/CSSValueKeywords.c', '$DERIVED_DIR/CSSValueKeywords.h'], - ['$WEBKIT_PORT_DIR/css/makevalues.pl', - '$WEBKIT_PORT_DIR/CSSValueKeywords.in'], + ['$PORT_DIR/css/makevalues.pl', + '$PORT_DIR/CSSValueKeywords.in'], ['cd ${SOURCES[1].dir} && $PERL ${str(SOURCES[0].abspath).replace("\\\\", "/")}', Move('${TARGETS[0]}', '${SOURCES[1].dir}/${TARGETS[0].file}'), Move('${TARGETS[1]}', '${SOURCES[1].dir}/${TARGETS[1].file}'), @@ -616,8 +614,8 @@ env.Command(['$DERIVED_DIR/CSSValueKeywords.c', env.Command(['$DERIVED_DIR/CSSPropertyNames.cpp', '$DERIVED_DIR/CSSPropertyNames.h'], - ['$WEBKIT_PORT_DIR/css/makeprop.pl', - '$WEBKIT_PORT_DIR/CSSPropertyNames.in'], + ['$PORT_DIR/css/makeprop.pl', + '$PORT_DIR/CSSPropertyNames.in'], ['cd ${SOURCES[1].dir} && $PERL ${str(SOURCES[0].abspath).replace("\\\\", "/")}', Move('${TARGETS[0]}', '${SOURCES[1].dir}/${TARGETS[0].file}'), Move('${TARGETS[1]}', '${SOURCES[1].dir}/${TARGETS[1].file}'), @@ -626,25 +624,25 @@ env.Command(['$DERIVED_DIR/CSSPropertyNames.cpp', # DOCTYPE strings env.Command('$DERIVED_DIR/DocTypeStrings.cpp', - '$WEBKIT_PORT_DIR/html/DocTypeStrings.gperf', + '$PORT_DIR/html/DocTypeStrings.gperf', 'gperf -CEot -L ANSI-C -k "*" -N findDoctypeEntry -F ' + \ ',PubIDInfo::eAlmostStandards,PubIDInfo::eAlmostStandards ' + \ '$SOURCE > $TARGET') # color names env.Command('$DERIVED_DIR/ColorData.c', - '$WEBKIT_PORT_DIR/platform/ColorData.gperf', + '$PORT_DIR/platform/ColorData.gperf', 'gperf -CDEot -L ANSI-C -k "*" -N findColor -D -s 2 ' + \ '$SOURCE > $TARGET') # HTML entity names env.Command('$DERIVED_DIR/HTMLEntityNames.c', - '$WEBKIT_PORT_DIR/html/HTMLEntityNames.gperf', + '$PORT_DIR/html/HTMLEntityNames.gperf', 'gperf -a -L ANSI-C -C -G -c -o -t -k "*" -N findEntity ' + \ '-D -s 2 $SOURCE > $TARGET') # CSS tokenizer env.Command('$DERIVED_DIR/tokenizer.cpp', - ['$WEBKIT_PORT_DIR/css/tokenizer.flex', - '$WEBKIT_PORT_DIR/css/maketokenizer'], + ['$PORT_DIR/css/tokenizer.flex', + '$PORT_DIR/css/maketokenizer'], 'flex --nowarn -t $SOURCE | perl ${SOURCES[1]} > $TARGET') diff --git a/webkit/glue/SConscript b/webkit/glue/SConscript index ead5570..589f2ea 100644 --- a/webkit/glue/SConscript +++ b/webkit/glue/SConscript @@ -6,6 +6,12 @@ Import('env') env = env.Clone() +env.Append( + CPPPATH = [ + '$WEBKIT_DIR/build/WebCore', + ] +) + if env['PLATFORM'] == 'win32': env.Append( CCFLAGS = [ |