Finish release (opt) builds on Windows, including the parallel
build\*.scons structure (mirroring build\*.vsprops files):
* Use env.ApplySConscript() instead of env.SConscript with a
  hand-crafted dictionary defining 'env'.
* Move various CPPPATH, CCFLAGS, CPPDEFINES, LIBS and LIBPATH
  definitions from build/SConscript.main and target-specific 
  *.scons files into the build\*.scons files that mirror the
  existing build\*.vsprops hierarchy.
* Use the new build\{debug,release}.scons files to update the
  windows_dbg and windows_opt construction environments.
* Mirror current support for CHROME_BUILD_TYPE and CHROMIUM_BUILD
  external environment variables.
* Remove hard-coded /TP options.
* Massage $CXXFLAGS to remove $CCFLAGS, avoiding duplication of options
  on command lines.  Handle the ripple effect in $PCHCOM by adding
  $CCFLAGS back to that command line.
* Delete hammer's default settings of {CC,LINK}FLAGS_{DEBUG,OPTIMIZED}
  so they don't pollute our construction environments.
* Update chrome config to link against v8 for opt, v8_g for dbg.
* Get rid of fragile by-hand order of using_net.scons before other
  using_*.scons files.  We're now using --start-group and --end-group
  on Linux to deal with dependency cycles in libraries.
Review URL: http://codereview.chromium.org/11478

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5741 0039d316-1c4b-4281-b951-d872f2087c98


CrOS-Libchrome-Original-Commit: 5c6f1c6b32f9da207706cf2d94560196e9d20303
diff --git a/base/base_lib.scons b/base/base_lib.scons
index 5118f04..ad9484b 100644
--- a/base/base_lib.scons
+++ b/base/base_lib.scons
@@ -10,20 +10,13 @@
 
 env = env.Clone()
 
-env.SConscript([
+env.ApplySConscript([
     '$ICU38_DIR/using_icu38.scons',
-], {'env':env})
-
-env.Prepend(
-    CPPPATH = [
-        '$CHROME_SRC_DIR',
-    ],
-)
+])
 
 if env['PLATFORM'] == 'win32':
   env.Prepend(
       CCFLAGS = [
-          '/TP',
           '/Wp64',
       ],
   )
diff --git a/base/base_unittests.scons b/base/base_unittests.scons
index b8aafbc..308372b 100644
--- a/base/base_unittests.scons
+++ b/base/base_unittests.scons
@@ -10,7 +10,7 @@
 
 env = env.Clone()
 
-env.SConscript([
+env.ApplySConscript([
     '$BASE_DIR/using_base.scons',
     '$BASE_DIR/gfx/using_base_gfx.scons',
     '$GTEST_DIR/../using_gtest.scons',
@@ -18,17 +18,14 @@
     '$LIBPNG_DIR/using_libpng.scons',
     '$SKIA_DIR/using_skia.scons',
     '$ZLIB_DIR/using_zlib.scons',
-], {'env':env})
+])
 
 if env['PLATFORM'] in ('posix', 'darwin'):
-  env.SConscript([
+  env.ApplySConscript([
       '$LIBEVENT_DIR/using_libevent.scons',
-  ], {'env':env})
+  ])
 
 env.Prepend(
-    CPPPATH = [
-        '$CHROME_SRC_DIR',
-    ],
     CPPDEFINES = [
         'GOOGLE_CHROME_BUILD',
     ],
@@ -40,23 +37,6 @@
           '/TP',
           '/WX',
       ],
-      CPPDEFINES = [
-          '_WIN32_WINNT=0x0600',
-          'WINVER=0x0600',
-          '_HAS_EXCEPTIONS=0',
-      ],
-      LINKFLAGS = [
-          '/MANIFEST',
-          '/DELAYLOAD:"dwmapi.dll"',
-          '/DELAYLOAD:"uxtheme.dll"',
-          '/MACHINE:X86',
-          '/FIXED:No',
-
-          '/safeseh',
-          '/dynamicbase',
-          '/ignore:4199',
-          '/nxcompat',
-      ],
   )
 
 if env['PLATFORM'] == 'posix':
diff --git a/base/gfx/base_gfx.scons b/base/gfx/base_gfx.scons
index 0af67c6..7173340 100644
--- a/base/gfx/base_gfx.scons
+++ b/base/gfx/base_gfx.scons
@@ -10,23 +10,16 @@
 
 env = env.Clone()
 
-env.SConscript([
+env.ApplySConscript([
     '$ICU38_DIR/using_icu38.scons',
     '$LIBPNG_DIR/using_libpng.scons',
     '$SKIA_DIR/using_skia.scons',
     '$ZLIB_DIR/using_zlib.scons',
-], {'env':env})
-
-env.Prepend(
-    CPPPATH = [
-        '$CHROME_SRC_DIR',
-    ],
-)
+])
 
 if env['PLATFORM'] == 'win32':
   env.Prepend(
       CCFLAGS = [
-          '/TP',
           '/WX',
       ],
   )