diff options
author | robertshield@chromium.org <robertshield@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-01-19 21:15:06 +0000 |
---|---|---|
committer | robertshield@chromium.org <robertshield@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-01-19 21:15:06 +0000 |
commit | fd1d6998e6a96569e478c87220f6825a3e47851c (patch) | |
tree | 0f2e2d2e174c20c4eb7366b2d678f58d8aaa633c /chrome/installer/mini_installer.gyp | |
parent | 01bfd02b5e75ad54e90c5379da3a84c714c79bf6 (diff) | |
download | chromium_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-x | chrome/installer/mini_installer.gyp | 309 |
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', - }, - }], - ], }, ], }], |