OLD | NEW |
(Empty) | |
| 1 # Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. |
| 4 { |
| 5 'dependencies': [ |
| 6 '<(chrome_dll_project)', |
| 7 '../chrome.gyp:chrome', |
| 8 '../chrome.gyp:chrome_nacl_win64', |
| 9 '../chrome.gyp:default_extensions', |
| 10 '../chrome.gyp:setup', |
| 11 ], |
| 12 'include_dirs': [ |
| 13 '../..', |
| 14 '<(INTERMEDIATE_DIR)', |
| 15 '<(SHARED_INTERMEDIATE_DIR)/chrome', |
| 16 ], |
| 17 'sources': [ |
| 18 'mini_installer/appid.h', |
| 19 'mini_installer/chrome.release', |
| 20 'mini_installer/chrome_appid.cc', |
| 21 'mini_installer/configuration.cc', |
| 22 'mini_installer/configuration.h', |
| 23 'mini_installer/decompress.cc', |
| 24 'mini_installer/decompress.h', |
| 25 'mini_installer/mini_installer.cc', |
| 26 'mini_installer/mini_installer.h', |
| 27 'mini_installer/mini_installer.ico', |
| 28 'mini_installer/mini_installer.rc', |
| 29 'mini_installer/mini_installer_exe_version.rc.version', |
| 30 'mini_installer/mini_installer_resource.h', |
| 31 'mini_installer/mini_string.cc', |
| 32 'mini_installer/mini_string.h', |
| 33 'mini_installer/pe_resource.cc', |
| 34 'mini_installer/pe_resource.h', |
| 35 '<(INTERMEDIATE_DIR)/packed_files.rc', |
| 36 ], |
| 37 # Disable precompiled headers for this project, to avoid |
| 38 # linker errors when building with VS 2008. |
| 39 'msvs_precompiled_header': '', |
| 40 'msvs_precompiled_source': '', |
| 41 'msvs_settings': { |
| 42 'VCCLCompilerTool': { |
| 43 'EnableIntrinsicFunctions': 'true', |
| 44 'BufferSecurityCheck': 'false', |
| 45 'BasicRuntimeChecks': '0', |
| 46 'ExceptionHandling': '0', |
| 47 }, |
| 48 'VCLinkerTool': { |
| 49 'OutputFile': '<(output_dir)/mini_installer.exe', |
| 50 'RandomizedBaseAddress': '1', |
| 51 'DataExecutionPrevention': '0', |
| 52 'AdditionalLibraryDirectories': [ |
| 53 '<(DEPTH)/third_party/platformsdk_win7/files/Lib', |
| 54 '<(PRODUCT_DIR)/lib' |
| 55 ], |
| 56 'DelayLoadDLLs': [], |
| 57 'EntryPointSymbol': 'MainEntryPoint', |
| 58 'GenerateMapFile': 'true', |
| 59 'IgnoreAllDefaultLibraries': 'true', |
| 60 'OptimizeForWindows98': '1', |
| 61 'SubSystem': '2', # Set /SUBSYSTEM:WINDOWS |
| 62 'AdditionalDependencies': [ |
| 63 'shlwapi.lib', |
| 64 'setupapi.lib', |
| 65 ], |
| 66 'conditions': [ |
| 67 ['MSVS_VERSION=="2005e"', { |
| 68 'AdditionalDependencies': [ # Must explicitly link in VC2005E |
| 69 'advapi32.lib', |
| 70 'shell32.lib', |
| 71 ], |
| 72 }], |
| 73 ], |
| 74 }, |
| 75 'VCManifestTool': { |
| 76 'AdditionalManifestFiles': [ |
| 77 '$(ProjectDir)\\mini_installer\\mini_installer.exe.manifest', |
| 78 ], |
| 79 }, |
| 80 }, |
| 81 'configurations': { |
| 82 'Debug_Base': { |
| 83 'msvs_settings': { |
| 84 'VCCLCompilerTool': { |
| 85 'BasicRuntimeChecks': '0', |
| 86 'BufferSecurityCheck': 'false', |
| 87 'ExceptionHandling': '0', |
| 88 }, |
| 89 'VCLinkerTool': { |
| 90 'SubSystem': '2', # Set /SUBSYSTEM:WINDOWS |
| 91 'AdditionalOptions': [ |
| 92 '/safeseh:no', |
| 93 '/dynamicbase:no', |
| 94 '/ignore:4199', |
| 95 '/ignore:4221', |
| 96 '/nxcompat', |
| 97 ], |
| 98 }, |
| 99 }, |
| 100 }, |
| 101 'Release_Base': { |
| 102 'includes': ['../../build/internal/release_defaults.gypi'], |
| 103 'msvs_settings': { |
| 104 'VCCLCompilerTool': { |
| 105 'EnableIntrinsicFunctions': 'true', |
| 106 'BasicRuntimeChecks': '0', |
| 107 'BufferSecurityCheck': 'false', |
| 108 'ExceptionHandling': '0', |
| 109 }, |
| 110 'VCLinkerTool': { |
| 111 'SubSystem': '2', # Set /SUBSYSTEM:WINDOWS |
| 112 'Profile': 'false', # Conflicts with /FIXED |
| 113 'AdditionalOptions': [ |
| 114 '/SAFESEH:NO', |
| 115 '/NXCOMPAT', |
| 116 '/DYNAMICBASE:NO', |
| 117 '/FIXED', |
| 118 ], |
| 119 }, |
| 120 }, |
| 121 }, |
| 122 }, |
| 123 'rules': [ |
| 124 { |
| 125 'rule_name': 'mini_installer_version', |
| 126 'extension': 'version', |
| 127 'variables': { |
| 128 'template_input_path': |
| 129 'mini_installer/mini_installer_exe_version.rc.version', |
| 130 }, |
| 131 'inputs': [ |
| 132 '<(template_input_path)', |
| 133 '<(version_path)', |
| 134 '<(lastchange_path)', |
| 135 '<(branding_dir)/BRANDING', |
| 136 ], |
| 137 'outputs': [ |
| 138 '<(INTERMEDIATE_DIR)/mini_installer_exe_version.rc', |
| 139 ], |
| 140 'action': [ |
| 141 'python', '<(version_py)', |
| 142 '-f', '<(version_path)', |
| 143 '-f', '<(lastchange_path)', |
| 144 '-f', '<(branding_dir)/BRANDING', |
| 145 '<(template_input_path)', |
| 146 '<@(_outputs)', |
| 147 ], |
| 148 'process_outputs_as_sources': 1, |
| 149 'message': 'Generating version information' |
| 150 }, |
| 151 { |
| 152 'rule_name': 'installer_archive', |
| 153 'extension': 'release', |
| 154 'variables': { |
| 155 'create_installer_archive_py_path': |
| 156 '../tools/build/win/create_installer_archive.py', |
| 157 }, |
| 158 'inputs': [ |
| 159 '<(create_installer_archive_py_path)', |
| 160 '<(PRODUCT_DIR)/chrome.exe', |
| 161 '<(chrome_dll_path)', |
| 162 '<(PRODUCT_DIR)/nacl64.exe', |
| 163 '<(PRODUCT_DIR)/ppGoogleNaClPluginChrome.dll', |
| 164 '<(PRODUCT_DIR)/nacl_irt_x86_32.nexe', |
| 165 '<(PRODUCT_DIR)/nacl_irt_x86_64.nexe', |
| 166 '<(PRODUCT_DIR)/locales/en-US.pak', |
| 167 '<(PRODUCT_DIR)/icudt.dll', |
| 168 ], |
| 169 'outputs': [ |
| 170 'xxx.out', |
| 171 '<(output_dir)/<(RULE_INPUT_NAME).7z', |
| 172 '<(output_dir)/<(RULE_INPUT_NAME).packed.7z', |
| 173 '<(output_dir)/setup.ex_', |
| 174 '<(INTERMEDIATE_DIR)/packed_files.rc', |
| 175 ], |
| 176 'action': [ |
| 177 'python', |
| 178 '<(create_installer_archive_py_path)', |
| 179 '--build_dir=<(PRODUCT_DIR)', |
| 180 '--output_dir=<(output_dir)', |
| 181 '--staging_dir=<(INTERMEDIATE_DIR)', |
| 182 '--input_file=<(RULE_INPUT_PATH)', |
| 183 '--resource_file_path=<(INTERMEDIATE_DIR)/packed_files.rc', |
| 184 # TODO(sgk): may just use environment variables |
| 185 #'--distribution=$(CHROMIUM_BUILD)', |
| 186 '--distribution=_google_chrome', |
| 187 # Optional arguments to generate diff installer |
| 188 #'--last_chrome_installer=C:/Temp/base', |
| 189 #'--setup_exe_format=DIFF', |
| 190 #'--diff_algorithm=COURGETTE', |
| 191 ], |
| 192 'message': 'Create installer archive' |
| 193 }, |
| 194 ], |
| 195 # TODO(mark): <(branding_dir) should be defined by the |
| 196 # global condition block at the bottom of the file, but |
| 197 # this doesn't work due to the following issue: |
| 198 # |
| 199 # http://code.google.com/p/gyp/issues/detail?id=22 |
| 200 # |
| 201 # Remove this block once the above issue is fixed. |
| 202 'conditions': [ |
| 203 [ 'branding == "Chrome"', { |
| 204 'variables': { |
| 205 'branding_dir': '../app/theme/google_chrome', |
| 206 }, |
| 207 }, { # else branding!="Chrome" |
| 208 'variables': { |
| 209 'branding_dir': '../app/theme/chromium', |
| 210 }, |
| 211 }], |
| 212 ], |
| 213 } |
OLD | NEW |