diff options
author | mpcomplete@chromium.org <mpcomplete@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-11-13 20:32:25 +0000 |
---|---|---|
committer | mpcomplete@chromium.org <mpcomplete@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-11-13 20:32:25 +0000 |
commit | 6799ef0ac57bb5c206d0e2d4106cd4b41de1fe7a (patch) | |
tree | 9d82d80dc0332a406d1faf0f937db9ee7ed89484 /gears/SConscript.browser | |
parent | da8765903e7d3addd573aca2559b57cd0052d667 (diff) | |
download | chromium_src-6799ef0ac57bb5c206d0e2d4106cd4b41de1fe7a.zip chromium_src-6799ef0ac57bb5c206d0e2d4106cd4b41de1fe7a.tar.gz chromium_src-6799ef0ac57bb5c206d0e2d4106cd4b41de1fe7a.tar.bz2 |
Add builder for Safari resource files. Had to restructure some input files.
I also moved GetInputs into the utils file.
Review URL: http://codereview.chromium.org/10671
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5370 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'gears/SConscript.browser')
-rw-r--r-- | gears/SConscript.browser | 60 |
1 files changed, 51 insertions, 9 deletions
diff --git a/gears/SConscript.browser b/gears/SConscript.browser index e8ab132..6fcc775 100644 --- a/gears/SConscript.browser +++ b/gears/SConscript.browser @@ -220,12 +220,23 @@ if env['OS'] == 'osx': # Add in libraries for in-development APIs for non-official builds. if not env['OFFICIAL_BUILD']: - if env['OS'] != 'wince': - env.Append(LIBS = [ + env.Append(LIBS = [ + 'jpeg-gears', + 'portaudio', 'gd', - 'jpeg-gears' + ]) + + # Except on these platforms. + if env['OS'] == 'wince': + env.FilterOut(LIBS = [ + 'jpeg-gears', + 'portaudio', + ]) + elif env['OS'] == 'osx': + env.FilterOut(LIBS = [ + 'gd', + 'portaudio', ]) - env.Append(LIBS = 'portaudio') if env['BROWSER'] == 'IE': if env['OS'] == 'win32': @@ -374,11 +385,7 @@ env = env_inputs # Generate the dependency tree. def PatternRule(t, s): return utils.PatternRule(t, s, env) - -def GetInputs(var): - """Expands an env substitution variable and returns it as a list of - strings.""" - return [str(v) for v in env.subst_list(var)[0]] +def GetInputs(var): return utils.GetInputs(var, env) # Include the common targets generated by SConscript.common. Import('common_targets') @@ -433,6 +440,41 @@ if env.has_key('UI_RES'): env.Depends('$UI_RES', html_m4s) env.Depends('$MODULE_RES', m4s) +# Safari resources +if env['BROWSER'] == 'SF': + env.Replace( + WEBARCHIVER = '$OPEN_DIR/tools/osx/webarchiver/webarchiver', + GEN_RESOURCE_LIST = 'python $OPEN_DIR/tools/osx/gen_resource_list.py', + GEN_RESOURCES = ['$GENFILES_DIR/resource_list.h'], + ) + def WebArchiver(src): + src_basename = os.path.basename(os.path.splitext(src)[0]) + return ('$WEBARCHIVER "$GENFILES_DIR/%s.webarchive" "%s" ' + ' $COMMON_RESOURCES' % (src_basename, src)) + def XXD(src): + src_basename = os.path.basename(os.path.splitext(src)[0]) + env.Append(GEN_RESOURCES = ['$GENFILES_DIR/%s.h' % src_basename]) + return 'xxd -i "%s" > "$GENFILES_DIR/%s.h"' % (src, src_basename) + resource_list_h = env.Command( + '$GENFILES_DIR/resource_list.h', + GetInputs('$COMMON_RESOURCES') + html_m4s, + [WebArchiver('$GENFILES_DIR/permissions_dialog.html'), + WebArchiver('$GENFILES_DIR/shortcuts_dialog.html'), + WebArchiver('$GENFILES_DIR/settings_dialog.html'), + XXD('$GENFILES_DIR/permissions_dialog.webarchive'), + XXD('$GENFILES_DIR/shortcuts_dialog.webarchive'), + XXD('$GENFILES_DIR/settings_dialog.webarchive'), + XXD('$OPEN_DIR/ui/common/location_data.png'), + XXD('$OPEN_DIR/ui/common/local_data.png'), + '$GEN_RESOURCE_LIST $GEN_RESOURCES'], + ) + resource_obj = env.SharedObject( + '$GENFILES_DIR/resources', + '$OPEN_DIR/base/safari/resource_archive.cc') + env.Depends(resource_obj, resource_list_h) + env.Append(BROWSER_LINKSRCS = resource_obj) + + # HACK: gears, vista_broker, and wince_setup share some inputs, but the # Chrome* helpers muck with the environment, so SCons complains if we try to # compile those inputs differently. So we try to precompile them before |