Make better (and more efficient) use of Hammer functionality
in base, net and sandbox:
* Remove by-hand Install() and Alias() calls.
* Set $COMPONENT_PROGRAM_GROUPS and $COMPONENT_TEST_PROGRAM_GROUPS
  (with in each foo\foo.scons file) so executables get added
  automatically to the appropriate Alias.
* Set $TESTS_DIR and $STAGING_DIR so executables get linked
  directly in their final resting place ($TARGET_ROOT).
Review URL: http://codereview.chromium.org/9188

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


CrOS-Libchrome-Original-Commit: 2516153bbd24a2d630fe04176c8d3190744e6246
diff --git a/base/base.scons b/base/base.scons
index 66bfc83..bd0d193 100644
--- a/base/base.scons
+++ b/base/base.scons
@@ -8,6 +8,12 @@
 
 Import('env')
 
+# Arrange for Hammer to add all programs to the 'base' Alias.
+env.Append(
+    COMPONENT_PROGRAM_GROUPS = ['base'],
+    COMPONENT_TEST_PROGRAM_GROUPS = ['base'],
+)
+
 sconscript_files = [
     'base_lib.scons',
     'base_unittests.scons',
diff --git a/base/base_lib.scons b/base/base_lib.scons
index 70572c2..89d0d6e 100644
--- a/base/base_lib.scons
+++ b/base/base_lib.scons
@@ -192,5 +192,4 @@
       'worker_pool.cc',
   ])
 
-base_lib = env.ChromeStaticLibrary('base', input_files)
-env.Alias('base', base_lib)
+env.ChromeStaticLibrary('base', input_files)
diff --git a/base/base_unittests.scons b/base/base_unittests.scons
index a57240e..aedad49 100644
--- a/base/base_unittests.scons
+++ b/base/base_unittests.scons
@@ -172,12 +172,7 @@
       'platform_test_mac.mm',
   ])
 
-base_unittests = env.ChromeTestProgram('base_unittests', input_files)
-
-# Install up a level to allow unit test path assumptions to be valid.
-installed_base_unittests = env.Install('$TARGET_ROOT', base_unittests)
-
-env.Alias('base', installed_base_unittests)
+env.ChromeTestProgram('base_unittests', input_files)
 
 # TODO(sgk) should this be moved into base.lib like everything else?  This will
 # require updating a bunch of other SConscripts which link directly against