summaryrefslogtreecommitdiffstats
path: root/chrome/installer/mini_installer/mini_installer.scons
diff options
context:
space:
mode:
authorsgk@google.com <sgk@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2008-11-16 22:24:55 +0000
committersgk@google.com <sgk@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2008-11-16 22:24:55 +0000
commite16027d6b660ac4c0d9b50e7dabbf03d7cf1ba5f (patch)
treeb265b4cef18b6e708dcf36015c1afb8220aea648 /chrome/installer/mini_installer/mini_installer.scons
parent4ed077a820dca166e3e2bf9785311331df0190b0 (diff)
downloadchromium_src-e16027d6b660ac4c0d9b50e7dabbf03d7cf1ba5f.zip
chromium_src-e16027d6b660ac4c0d9b50e7dabbf03d7cf1ba5f.tar.gz
chromium_src-e16027d6b660ac4c0d9b50e7dabbf03d7cf1ba5f.tar.bz2
Fix accumulated webkit merge ramifications in the SCons build of Chrome
(plus various renaming ripple effects masked by merge build errors): * Move invocation of recently-created *.scons files from chrome\SConscript into chrome\chrome.scons. * Move the ChromeVersionRC() Builder up into chrome\chrome.scons so it's available in all the newer *.scons files (specifically installer\mini_installer\mini_installer.scons and installer\setup\setup.scons). * Build chrome.dll in a chrome_dll subdirectory, and chrome.exe in a chrome_exe subdirectory, to avoid the name conflict when both try to create a chrome.lib library as part of linking. Re-name them to chrome.{dll,lib,exe} on installation into $DESTINATION_ROOT. * Install underneath Hammer\ ($DESTINATION_ROOT) copies of: themes\default.dll * Portability: link against 'chrome' and 'common' from the LIBS variable, not by explicitly listing 'chrome.lib' and 'common.lib'. * Link interactive_ui_tests.exe links against sdch, not google_update, and add CPPPATH directories for included resource files. * Install a number of necessary ancillary files in explicitly in $DESTINATION_ROOT, not $TARGET_ROOT: chrome.dll, icudt38.dll, rlz.dll, "First Run", themes\*, locales\, Dictionaries. * Add a 'chrome_locales' Alias for the locale .dll files installed into the locales\ subdirectory, and use Requires() to make sure they're installed for chrome.exe regardless of what target is used. * Add a 'chrome_Dictionaries' Alias for the hunspell dictionaries into the Dictionaries\ subdirectory, and use Requires() to make sure they're installed for chrome.exe regardless of what target is used. * Clone() the automated_ui_tests.scons construction environment so its settings don't pollute builds of other targets. * Add explicit dependencies on various generated .rc files (with TODO(sgk) to figure out why they're not picked up by the implicit dependency scan). Review URL: http://codereview.chromium.org/10976 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5549 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/installer/mini_installer/mini_installer.scons')
-rw-r--r--chrome/installer/mini_installer/mini_installer.scons24
1 files changed, 16 insertions, 8 deletions
diff --git a/chrome/installer/mini_installer/mini_installer.scons b/chrome/installer/mini_installer/mini_installer.scons
index a6b5dc4..f9d0dd2 100644
--- a/chrome/installer/mini_installer/mini_installer.scons
+++ b/chrome/installer/mini_installer/mini_installer.scons
@@ -2,7 +2,7 @@
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
-Import('env', 'env_res')
+Import('env')
env = env.Clone()
@@ -17,11 +17,11 @@ env.ApplySConscript([
# obviously windows-specific things
if env['PLATFORM'] == 'win32':
- env_res = env_res.Clone()
+ env_res = env.Clone()
env_res.Append(
CPPPATH = [
- "$TARGET_ROOT",
+ "$DESTINATION_ROOT",
".",
"$CHROME_SRC_DIR",
],
@@ -92,15 +92,23 @@ env.ChromeProgram('mini_installer', input_files)
env.AppendENVPath('PATH', r'C:\WINDOWS\system32')
-packed = env.Command('$TARGET_ROOT/packed_files.txt',
+packed = env.Command('$DESTINATION_ROOT/packed_files.txt',
['$CHROME_DIR/tools/build/win/create_installer_archive.py',
'$CHROME_DIR/installer/mini_installer/chrome.release'],
('$PYTHON ${SOURCES[0]}'
' --output_dir=${TARGET.dir}'
' --input_file=${SOURCES[1]}'))
-env.Depends(packed, '$TARGET_ROOT/setup.exe')
+env.Depends(packed, '$DESTINATION_ROOT/setup.exe')
+# mini_installer.rc depends on the generated packed_files.txt
+# TODO(sgk): implicit dependency should be picked up automatically
+env.Depends(resources, packed)
-env.ChromeVersionRC('mini_installer_exe_version.rc',
- 'mini_installer_exe_version.rc.version',
- PWD=Dir('.'))
+
+exe_version_rc = env.ChromeVersionRC('mini_installer_exe_version.rc',
+ 'mini_installer_exe_version.rc.version',
+ PWD=Dir('.'))
+
+if env['PLATFORM'] == 'win32':
+ # TODO(sgk): implicit dependency should be picked up automatically
+ env_res.Depends(resources, exe_version_rc)