summaryrefslogtreecommitdiffstats
path: root/chrome/installer/mini_installer.gyp
diff options
context:
space:
mode:
authorrobertshield@chromium.org <robertshield@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-01-19 21:15:06 +0000
committerrobertshield@chromium.org <robertshield@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-01-19 21:15:06 +0000
commitfd1d6998e6a96569e478c87220f6825a3e47851c (patch)
tree0f2e2d2e174c20c4eb7366b2d678f58d8aaa633c /chrome/installer/mini_installer.gyp
parent01bfd02b5e75ad54e90c5379da3a84c714c79bf6 (diff)
downloadchromium_src-fd1d6998e6a96569e478c87220f6825a3e47851c.zip
chromium_src-fd1d6998e6a96569e478c87220f6825a3e47851c.tar.gz
chromium_src-fd1d6998e6a96569e478c87220f6825a3e47851c.tar.bz2
Adding a secondary mini_installer target for Chrome Frame. This will remove the need to have different build scripts to build either Chrome or Chrome Frame.
Also remove the now-unneeded gyp variables 'chrome_frame_define' and 'google_update_appid'. BUG=Both Chrome and Chrome Frame products should be buildable from a single solution file - we shouldn't need to run GYP with different settings to get a CF solution. TEST=none Review URL: http://codereview.chromium.org/542078 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36546 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/installer/mini_installer.gyp')
-rwxr-xr-xchrome/installer/mini_installer.gyp309
1 files changed, 185 insertions, 124 deletions
diff --git a/chrome/installer/mini_installer.gyp b/chrome/installer/mini_installer.gyp
index 4fc5a6f..e4cc0f1 100755
--- a/chrome/installer/mini_installer.gyp
+++ b/chrome/installer/mini_installer.gyp
@@ -9,129 +9,207 @@
},
'conditions': [
['OS=="win"', {
+ 'target_defaults': {
+ 'dependencies': [
+ '../chrome.gyp:chrome',
+ '../chrome.gyp:chrome_dll',
+ '../chrome.gyp:default_extensions',
+ 'installer.gyp:setup',
+ ],
+ 'include_dirs': [
+ '../..',
+ '<(PRODUCT_DIR)',
+ '<(INTERMEDIATE_DIR)',
+ '<(SHARED_INTERMEDIATE_DIR)/chrome',
+ ],
+ 'sources': [
+ 'mini_installer/appid.h',
+ 'mini_installer/mini_installer.cc',
+ 'mini_installer/mini_installer.h',
+ 'mini_installer/mini_installer.ico',
+ 'mini_installer/mini_installer.rc',
+ 'mini_installer/mini_installer_exe_version.rc.version',
+ 'mini_installer/mini_installer_resource.h',
+ 'mini_installer/pe_resource.cc',
+ 'mini_installer/pe_resource.h',
+ ],
+ 'msvs_settings': {
+ 'VCCLCompilerTool': {
+ 'EnableIntrinsicFunctions': 'true',
+ 'BufferSecurityCheck': 'false',
+ 'BasicRuntimeChecks': '0',
+ },
+ 'VCLinkerTool': {
+ 'RandomizedBaseAddress': '1',
+ 'DataExecutionPrevention': '0',
+ 'AdditionalLibraryDirectories': [
+ '<(DEPTH)/third_party/platformsdk_win7/files/Lib',
+ '<(PRODUCT_DIR)/lib'
+ ],
+ 'DelayLoadDLLs': [],
+ 'EntryPointSymbol': 'MainEntryPoint',
+ 'GenerateMapFile': 'true',
+ 'IgnoreAllDefaultLibraries': 'true',
+ 'OptimizeForWindows98': '1',
+ 'SubSystem': '2', # Set /SUBSYSTEM:WINDOWS
+ 'AdditionalDependencies': [
+ '"$(VCInstallDir)crt\\src\\intel\\mt_lib\\memset.obj"',
+ '"$(VCInstallDir)crt\\src\\intel\\mt_lib\\P4_memset.obj"',
+ 'shlwapi.lib',
+ ],
+ },
+ 'VCManifestTool': {
+ 'AdditionalManifestFiles': [
+ '$(ProjectDir)\\mini_installer\\mini_installer.exe.manifest',
+ ],
+ },
+ },
+ 'configurations': {
+ 'Debug_Base': {
+ 'msvs_settings': {
+ 'VCCLCompilerTool': {
+ 'BasicRuntimeChecks': '0',
+ 'BufferSecurityCheck': 'false',
+ },
+ 'VCLinkerTool': {
+ 'AdditionalOptions': [
+ '/safeseh:no',
+ '/dynamicbase:no',
+ '/ignore:4199',
+ '/ignore:4221',
+ '/nxcompat',
+ ],
+ },
+ },
+ },
+ 'Release_Base': {
+ 'includes': ['../../build/internal/release_defaults.gypi'],
+ 'msvs_settings': {
+ 'VCCLCompilerTool': {
+ 'EnableIntrinsicFunctions': 'true',
+ 'BasicRuntimeChecks': '0',
+ 'BufferSecurityCheck': 'false',
+ },
+ 'VCLinkerTool': {
+ 'AdditionalOptions': [
+ '/SAFESEH:NO',
+ '/NXCOMPAT',
+ '/DYNAMICBASE:NO',
+ '/FIXED',
+ ],
+ },
+ },
+ },
+ },
+ 'rules': [
+ {
+ 'rule_name': 'mini_installer_version',
+ 'extension': 'version',
+ 'variables': {
+ 'template_input_path': 'mini_installer/mini_installer_exe_version.rc.version',
+ },
+ 'inputs': [
+ '<(template_input_path)',
+ '<(version_path)',
+ '<(lastchange_path)',
+ '<(branding_dir)/BRANDING',
+ ],
+ 'outputs': [
+ '<(INTERMEDIATE_DIR)/mini_installer_exe_version.rc',
+ ],
+ 'action': [
+ 'python', '<(version_py)',
+ '-f', '<(version_path)',
+ '-f', '<(lastchange_path)',
+ '-f', '<(branding_dir)/BRANDING',
+ '<(template_input_path)',
+ '<@(_outputs)',
+ ],
+ 'process_outputs_as_sources': 1,
+ 'message': 'Generating version information'
+ },
+ ],
+ # TODO(mark): <(branding_dir) should be defined by the
+ # global condition block at the bottom of the file, but
+ # this doesn't work due to the following issue:
+ #
+ # http://code.google.com/p/gyp/issues/detail?id=22
+ #
+ # Remove this block once the above issue is fixed.
+ 'conditions': [
+ [ 'branding == "Chrome"', {
+ 'variables': {
+ 'branding_dir': '../app/theme/google_chrome',
+ },
+ }, { # else branding!="Chrome"
+ 'variables': {
+ 'branding_dir': '../app/theme/chromium',
+ },
+ }],
+ ],
+ },
'targets': [
{
'target_name': 'mini_installer',
'type': 'executable',
'msvs_guid': '24A5AC7C-280B-4899-9153-6BA570A081E7',
- 'dependencies': [
- '../../app/app.gyp:app_id',
- '../chrome.gyp:chrome',
- '../chrome.gyp:chrome_dll',
- '../chrome.gyp:default_extensions',
- 'installer.gyp:setup',
- ],
- 'include_dirs': [
- '../..',
- '<(PRODUCT_DIR)',
- '<(INTERMEDIATE_DIR)',
- '<(SHARED_INTERMEDIATE_DIR)/chrome',
- ],
'sources': [
'mini_installer/chrome.release',
- 'mini_installer/mini_installer.cc',
- 'mini_installer/mini_installer.h',
- 'mini_installer/mini_installer.ico',
- 'mini_installer/mini_installer.rc',
- 'mini_installer/mini_installer_exe_version.rc.version',
- 'mini_installer/mini_installer_resource.h',
- 'mini_installer/pe_resource.cc',
- 'mini_installer/pe_resource.h',
+ 'mini_installer/chrome_appid.cc',
],
- 'msvs_settings': {
- 'VCCLCompilerTool': {
- 'EnableIntrinsicFunctions': 'true',
- 'BufferSecurityCheck': 'false',
- 'BasicRuntimeChecks': '0',
- },
- 'VCLinkerTool': {
- 'RandomizedBaseAddress': '1',
- 'DataExecutionPrevention': '0',
- 'AdditionalLibraryDirectories': [
- '<(DEPTH)/third_party/platformsdk_win7/files/Lib',
- '<(PRODUCT_DIR)/lib'
- ],
- 'DelayLoadDLLs': [],
- 'EntryPointSymbol': 'MainEntryPoint',
- 'GenerateMapFile': 'true',
- 'IgnoreAllDefaultLibraries': 'true',
- 'OptimizeForWindows98': '1',
- 'SubSystem': '2', # Set /SUBSYSTEM:WINDOWS
- 'AdditionalDependencies': [
- '"$(VCInstallDir)crt\\src\\intel\\mt_lib\\memset.obj"',
- '"$(VCInstallDir)crt\\src\\intel\\mt_lib\\P4_memset.obj"',
- 'shlwapi.lib',
- ],
- },
- 'VCManifestTool': {
- 'AdditionalManifestFiles': [
- '$(ProjectDir)\\mini_installer\\mini_installer.exe.manifest',
- ],
- },
- },
- 'configurations': {
- 'Debug_Base': {
- 'msvs_settings': {
- 'VCCLCompilerTool': {
- 'BasicRuntimeChecks': '0',
- },
- 'VCLinkerTool': {
- 'AdditionalOptions': [
- '/safeseh:no',
- '/dynamicbase:no',
- '/ignore:4199',
- '/ignore:4221',
- '/nxcompat',
- ],
- },
- },
- },
- 'Release_Base': {
- 'includes': ['../../build/internal/release_defaults.gypi'],
- 'msvs_settings': {
- 'VCCLCompilerTool': {
- 'EnableIntrinsicFunctions': 'true',
- 'BasicRuntimeChecks': '0',
- 'BufferSecurityCheck': 'false',
- },
- 'VCLinkerTool': {
- 'AdditionalOptions': [
- '/SAFESEH:NO',
- '/NXCOMPAT',
- '/DYNAMICBASE:NO',
- '/FIXED',
- ],
- },
- },
- },
- },
'rules': [
{
- 'rule_name': 'mini_installer_version',
- 'extension': 'version',
+ 'rule_name': 'installer_archive',
+ 'extension': 'release',
'variables': {
- 'template_input_path': 'mini_installer/mini_installer_exe_version.rc.version',
+ 'create_installer_archive_py_path':
+ '../tools/build/win/create_installer_archive.py',
},
'inputs': [
- '<(template_input_path)',
- '<(version_path)',
- '<(lastchange_path)',
- '<(branding_dir)/BRANDING',
+ '<(create_installer_archive_py_path)',
+ '<(PRODUCT_DIR)/chrome.exe',
+ '<(PRODUCT_DIR)/chrome.dll',
+ '<(PRODUCT_DIR)/locales/en-US.dll',
+ '<(PRODUCT_DIR)/icudt42.dll',
],
'outputs': [
- '<(INTERMEDIATE_DIR)/mini_installer_exe_version.rc',
+ 'xxx.out',
+ '<(PRODUCT_DIR)/<(RULE_INPUT_NAME).7z',
+ '<(PRODUCT_DIR)/<(RULE_INPUT_NAME).packed.7z',
+ '<(PRODUCT_DIR)/setup.ex_',
+ '<(PRODUCT_DIR)/packed_files.txt',
],
'action': [
- 'python', '<(version_py)',
- '-f', '<(version_path)',
- '-f', '<(lastchange_path)',
- '-f', '<(branding_dir)/BRANDING',
- '<(template_input_path)',
- '<@(_outputs)',
+ 'python',
+ '<(create_installer_archive_py_path)',
+ '--output_dir=<(PRODUCT_DIR)',
+ '--input_file=<(RULE_INPUT_PATH)',
+ # TODO(sgk): may just use environment variables
+ #'--distribution=$(CHROMIUM_BUILD)',
+ '--distribution=_google_chrome',
+ # Optional arguments to generate diff installer
+ #'--last_chrome_installer=C:/Temp/base',
+ #'--setup_exe_format=DIFF',
+ #'--diff_algorithm=COURGETTE',
],
- 'process_outputs_as_sources': 1,
- 'message': 'Generating version information'
+ 'message': 'Create installer archive'
},
+ ],
+ },
+ {
+ 'target_name': 'chrome_frame_mini_installer',
+ 'type': 'executable',
+ 'msvs_guid': '2F3651F5-4662-4565-A4F6-AD15B0E893AA',
+ 'sources': [
+ 'mini_installer/chrome_frame.release',
+ 'mini_installer/chrome_frame_appid.cc',
+ ],
+ 'dependencies': [
+ # Artificially make this depend on the other to avoid
+ # problems with parallel packaging scripts being run.
+ 'mini_installer',
+ ],
+ 'rules': [
{
'rule_name': 'installer_archive',
'extension': 'release',
@@ -161,32 +239,15 @@
# TODO(sgk): may just use environment variables
#'--distribution=$(CHROMIUM_BUILD)',
'--distribution=_google_chrome',
- # Optional arguments to generate diff installer
+ '--archive_prefix=cf',
+ # Optional arguments to generate diff installer
#'--last_chrome_installer=C:/Temp/base',
#'--setup_exe_format=DIFF',
#'--diff_algorithm=COURGETTE',
],
- 'message': 'Create installer archive'
+ 'message': 'Create Chrome Frame installer archive'
},
],
- # TODO(mark): <(branding_dir) should be defined by the
- # global condition block at the bottom of the file, but
- # this doesn't work due to the following issue:
- #
- # http://code.google.com/p/gyp/issues/detail?id=22
- #
- # Remove this block once the above issue is fixed.
- 'conditions': [
- [ 'branding == "Chrome"', {
- 'variables': {
- 'branding_dir': '../app/theme/google_chrome',
- },
- }, { # else branding!="Chrome"
- 'variables': {
- 'branding_dir': '../app/theme/chromium',
- },
- }],
- ],
},
],
}],