| Index: build/SConscript.v8
|
| ===================================================================
|
| --- build/SConscript.v8 (revision 2074)
|
| +++ build/SConscript.v8 (working copy)
|
| @@ -6,38 +6,56 @@
|
|
|
| env = env.Clone()
|
|
|
| -mksnapshot_exe = File('#/../v8/bin/debug/mksnapshot.exe')
|
| -v8_exe = File('#/../v8/bin/release/v8.exe')
|
| -v8_lib = File('#/../v8/bin/debug/v8.lib'),
|
| +# Rather than build v8 here, we just shell out to v8's own SCons-based
|
| +# build, since their build system is complicated.
|
| +# This SConscript just declares dependencies on the outputs of that build.
|
|
|
| +mksnapshot_bin = env.File('#/../v8/obj/release/mksnapshot${PROGSUFFIX}')
|
| +v8_bin = env.File('#/../v8/shell${PROGSUFFIX}')
|
| +v8_lib = env.File('#/../v8/${LIBPREFIX}v8${LIBSUFFIX}'),
|
| +
|
| v8_scons_targets = [
|
| - mksnapshot_exe,
|
| - v8_exe,
|
| - v8_lib,
|
| - File('#/../v8/bin/debug/snapshot-empty.obj'),
|
| - File('#/../v8/vc80.pdb')
|
| + mksnapshot_bin,
|
| + v8_bin,
|
| + v8_lib,
|
| ]
|
|
|
| +if env['PLATFORM'] == 'win32':
|
| + v8_scons_targets.append([
|
| + env.File('#/../v8/bin/release/snapshot-empty.obj'),
|
| + env.File('#/../v8/vc80.pdb')
|
| + ])
|
| +
|
| +# Grab the -j flag from the outer environment, if available.
|
| +try:
|
| + cpus = env.GetOption('num_jobs')
|
| + cpu_flag = ' -j%d' % cpus
|
| +except AttributeError:
|
| + cpu_flag = ''
|
| +
|
| v8 = env.Command(v8_scons_targets,
|
| [],
|
| - 'cd ..\\v8 && $PYTHON $SCONS $SCONSFLAGS ${TARGETS[:-1]}',
|
| - SCONS='..\\third_party\\scons\\scons.py',
|
| - SCONSFLAGS='-Q --warn=no-deprecated')
|
| + 'cd ../v8 && $PYTHON $SCONS $SCONSFLAGS snapshot=on ' +
|
| + 'sample=shell',
|
| + SCONS='../third_party/scons/scons.py',
|
| + SCONSFLAGS='-Q --warn=no-deprecated' + cpu_flag)
|
| env.AlwaysBuild(v8)
|
| env.Install('$V8_DIR', v8)
|
|
|
| -i = env.Install('$TARGET_ROOT', mksnapshot_exe)
|
| +i = env.Install('$TARGET_ROOT', mksnapshot_bin)
|
| env.Alias('webkit', i)
|
|
|
| i = env.Install('$LIBS_DIR', v8_lib)
|
| env.Alias('webkit', i)
|
|
|
| -i = env.Install('$TARGET_ROOT', v8_exe)
|
| +i = env.Install('$TARGET_ROOT', v8_bin)
|
| env.Alias('chrome', i)
|
|
|
| # To satisfy tests expecting the following .exe name.
|
| -i = env.InstallAs('$TARGET_ROOT/v8_shell_sample.exe', v8_exe)
|
| -env.Alias('chrome', i)
|
| +if env['PLATFORM'] == 'win32':
|
| + # TODO(evanm): this may be necessary on other platforms(?)
|
| + i = env.InstallAs('$TARGET_ROOT/v8_shell_sample${PROGSUFFIX}', v8_bin)
|
| + env.Alias('chrome', i)
|
|
|
| # Tell our SCons invocation to *not* delete v8.lib and the other targets
|
| # before building them, so the subsidiary v8 SCons call doesn't always
|
|
|