* Set -j default to %NUMBER_OF_PROCESSORS% + 1 only on Windows.
* Initialize LOAD= modules up front, and let Linux override to the subset that are currently building.
* Initialize Linux CCFLAGS, LINKFLAGS and LIBS in a separate if-clause (like we do for Windows).
* Remove SCONSCRIPT_MAIN code in {base,chrome}/SConstruct in favor of just call ../build/SConscript.main.
* Merge in evanm's changes to base/SConscript for separate lists of platform-neutral and platform-specific source files and test files.
R=evanm,deanm
git-svn-id: http://src.chromium.org/svn/trunk/src/build@727 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Remove all WIN32 ifdefs from base and replace them with proper defined(OS...).
I also fixed random style bits when I encountered them. I made major style fixes to string16.
git-svn-id: http://src.chromium.org/svn/trunk/src/build@524 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Using this (and the split SConstruct that keunwoo already wrote) you can build third_party by:
scons Hammer/third_party
and you can attempt to build base, though there's still a lot of work to be done.
git-svn-id: http://src.chromium.org/svn/trunk/src/build@265 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
* Only put Windows settings on the construction environment when PLATFORM == 'win32', and provide a PLATFORM == 'posix' block for necessary settings there.
* Don't hard-code C:/ as the location of Microsoft Visual Studio 8, so we can find memset.obj even on buildbot systems that have it installed on D:.
* Work around how SCons 0.98.3 fails to handle environment variables imported from Visual Studio that use | to separate diferent architecture types in the (e.g.) PATH. (This is fixed in 0.98.4, after which we can remove the workaround.)
* Deep copy the environment we use to build v8_shell.exe so objects therein can't pollute other environments.
TBR: evanm,bradnelson
git-svn-id: http://src.chromium.org/svn/trunk/src/build@223 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
As previously discussed, I'm just doing whatever's expedient to getting *something* building under Linux, since we decided with the current state of Chrome head (with the upcoming freeze and release branch) it would be too disruptive to try to land all the latest site_scons in Chrome's copy. The main thing to note is the SConscript.main.linux file which uses
#/../third_party/*
instead of
#/$BUILD_ROOT/third_party/*
and then uses variant_dir in the env.SConscript() call at the bottom to explicitly emit output into Hammer/third_party/*. If either of these hacks is absent, scons under Linux simply concludes that all targets are up to date (there's nothing to build). Explanations for this behavior or alternative workarounds are welcome. Alternatively we could just commit this as-is and let someone with more knowledge of SCons internals try to debug it under Linux.
git-svn-id: http://src.chromium.org/svn/trunk/src/build@194 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
* Put the near-universal settings of /DCERT_CHAIN_PARA_HAS_EXTRA_FIELDS, /DWIN32_LEAN_AND_MEAN, /wd4503 and /wd4819 in the base construction environment.
* Sort various unsorted source file lists.
* Fix indentation and quoting for consistency in a couple SConscript files that escaped previous dragnets.
* Eliminate two left-over uses of Split() for input file lists.
* Give the devenv invocation to build v8_shell.exe the full path to the relevant .vcproj file.
* Add /nologo to the base LINKFLAGS setting.
* Remove various CPPPATH and other settings that have been hanging around commented out from the Visual Studio build (in case we needed them, which we evidently don't).
* Get rid of unnecessary env.File() and env.Dir() calls in various settings (esp. CPPPATH) and source file lists.
* Add copyright notice to an overlooked SConscript file.
* Clean up version.bat invocation.
TBR: bradnelson
git-svn-id: http://src.chromium.org/svn/trunk/src/build@174 4ff67af0-8c30-449e-8e8b-ad334ec8d88c