blob: 353cb776f75e9011fdd443284e65097628563258 [file] [log] [blame]
[email protected]e906982d2012-01-05 21:06:001# Copyright (c) 2012 The Chromium Authors. All rights reserved.
[email protected]5c14951a2010-05-24 00:35:462# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
[email protected]bac9380a2009-05-15 21:55:065{
[email protected]176e0912009-05-28 00:10:376 'variables': {
[email protected]0db4cb12012-05-17 23:48:567 'lastchange_path': '../build/util/LASTCHANGE',
[email protected]29b12f42013-04-10 02:26:398 'libpeer_target_type%': 'static_library',
[email protected]9b72d9a52009-06-04 21:43:069 # 'branding_dir' is set in the 'conditions' section at the bottom.
[email protected]176e0912009-05-28 00:10:3710 },
[email protected]eaf76722009-07-30 17:42:3511 'conditions': [
12 ['OS=="win"', {
13 'targets': [
14 {
[email protected]a9b7d732009-05-29 00:22:3015 'target_name': 'gcapi_dll',
16 'type': 'loadable_module',
[email protected]a9b7d732009-05-29 00:22:3017 'dependencies': [
[email protected]0364ba22012-05-31 18:35:2018 'gcapi_lib',
[email protected]a9b7d732009-05-29 00:22:3019 ],
20 'include_dirs': [
[email protected]0db4cb12012-05-17 23:48:5621 '..',
[email protected]a9b7d732009-05-29 00:22:3022 ],
23 'sources': [
[email protected]fbc083b2011-11-14 18:57:3624 'installer/gcapi/gcapi.def',
[email protected]0364ba22012-05-31 18:35:2025 'installer/gcapi/gcapi_dll.cc',
[email protected]a9b7d732009-05-29 00:22:3026 ],
27 },
28 {
29 'target_name': 'gcapi_lib',
30 'type': 'static_library',
[email protected]a9b7d732009-05-29 00:22:3031 'dependencies': [
[email protected]fbc083b2011-11-14 18:57:3632 'installer_util',
[email protected]0db4cb12012-05-17 23:48:5633 '../base/base.gyp:base',
[email protected]3227e09a2012-06-21 18:49:2934 '../chrome/chrome.gyp:launcher_support',
[email protected]0db4cb12012-05-17 23:48:5635 '../google_update/google_update.gyp:google_update',
[email protected]a9b7d732009-05-29 00:22:3036 ],
37 'include_dirs': [
[email protected]0db4cb12012-05-17 23:48:5638 '..',
[email protected]a9b7d732009-05-29 00:22:3039 ],
40 'sources': [
[email protected]5c14951a2010-05-24 00:35:4641 'installer/gcapi/gcapi.cc',
42 'installer/gcapi/gcapi.h',
[email protected]74403122012-02-08 17:55:3043 'installer/gcapi/gcapi_omaha_experiment.cc',
44 'installer/gcapi/gcapi_omaha_experiment.h',
[email protected]0ef09d112012-01-31 19:50:4045 'installer/gcapi/gcapi_reactivation.cc',
46 'installer/gcapi/gcapi_reactivation.h',
[email protected]a9b7d732009-05-29 00:22:3047 ],
[email protected]a02d52762013-02-18 18:55:5348 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
49 'msvs_disabled_warnings': [ 4267, ],
[email protected]a9b7d732009-05-29 00:22:3050 },
51 {
52 'target_name': 'gcapi_test',
53 'type': 'executable',
[email protected]89886fa32012-10-08 23:46:3354 'dependencies': [
[email protected]fbc083b2011-11-14 18:57:3655 'common',
[email protected]a9b7d732009-05-29 00:22:3056 'gcapi_dll',
57 'gcapi_lib',
[email protected]fbc083b2011-11-14 18:57:3658 'installer_util',
[email protected]0db4cb12012-05-17 23:48:5659 '../base/base.gyp:base',
60 '../base/base.gyp:test_support_base',
61 '../testing/gtest.gyp:gtest',
[email protected]a9b7d732009-05-29 00:22:3062 ],
63 'include_dirs': [
[email protected]0db4cb12012-05-17 23:48:5664 '..',
[email protected]a9b7d732009-05-29 00:22:3065 ],
66 'sources': [
[email protected]fbc083b2011-11-14 18:57:3667 'installer/gcapi/gcapi_last_run_test.cc',
[email protected]21344672013-11-07 06:04:2868 'installer/gcapi/gcapi_omaha_experiment_test.cc',
[email protected]0ef09d112012-01-31 19:50:4069 'installer/gcapi/gcapi_reactivation_test.cc',
[email protected]21344672013-11-07 06:04:2870 'installer/gcapi/gcapi_test_registry_overrider.cc',
71 'installer/gcapi/gcapi_test_registry_overrider.h',
[email protected]5c14951a2010-05-24 00:35:4672 'installer/gcapi/gcapi_test.cc',
73 'installer/gcapi/gcapi_test.rc',
74 'installer/gcapi/resource.h',
[email protected]a9b7d732009-05-29 00:22:3075 ],
76 },
77 {
[email protected]2c921642009-06-09 00:29:1778 'target_name': 'installer_util_unittests',
[email protected]a9b7d732009-05-29 00:22:3079 'type': 'executable',
[email protected]a9b7d732009-05-29 00:22:3080 'dependencies': [
81 'installer_util',
82 'installer_util_strings',
[email protected]5a1fc272012-11-01 20:55:4283 'installer/upgrade_test.gyp:alternate_version_generator_lib',
[email protected]0db4cb12012-05-17 23:48:5684 '../base/base.gyp:base',
85 '../base/base.gyp:base_i18n',
86 '../base/base.gyp:test_support_base',
[email protected]5a1fc272012-11-01 20:55:4287 '../chrome/chrome.gyp:chrome_version_resources',
[email protected]0db4cb12012-05-17 23:48:5688 '../content/content.gyp:content_common',
89 '../testing/gmock.gyp:gmock',
90 '../testing/gtest.gyp:gtest',
[email protected]a9b7d732009-05-29 00:22:3091 ],
92 'include_dirs': [
[email protected]0db4cb12012-05-17 23:48:5693 '..',
[email protected]a9b7d732009-05-29 00:22:3094 ],
95 'sources': [
[email protected]5c14951a2010-05-24 00:35:4696 'installer/setup/compat_checks_unittest.cc',
97 'installer/setup/setup_constants.cc',
[email protected]794764bc2012-08-31 02:22:4898 'installer/util/callback_work_item_unittest.cc',
[email protected]a7db59a2012-11-05 18:21:0099 'installer/util/channel_info_unittest.cc',
[email protected]a6f66bf2011-09-18 02:47:17100 'installer/util/copy_reg_key_work_item_unittest.cc',
[email protected]5c14951a2010-05-24 00:35:46101 'installer/util/copy_tree_work_item_unittest.cc',
102 'installer/util/create_dir_work_item_unittest.cc',
103 'installer/util/create_reg_key_work_item_unittest.cc',
104 'installer/util/delete_after_reboot_helper_unittest.cc',
[email protected]f44388c2011-03-02 01:37:37105 'installer/util/delete_reg_key_work_item_unittest.cc',
[email protected]5c14951a2010-05-24 00:35:46106 'installer/util/delete_reg_value_work_item_unittest.cc',
107 'installer/util/delete_tree_work_item_unittest.cc',
[email protected]08c5fe52011-05-12 15:34:40108 'installer/util/duplicate_tree_detector_unittest.cc',
[email protected]afe3634a2011-05-27 19:09:19109 'installer/util/fake_installation_state.h',
110 'installer/util/fake_product_state.h',
[email protected]5c14951a2010-05-24 00:35:46111 'installer/util/google_update_settings_unittest.cc',
[email protected]a6ea1262011-01-05 03:13:33112 'installer/util/install_util_unittest.cc',
[email protected]26c950e2011-02-16 02:48:44113 'installer/util/installation_validation_helper.cc',
114 'installer/util/installation_validation_helper.h',
[email protected]a7db59a2012-11-05 18:21:00115 'installer/util/installation_validator_unittest.cc',
[email protected]f0260d22011-01-25 16:44:37116 'installer/util/installer_state_unittest.cc',
[email protected]a7db59a2012-11-05 18:21:00117 'installer/util/installer_util_test_common.cc',
118 'installer/util/installer_util_test_common.h',
[email protected]5c14951a2010-05-24 00:35:46119 'installer/util/installer_util_unittests.rc',
120 'installer/util/installer_util_unittests_resource.h',
[email protected]337ca072010-11-16 15:28:45121 'installer/util/language_selector_unittest.cc',
[email protected]1f9e0892011-10-20 21:00:45122 'installer/util/logging_installer_unittest.cc',
[email protected]5c14951a2010-05-24 00:35:46123 'installer/util/lzma_util_unittest.cc',
124 'installer/util/master_preferences_unittest.cc',
125 'installer/util/move_tree_work_item_unittest.cc',
[email protected]f0260d22011-01-25 16:44:37126 'installer/util/product_state_unittest.cc',
[email protected]a7db59a2012-11-05 18:21:00127 'installer/util/product_unittest.cc',
128 'installer/util/product_unittest.h',
[email protected]a6f66bf2011-09-18 02:47:17129 'installer/util/registry_key_backup_unittest.cc',
130 'installer/util/registry_test_data.cc',
131 'installer/util/registry_test_data.h',
[email protected]5c14951a2010-05-24 00:35:46132 'installer/util/run_all_unittests.cc',
[email protected]48ddb162011-02-24 17:36:32133 'installer/util/self_cleaning_temp_dir_unittest.cc',
[email protected]5c14951a2010-05-24 00:35:46134 'installer/util/set_reg_value_work_item_unittest.cc',
135 'installer/util/shell_util_unittest.cc',
[email protected]62f069d2013-04-12 18:55:18136 'installer/util/uninstall_metrics_unittest.cc',
[email protected]54519a42010-10-10 20:14:48137 'installer/util/wmi_unittest.cc',
[email protected]5c14951a2010-05-24 00:35:46138 'installer/util/work_item_list_unittest.cc',
[email protected]5a1fc272012-11-01 20:55:42139 '<(SHARED_INTERMEDIATE_DIR)/chrome_version/other_version.rc',
[email protected]a9b7d732009-05-29 00:22:30140 ],
[email protected]3d4de3a82009-06-17 06:11:17141 'msvs_settings': {
142 'VCManifestTool': {
[email protected]5d60b0b2013-07-30 20:24:30143 'AdditionalManifestFiles': [
144 '$(ProjectDir)\\installer\\mini_installer\\mini_installer.exe.manifest',
145 ],
[email protected]3d4de3a82009-06-17 06:11:17146 },
147 },
[email protected]8e6b6ee2013-02-08 05:22:00148 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
149 'msvs_disabled_warnings': [ 4267, ],
[email protected]a9b7d732009-05-29 00:22:30150 },
151 {
152 'target_name': 'installer_util_strings',
[email protected]e12f6082009-09-09 19:54:07153 'type': 'none',
[email protected]660a2f22014-02-07 20:24:58154 'actions': [
[email protected]a9b7d732009-05-29 00:22:30155 {
[email protected]660a2f22014-02-07 20:24:58156 'action_name': 'installer_util_strings',
[email protected]d4ae33bd42011-03-02 13:39:33157 'variables': {
[email protected]660a2f22014-02-07 20:24:58158 'create_string_rc_py': 'installer/util/prebuild/create_string_rc.py',
[email protected]d4ae33bd42011-03-02 13:39:33159 },
[email protected]660a2f22014-02-07 20:24:58160 'conditions': [
161 ['branding=="Chrome"', {
162 'variables': {
163 'brand_strings': 'google_chrome_strings',
164 },
165 }, {
166 'variables': {
167 'brand_strings': 'chromium_strings',
168 },
169 }],
170 ],
[email protected]a9b7d732009-05-29 00:22:30171 'inputs': [
[email protected]d4ae33bd42011-03-02 13:39:33172 '<(create_string_rc_py)',
[email protected]660a2f22014-02-07 20:24:58173 'app/<(brand_strings).grd',
[email protected]a9b7d732009-05-29 00:22:30174 ],
175 'outputs': [
[email protected]9ccb18d2009-09-11 18:03:24176 '<(SHARED_INTERMEDIATE_DIR)/installer_util_strings/installer_util_strings.h',
[email protected]054e4822012-07-05 08:06:27177 '<(SHARED_INTERMEDIATE_DIR)/installer_util_strings/installer_util_strings.rc',
[email protected]a9b7d732009-05-29 00:22:30178 ],
[email protected]e12f6082009-09-09 19:54:07179 'action': ['python',
[email protected]d4ae33bd42011-03-02 13:39:33180 '<(create_string_rc_py)',
[email protected]660a2f22014-02-07 20:24:58181 '-i', 'app/<(brand_strings).grd:resources',
182 '-n', 'installer_util_strings',
183 '-o', '<(SHARED_INTERMEDIATE_DIR)/installer_util_strings',],
184 'message': 'Generating installer_util_strings',
[email protected]a9b7d732009-05-29 00:22:30185 },
186 ],
187 'direct_dependent_settings': {
188 'include_dirs': [
[email protected]e8c7f632009-09-09 00:47:07189 '<(SHARED_INTERMEDIATE_DIR)/installer_util_strings',
[email protected]a9b7d732009-05-29 00:22:30190 ],
191 },
192 },
193 {
[email protected]3227e09a2012-06-21 18:49:29194 'target_name': 'launcher_support',
195 'type': 'static_library',
196 'include_dirs': [
197 '..',
198 ],
199 'direct_dependent_settings': {
200 'include_dirs': [
201 '..',
202 ],
203 },
204 'dependencies': [
205 '<(DEPTH)/base/base.gyp:base',
206 ],
207 'sources': [
208 'installer/launcher_support/chrome_launcher_support.cc',
209 'installer/launcher_support/chrome_launcher_support.h',
210 ],
211 },
212 {
[email protected]a9b7d732009-05-29 00:22:30213 'target_name': 'mini_installer_test',
214 'type': 'executable',
[email protected]a9b7d732009-05-29 00:22:30215 'dependencies': [
216 'installer_util',
[email protected]26c950e2011-02-16 02:48:44217 'installer_util_strings',
[email protected]0db4cb12012-05-17 23:48:56218 '../base/base.gyp:base',
219 '../base/base.gyp:base_i18n',
220 '../base/base.gyp:test_support_base',
221 '../chrome/chrome.gyp:test_support_common',
222 '../testing/gtest.gyp:gtest',
[email protected]a9b7d732009-05-29 00:22:30223 ],
224 'include_dirs': [
[email protected]0db4cb12012-05-17 23:48:56225 '..',
[email protected]a9b7d732009-05-29 00:22:30226 ],
227 'sources': [
[email protected]26c950e2011-02-16 02:48:44228 '<(SHARED_INTERMEDIATE_DIR)/installer_util_strings/installer_util_strings.rc',
229 'installer/util/installation_validation_helper.cc',
230 'installer/util/installation_validation_helper.h',
[email protected]e906982d2012-01-05 21:06:00231 'test/mini_installer_test/installer_path_provider.cc',
232 'test/mini_installer_test/installer_path_provider.h',
233 'test/mini_installer_test/installer_test_util.cc',
234 'test/mini_installer_test/installer_test_util.h',
[email protected]15874fd792010-05-24 01:23:17235 'test/mini_installer_test/mini_installer_test_constants.cc',
236 'test/mini_installer_test/mini_installer_test_constants.h',
[email protected]e906982d2012-01-05 21:06:00237 'test/mini_installer_test/run_all_unittests.cc',
238 'test/mini_installer_test/switch_builder.cc',
239 'test/mini_installer_test/switch_builder.h',
[email protected]15874fd792010-05-24 01:23:17240 'test/mini_installer_test/test.cc',
[email protected]a9b7d732009-05-29 00:22:30241 ],
[email protected]3d4de3a82009-06-17 06:11:17242 'msvs_settings': {
243 'VCManifestTool': {
[email protected]5d60b0b2013-07-30 20:24:30244 'AdditionalManifestFiles': [
245 '$(ProjectDir)\\installer\\mini_installer\\mini_installer.exe.manifest',
246 ],
[email protected]3d4de3a82009-06-17 06:11:17247 },
248 },
[email protected]a9b7d732009-05-29 00:22:30249 },
250 {
251 'target_name': 'setup',
252 'type': 'executable',
[email protected]a9b7d732009-05-29 00:22:30253 'dependencies': [
254 'installer_util',
255 'installer_util_strings',
[email protected]f0d583d2013-01-20 00:37:49256 'launcher_support',
[email protected]0db4cb12012-05-17 23:48:56257 '../base/base.gyp:base',
[email protected]6c6ad642012-10-29 04:16:08258 '../breakpad/breakpad.gyp:breakpad_handler',
[email protected]99245a02012-10-09 20:57:49259 '../chrome/common_constants.gyp:common_constants',
[email protected]0db4cb12012-05-17 23:48:56260 '../rlz/rlz.gyp:rlz_lib',
261 '../third_party/zlib/zlib.gyp:zlib',
[email protected]a9b7d732009-05-29 00:22:30262 ],
263 'include_dirs': [
[email protected]0db4cb12012-05-17 23:48:56264 '..',
[email protected]a9b7d732009-05-29 00:22:30265 '<(INTERMEDIATE_DIR)',
[email protected]33e428dc2009-06-17 05:05:13266 '<(SHARED_INTERMEDIATE_DIR)/setup',
[email protected]a9b7d732009-05-29 00:22:30267 ],
[email protected]33e428dc2009-06-17 05:05:13268 'direct_dependent_settings': {
269 'include_dirs': [
270 '<(SHARED_INTERMEDIATE_DIR)/setup',
271 ],
272 },
[email protected]a9b7d732009-05-29 00:22:30273 'sources': [
[email protected]c590bf92010-07-07 20:16:43274 'installer/mini_installer/chrome.release',
[email protected]855c4ba2013-07-22 19:20:01275 'installer/setup/archive_patch_helper.cc',
276 'installer/setup/archive_patch_helper.h',
[email protected]5c14951a2010-05-24 00:35:46277 'installer/setup/install.cc',
278 'installer/setup/install.h',
[email protected]a3bb1a62011-01-14 19:47:56279 'installer/setup/install_worker.cc',
280 'installer/setup/install_worker.h',
[email protected]5c14951a2010-05-24 00:35:46281 'installer/setup/setup_main.cc',
[email protected]92186232013-08-12 05:23:08282 'installer/setup/setup_main.h',
[email protected]5c14951a2010-05-24 00:35:46283 'installer/setup/setup.ico',
284 'installer/setup/setup.rc',
285 'installer/setup/setup_constants.cc',
286 'installer/setup/setup_constants.h',
287 'installer/setup/setup_exe_version.rc.version',
288 'installer/setup/setup_resource.h',
289 'installer/setup/setup_util.cc',
290 'installer/setup/setup_util.h',
291 'installer/setup/uninstall.cc',
292 'installer/setup/uninstall.h',
[email protected]a9b7d732009-05-29 00:22:30293 ],
294 'msvs_settings': {
295 'VCLinkerTool': {
296 'SubSystem': '2', # Set /SUBSYSTEM:WINDOWS
297 },
[email protected]d867f562009-06-17 21:31:15298 'VCManifestTool': {
[email protected]5d60b0b2013-07-30 20:24:30299 'AdditionalManifestFiles': [
300 '$(ProjectDir)\\installer\\setup\\setup.exe.manifest',
301 ],
[email protected]d867f562009-06-17 21:31:15302 },
[email protected]a9b7d732009-05-29 00:22:30303 },
[email protected]968ad6d02013-02-25 03:28:43304 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
305 'msvs_disabled_warnings': [ 4267, ],
[email protected]a9b7d732009-05-29 00:22:30306 'rules': [
307 {
308 'rule_name': 'setup_version',
309 'extension': 'version',
310 'variables': {
[email protected]0db4cb12012-05-17 23:48:56311 'version_py_path': '../chrome/tools/build/version.py',
[email protected]5c14951a2010-05-24 00:35:46312 'template_input_path': 'installer/setup/setup_exe_version.rc.version',
[email protected]a9b7d732009-05-29 00:22:30313 },
314 'inputs': [
315 '<(template_input_path)',
[email protected]9b72d9a52009-06-04 21:43:06316 '<(version_path)',
[email protected]19f60a52010-02-17 16:49:27317 '<(lastchange_path)',
[email protected]9b72d9a52009-06-04 21:43:06318 '<(branding_dir)/BRANDING',
[email protected]a9b7d732009-05-29 00:22:30319 ],
320 'outputs': [
[email protected]33e428dc2009-06-17 05:05:13321 '<(SHARED_INTERMEDIATE_DIR)/setup/setup_exe_version.rc',
[email protected]a9b7d732009-05-29 00:22:30322 ],
323 'action': [
[email protected]5c14951a2010-05-24 00:35:46324 'python', '<(version_py_path)',
[email protected]9b72d9a52009-06-04 21:43:06325 '-f', '<(version_path)',
[email protected]63314f52009-06-04 22:28:32326 '-f', '<(lastchange_path)',
[email protected]9b72d9a52009-06-04 21:43:06327 '-f', '<(branding_dir)/BRANDING',
[email protected]a9b7d732009-05-29 00:22:30328 '<(template_input_path)',
[email protected]9b72d9a52009-06-04 21:43:06329 '<@(_outputs)',
[email protected]a9b7d732009-05-29 00:22:30330 ],
331 'process_outputs_as_sources': 1,
332 'message': 'Generating version information'
333 },
334 {
335 'rule_name': 'server_dlls',
336 'extension': 'release',
337 'variables': {
[email protected]5c14951a2010-05-24 00:35:46338 'scan_server_dlls_py' : 'tools/build/win/scan_server_dlls.py',
[email protected]b24d4332012-05-07 22:20:09339 'template_file': 'installer/mini_installer/chrome.release',
[email protected]a9b7d732009-05-29 00:22:30340 },
341 'inputs': [
[email protected]fd1d6992010-01-19 21:15:06342 '<(scan_server_dlls_py)',
343 '<(template_file)'
[email protected]a9b7d732009-05-29 00:22:30344 ],
345 'outputs': [
346 '<(INTERMEDIATE_DIR)/registered_dlls.h',
347 ],
348 'action': [
349 'python',
350 '<(scan_server_dlls_py)',
[email protected]4ed4ec62009-07-13 20:00:59351 '--output_dir=<(PRODUCT_DIR)',
[email protected]a9b7d732009-05-29 00:22:30352 '--input_file=<(RULE_INPUT_PATH)',
353 '--header_output_dir=<(INTERMEDIATE_DIR)',
354 # TODO(sgk): may just use environment variables
355 #'--distribution=$(CHROMIUM_BUILD)',
356 '--distribution=_google_chrome',
357 ],
358 },
359 ],
[email protected]2c85245e92009-05-29 20:08:00360 'conditions': [
[email protected]08eccdd8842012-05-17 20:15:11361 ['component == "shared_library"', {
[email protected]5d60b0b2013-07-30 20:24:30362 'variables': {
363 'win_use_external_manifest': 1,
[email protected]08eccdd8842012-05-17 20:15:11364 },
365 }],
[email protected]14b37f72009-10-19 01:40:17366 # TODO(mark): <(branding_dir) should be defined by the
367 # global condition block at the bottom of the file, but
368 # this doesn't work due to the following issue:
369 #
370 # http://code.google.com/p/gyp/issues/detail?id=22
371 #
372 # Remove this block once the above issue is fixed.
[email protected]2c85245e92009-05-29 20:08:00373 [ 'branding == "Chrome"', {
374 'variables': {
[email protected]5c14951a2010-05-24 00:35:46375 'branding_dir': 'app/theme/google_chrome',
[email protected]982df332012-07-04 18:43:36376 'branding_dir_100': 'app/theme/default_100_percent/google_chrome',
[email protected]2c85245e92009-05-29 20:08:00377 },
378 }, { # else branding!="Chrome"
379 'variables': {
[email protected]5c14951a2010-05-24 00:35:46380 'branding_dir': 'app/theme/chromium',
[email protected]982df332012-07-04 18:43:36381 'branding_dir_100': 'app/theme/default_100_percent/chromium',
[email protected]2c85245e92009-05-29 20:08:00382 },
383 }],
384 ],
[email protected]a9b7d732009-05-29 00:22:30385 },
[email protected]2c921642009-06-09 00:29:17386 {
387 'target_name': 'setup_unittests',
388 'type': 'executable',
[email protected]2c921642009-06-09 00:29:17389 'dependencies': [
390 'installer_util',
[email protected]f0260d22011-01-25 16:44:37391 'installer_util_strings',
[email protected]f0d583d2013-01-20 00:37:49392 'launcher_support',
[email protected]0db4cb12012-05-17 23:48:56393 '../base/base.gyp:base',
394 '../base/base.gyp:base_i18n',
395 '../base/base.gyp:test_support_base',
[email protected]0db4cb12012-05-17 23:48:56396 '../testing/gmock.gyp:gmock',
397 '../testing/gtest.gyp:gtest',
[email protected]2c921642009-06-09 00:29:17398 ],
399 'include_dirs': [
[email protected]0db4cb12012-05-17 23:48:56400 '..',
[email protected]fb3d0322011-02-03 01:07:35401 '<(INTERMEDIATE_DIR)',
[email protected]2c921642009-06-09 00:29:17402 ],
[email protected]a3bb1a62011-01-14 19:47:56403 # TODO(robertshield): Move the items marked with "Move to lib"
404 # below into a separate lib and then link both setup.exe and
405 # setup_unittests.exe against that.
[email protected]2c921642009-06-09 00:29:17406 'sources': [
[email protected]58d9fe562012-05-07 04:08:56407 'installer/mini_installer/chrome.release', # Move to lib
[email protected]7f6b60b2011-07-19 12:19:20408 'installer/mini_installer/appid.h',
409 'installer/mini_installer/chrome_appid.cc',
410 'installer/mini_installer/configuration.cc',
411 'installer/mini_installer/configuration.h',
412 'installer/mini_installer/configuration_test.cc',
[email protected]25f8a302011-03-16 21:32:06413 'installer/mini_installer/decompress.cc',
414 'installer/mini_installer/decompress.h',
415 'installer/mini_installer/decompress_test.cc',
[email protected]c66931c2011-03-16 20:43:26416 'installer/mini_installer/mini_string.cc',
417 'installer/mini_installer/mini_string.h',
418 'installer/mini_installer/mini_string_test.cc',
[email protected]855c4ba2013-07-22 19:20:01419 'installer/setup/archive_patch_helper.cc', # Move to lib
420 'installer/setup/archive_patch_helper.h', # Move to lib
421 'installer/setup/archive_patch_helper_unittest.cc',
[email protected]58d9fe562012-05-07 04:08:56422 'installer/setup/install.cc', # Move to lib
423 'installer/setup/install.h', # Move to lib
424 'installer/setup/install_unittest.cc',
425 'installer/setup/install_worker.cc', # Move to lib
426 'installer/setup/install_worker.h', # Move to lib
[email protected]a3bb1a62011-01-14 19:47:56427 'installer/setup/install_worker_unittest.cc',
[email protected]5c14951a2010-05-24 00:35:46428 'installer/setup/run_all_unittests.cc',
[email protected]58d9fe562012-05-07 04:08:56429 'installer/setup/setup_constants.cc', # Move to lib
430 'installer/setup/setup_constants.h', # Move to lib
[email protected]f0260d22011-01-25 16:44:37431 'installer/setup/setup_unittests.rc',
[email protected]f0260d22011-01-25 16:44:37432 'installer/setup/setup_unittests_resource.h',
[email protected]5c14951a2010-05-24 00:35:46433 'installer/setup/setup_util.cc',
434 'installer/setup/setup_util_unittest.cc',
[email protected]c2e19612013-06-04 16:50:19435 'installer/setup/setup_util_unittest.h',
[email protected]2c921642009-06-09 00:29:17436 ],
[email protected]58d9fe562012-05-07 04:08:56437 'rules': [
438 {
439 'rule_name': 'server_dlls', # Move to lib
440 'extension': 'release',
441 'variables': {
442 'scan_server_dlls_py' : 'tools/build/win/scan_server_dlls.py',
[email protected]b24d4332012-05-07 22:20:09443 'template_file': 'installer/mini_installer/chrome.release',
[email protected]58d9fe562012-05-07 04:08:56444 },
445 'inputs': [
446 '<(scan_server_dlls_py)',
447 '<(template_file)'
448 ],
449 'outputs': [
450 '<(INTERMEDIATE_DIR)/registered_dlls.h',
451 ],
452 'action': [
453 'python',
454 '<(scan_server_dlls_py)',
455 '--output_dir=<(PRODUCT_DIR)',
456 '--input_file=<(RULE_INPUT_PATH)',
457 '--header_output_dir=<(INTERMEDIATE_DIR)',
458 # TODO(sgk): may just use environment variables
459 #'--distribution=$(CHROMIUM_BUILD)',
460 '--distribution=_google_chrome',
461 ],
462 },
463 ],
[email protected]a02d52762013-02-18 18:55:53464 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
465 'msvs_disabled_warnings': [ 4267, ],
[email protected]2c921642009-06-09 00:29:17466 },
[email protected]a9b7d732009-05-29 00:22:30467 ],
468 }],
[email protected]3a41c8ef2013-01-21 23:23:57469 ['OS=="win" and target_arch=="ia32"', {
470 'targets': [
471 {
472 'target_name': 'launcher_support64',
473 'type': 'static_library',
474 'include_dirs': [
475 '..',
476 ],
477 'direct_dependent_settings': {
478 'include_dirs': [
479 '..',
480 ],
481 },
482 'defines': [
483 '<@(nacl_win64_defines)',
484 ],
485 'dependencies': [
[email protected]ef1af5c2014-01-09 18:48:05486 '<(DEPTH)/base/base.gyp:base_win64',
[email protected]3a41c8ef2013-01-21 23:23:57487 ],
488 'configurations': {
489 'Common_Base': {
490 'msvs_target_platform': 'x64',
491 },
492 },
493 'sources': [
494 'installer/launcher_support/chrome_launcher_support.cc',
495 'installer/launcher_support/chrome_launcher_support.h',
496 ],
497 },
498 ],
499 }],
[email protected]eaf76722009-07-30 17:42:35500 ['OS=="linux" and branding=="Chrome"', {
[email protected]eaf76722009-07-30 17:42:35501 'variables': {
[email protected]caa95c82009-11-23 22:39:32502 # Always google_chrome since this only applies to branding==Chrome.
[email protected]5c14951a2010-05-24 00:35:46503 'branding_dir': 'app/theme/google_chrome',
[email protected]982df332012-07-04 18:43:36504 'branding_dir_100': 'app/theme/default_100_percent/google_chrome',
[email protected]0db4cb12012-05-17 23:48:56505 'version' : '<!(python <(version_py_path) -f ../chrome/VERSION -t "@MAJOR@.@MINOR@.@BUILD@.@PATCH@")',
506 'revision' : '<!(python ../build/util/lastchange.py --revision-only)',
[email protected]29a7e5d2009-11-04 21:16:19507 'packaging_files_common': [
[email protected]b5cb4e72013-06-05 21:12:37508 'installer/linux/common/apt.include',
509 'installer/linux/common/default-app.template',
510 'installer/linux/common/default-app-block.template',
511 'installer/linux/common/desktop.template',
512 'installer/linux/common/google-chrome/google-chrome.info',
513 'installer/linux/common/installer.include',
514 'installer/linux/common/postinst.include',
515 'installer/linux/common/prerm.include',
516 'installer/linux/common/repo.cron',
517 'installer/linux/common/rpm.include',
518 'installer/linux/common/rpmrepo.cron',
519 'installer/linux/common/symlinks.include',
[email protected]b5cb4e72013-06-05 21:12:37520 'installer/linux/common/variables.include',
521 'installer/linux/common/wrapper',
[email protected]29a7e5d2009-11-04 21:16:19522 ],
523 'packaging_files_deb': [
[email protected]b5cb4e72013-06-05 21:12:37524 'installer/linux/debian/build.sh',
525 'installer/linux/debian/changelog.template',
526 'installer/linux/debian/control.template',
527 'installer/linux/debian/debian.menu',
[email protected]ac04c4aae2013-06-20 22:55:05528 'installer/linux/debian/expected_deps',
[email protected]b5cb4e72013-06-05 21:12:37529 'installer/linux/debian/postinst',
530 'installer/linux/debian/postrm',
531 'installer/linux/debian/prerm',
[email protected]29a7e5d2009-11-04 21:16:19532 ],
533 'packaging_files_rpm': [
[email protected]b5cb4e72013-06-05 21:12:37534 'installer/linux/rpm/build.sh',
535 'installer/linux/rpm/chrome.spec.template',
536 'installer/linux/rpm/expected_deps_i386',
537 'installer/linux/rpm/expected_deps_x86_64',
[email protected]29a7e5d2009-11-04 21:16:19538 ],
[email protected]caa95c82009-11-23 22:39:32539 'packaging_files_binaries': [
540 # TODO(mmoss) Any convenient way to get all the relevant build
541 # files? (e.g. all locales, resources, etc.)
542 '<(PRODUCT_DIR)/chrome',
[email protected]caa95c82009-11-23 22:39:32543 '<(PRODUCT_DIR)/chrome_sandbox',
544 '<(PRODUCT_DIR)/libffmpegsumo.so',
[email protected]added7712011-02-14 02:01:41545 '<(PRODUCT_DIR)/libppGoogleNaClPluginChrome.so',
[email protected]faa38442010-09-03 01:13:04546 '<(PRODUCT_DIR)/xdg-mime',
[email protected]caa95c82009-11-23 22:39:32547 '<(PRODUCT_DIR)/xdg-settings',
548 '<(PRODUCT_DIR)/locales/en-US.pak',
[email protected]867a46422011-09-01 00:55:05549 '<(PRODUCT_DIR)/nacl_helper',
[email protected]6895bf92011-08-17 22:02:43550 '<(PRODUCT_DIR)/nacl_helper_bootstrap',
[email protected]76a0b9d2012-03-15 04:07:11551 '<(PRODUCT_DIR)/PepperFlash/libpepflashplayer.so',
552 '<(PRODUCT_DIR)/PepperFlash/manifest.json',
[email protected]35958422011-09-28 02:03:59553 '<@(default_apps_list_linux_dest)',
[email protected]caa95c82009-11-23 22:39:32554 ],
555 'flock_bash': ['flock', '--', '/tmp/linux_package_lock', 'bash'],
556 'deb_build': '<(PRODUCT_DIR)/installer/debian/build.sh',
557 'rpm_build': '<(PRODUCT_DIR)/installer/rpm/build.sh',
558 'deb_cmd': ['<@(flock_bash)', '<(deb_build)', '-o' '<(PRODUCT_DIR)',
559 '-b', '<(PRODUCT_DIR)', '-a', '<(target_arch)'],
560 'rpm_cmd': ['<@(flock_bash)', '<(rpm_build)', '-o' '<(PRODUCT_DIR)',
561 '-b', '<(PRODUCT_DIR)', '-a', '<(target_arch)'],
562 'conditions': [
563 ['target_arch=="ia32"', {
564 'deb_arch': 'i386',
565 'rpm_arch': 'i386',
[email protected]21e431cc2010-06-04 22:02:30566 'packaging_files_binaries': [
[email protected]93eb46a2011-05-09 18:12:34567 '<(PRODUCT_DIR)/nacl_irt_x86_32.nexe',
[email protected]e61b6d82013-03-01 18:19:58568 '<(PRODUCT_DIR)/libwidevinecdmadapter.so',
569 '<(PRODUCT_DIR)/libwidevinecdm.so',
[email protected]21e431cc2010-06-04 22:02:30570 ],
[email protected]e388bfd2014-01-18 01:44:04571 'packaging_files_common': [
572 '<(DEPTH)/build/linux/bin/eu-strip',
573 ],
[email protected]caa95c82009-11-23 22:39:32574 }],
575 ['target_arch=="x64"', {
576 'deb_arch': 'amd64',
577 'rpm_arch': 'x86_64',
[email protected]93eb46a2011-05-09 18:12:34578 'packaging_files_binaries': [
579 '<(PRODUCT_DIR)/nacl_irt_x86_64.nexe',
[email protected]4ff8a37b2013-02-19 22:42:05580 '<(PRODUCT_DIR)/libwidevinecdmadapter.so',
581 '<(PRODUCT_DIR)/libwidevinecdm.so',
[email protected]93eb46a2011-05-09 18:12:34582 ],
[email protected]e388bfd2014-01-18 01:44:04583 'packaging_files_common': [
584 '<!(which eu-strip)',
585 ],
[email protected]caa95c82009-11-23 22:39:32586 }],
[email protected]1ed709a2010-09-18 00:52:36587 ['target_arch=="arm"', {
588 'deb_arch': 'arm',
589 'rpm_arch': 'arm',
590 }],
[email protected]5e2e4e12010-06-15 04:57:11591 ['internal_pdf', {
592 'packaging_files_binaries': [
593 '<(PRODUCT_DIR)/libpdf.so',
594 ],
595 }],
[email protected]e4aa290b2013-05-01 18:54:19596 ['libpeer_target_type!="static_library"', {
[email protected]29b12f42013-04-10 02:26:39597 'packaging_files_binaries': [
[email protected]e4aa290b2013-05-01 18:54:19598 '<(PRODUCT_DIR)/lib/libpeerconnection.so',
[email protected]29b12f42013-04-10 02:26:39599 ],
600 }],
[email protected]caa95c82009-11-23 22:39:32601 ],
[email protected]eaf76722009-07-30 17:42:35602 },
603 'targets': [
604 {
[email protected]caa95c82009-11-23 22:39:32605 'target_name': 'linux_installer_configs',
[email protected]eaf76722009-07-30 17:42:35606 'type': 'none',
607 # Add these files to the build output so the build archives will be
608 # "hermetic" for packaging. This is only for branding="Chrome" since
609 # we only create packages for official builds.
[email protected]eaf76722009-07-30 17:42:35610 'copies': [
[email protected]eaf76722009-07-30 17:42:35611 {
612 'destination': '<(PRODUCT_DIR)/installer/debian/',
613 'files': [
[email protected]29a7e5d2009-11-04 21:16:19614 '<@(packaging_files_deb)',
[email protected]eaf76722009-07-30 17:42:35615 ]
616 },
617 {
618 'destination': '<(PRODUCT_DIR)/installer/rpm/',
619 'files': [
[email protected]29a7e5d2009-11-04 21:16:19620 '<@(packaging_files_rpm)',
[email protected]eaf76722009-07-30 17:42:35621 ]
622 },
623 {
624 'destination': '<(PRODUCT_DIR)/installer/common/',
625 'files': [
[email protected]29a7e5d2009-11-04 21:16:19626 '<@(packaging_files_common)',
[email protected]eaf76722009-07-30 17:42:35627 ]
628 },
[email protected]eaf76722009-07-30 17:42:35629 # Additional theme resources needed for package building.
630 {
631 'destination': '<(PRODUCT_DIR)/installer/theme/',
632 'files': [
[email protected]982df332012-07-04 18:43:36633 '<(branding_dir_100)/product_logo_16.png',
[email protected]263fcaa2010-02-05 01:31:43634 '<(branding_dir)/product_logo_22.png',
635 '<(branding_dir)/product_logo_24.png',
[email protected]982df332012-07-04 18:43:36636 '<(branding_dir_100)/product_logo_32.png',
[email protected]eaf76722009-07-30 17:42:35637 '<(branding_dir)/product_logo_48.png',
[email protected]8ea24ec2011-08-24 14:06:28638 '<(branding_dir)/product_logo_64.png',
[email protected]263fcaa2010-02-05 01:31:43639 '<(branding_dir)/product_logo_128.png',
[email protected]eaf76722009-07-30 17:42:35640 '<(branding_dir)/product_logo_256.png',
[email protected]7c9109b2009-11-11 19:43:29641 '<(branding_dir)/product_logo_32.xpm',
[email protected]eaf76722009-07-30 17:42:35642 '<(branding_dir)/BRANDING',
643 ],
644 },
645 ],
646 'actions': [
647 {
648 'action_name': 'save_build_info',
649 'inputs': [
650 '<(branding_dir)/BRANDING',
651 '<(version_path)',
[email protected]19f60a52010-02-17 16:49:27652 '<(lastchange_path)',
[email protected]eaf76722009-07-30 17:42:35653 ],
654 'outputs': [
655 '<(PRODUCT_DIR)/installer/version.txt',
656 ],
657 # Just output the default version info variables.
658 'action': [
[email protected]5c14951a2010-05-24 00:35:46659 'python', '<(version_py_path)',
[email protected]eaf76722009-07-30 17:42:35660 '-f', '<(branding_dir)/BRANDING',
661 '-f', '<(version_path)',
662 '-f', '<(lastchange_path)',
663 '-o', '<@(_outputs)'
664 ],
665 },
666 ],
667 },
668 {
[email protected]caa95c82009-11-23 22:39:32669 'target_name': 'linux_packages_all',
670 'suppress_wildcard': 1,
671 'type': 'none',
672 'dependencies': [
673 'linux_packages_unstable',
674 'linux_packages_beta',
675 'linux_packages_stable',
676 ],
677 },
678 {
[email protected]9520e7a2012-10-14 15:22:32679 # 'asan' is a developer, testing-only package, so it shouldn't be
680 # included in the 'linux_packages_all' collection.
681 'target_name': 'linux_packages_asan',
682 'suppress_wildcard': 1,
683 'type': 'none',
684 'dependencies': [
685 'linux_packages_asan_deb',
686 ],
687 # ChromeOS doesn't care about RPM packages.
688 'conditions': [
689 ['chromeos==0', {
690 'dependencies': [
691 'linux_packages_asan_rpm',
692 ],
693 }],
694 ],
695 },
696 {
[email protected]caa95c82009-11-23 22:39:32697 # 'trunk' is a developer, testing-only package, so it shouldn't be
698 # included in the 'linux_packages_all' collection.
699 'target_name': 'linux_packages_trunk',
700 'suppress_wildcard': 1,
701 'type': 'none',
702 'dependencies': [
703 'linux_packages_trunk_deb',
704 ],
705 # ChromeOS doesn't care about RPM packages.
706 'conditions': [
[email protected]06c756182010-04-27 18:31:31707 ['chromeos==0', {
[email protected]caa95c82009-11-23 22:39:32708 'dependencies': [
709 'linux_packages_trunk_rpm',
710 ],
711 }],
712 ],
713 },
714 {
715 'target_name': 'linux_packages_unstable',
716 'suppress_wildcard': 1,
717 'type': 'none',
718 'dependencies': [
719 'linux_packages_unstable_deb',
720 ],
721 # ChromeOS doesn't care about RPM packages.
722 'conditions': [
[email protected]06c756182010-04-27 18:31:31723 ['chromeos==0', {
[email protected]caa95c82009-11-23 22:39:32724 'dependencies': [
725 'linux_packages_unstable_rpm',
726 ],
727 }],
728 ],
729 },
730 {
731 'target_name': 'linux_packages_beta',
732 'suppress_wildcard': 1,
733 'type': 'none',
734 'dependencies': [
735 'linux_packages_beta_deb',
736 ],
737 # ChromeOS doesn't care about RPM packages.
738 'conditions': [
[email protected]06c756182010-04-27 18:31:31739 ['chromeos==0', {
[email protected]caa95c82009-11-23 22:39:32740 'dependencies': [
741 'linux_packages_beta_rpm',
742 ],
743 }],
744 ],
745 },
746 {
747 'target_name': 'linux_packages_stable',
748 'suppress_wildcard': 1,
749 'type': 'none',
750 'dependencies': [
751 'linux_packages_stable_deb',
752 ],
753 # ChromeOS doesn't care about RPM packages.
754 'conditions': [
[email protected]06c756182010-04-27 18:31:31755 ['chromeos==0', {
[email protected]caa95c82009-11-23 22:39:32756 'dependencies': [
757 'linux_packages_stable_rpm',
758 ],
759 }],
760 ],
761 },
762 # TODO(mmoss) gyp looping construct would be handy here ...
763 # These package actions are the same except for the 'channel' variable.
764 {
[email protected]9520e7a2012-10-14 15:22:32765 'target_name': 'linux_packages_asan_deb',
766 'suppress_wildcard': 1,
767 'type': 'none',
768 'dependencies': [
769 'chrome',
770 'linux_installer_configs',
771 ],
772 'actions': [
773 {
774 'variables': {
775 'channel': 'asan',
776 },
777 'action_name': 'deb_packages_<(channel)',
778 'process_outputs_as_sources': 1,
779 'inputs': [
780 '<(deb_build)',
781 '<@(packaging_files_binaries)',
782 '<@(packaging_files_common)',
783 '<@(packaging_files_deb)',
784 ],
785 'outputs': [
[email protected]5c630f52013-06-25 23:30:01786 '<(PRODUCT_DIR)/google-chrome-<(channel)_<(version)-1_<(deb_arch).deb',
[email protected]9520e7a2012-10-14 15:22:32787 ],
788 'action': [ '<@(deb_cmd)', '-c', '<(channel)', ],
789 },
790 ],
791 },
792 {
[email protected]caa95c82009-11-23 22:39:32793 'target_name': 'linux_packages_trunk_deb',
[email protected]eaf76722009-07-30 17:42:35794 'suppress_wildcard': 1,
795 'type': 'none',
796 'dependencies': [
[email protected]5c14951a2010-05-24 00:35:46797 'chrome',
[email protected]caa95c82009-11-23 22:39:32798 'linux_installer_configs',
[email protected]eaf76722009-07-30 17:42:35799 ],
[email protected]eaf76722009-07-30 17:42:35800 'actions': [
[email protected]caa95c82009-11-23 22:39:32801 {
802 'variables': {
803 'channel': 'trunk',
804 },
805 'action_name': 'deb_packages_<(channel)',
806 'process_outputs_as_sources': 1,
807 'inputs': [
808 '<(deb_build)',
809 '<@(packaging_files_binaries)',
810 '<@(packaging_files_common)',
811 '<@(packaging_files_deb)',
812 ],
813 'outputs': [
[email protected]5c630f52013-06-25 23:30:01814 '<(PRODUCT_DIR)/google-chrome-<(channel)_<(version)-1_<(deb_arch).deb',
[email protected]caa95c82009-11-23 22:39:32815 ],
816 'action': [ '<@(deb_cmd)', '-c', '<(channel)', ],
817 },
818 ],
819 },
820 {
821 'target_name': 'linux_packages_unstable_deb',
822 'suppress_wildcard': 1,
823 'type': 'none',
824 'dependencies': [
[email protected]5c14951a2010-05-24 00:35:46825 'chrome',
[email protected]caa95c82009-11-23 22:39:32826 'linux_installer_configs',
827 ],
828 'actions': [
[email protected]eaf76722009-07-30 17:42:35829 {
[email protected]9d0bd9c42009-09-01 20:13:00830 'variables': {
831 'channel': 'unstable',
832 },
833 'action_name': 'deb_packages_<(channel)',
[email protected]eaf76722009-07-30 17:42:35834 'process_outputs_as_sources': 1,
835 'inputs': [
[email protected]9d0bd9c42009-09-01 20:13:00836 '<(deb_build)',
[email protected]caa95c82009-11-23 22:39:32837 '<@(packaging_files_binaries)',
[email protected]29a7e5d2009-11-04 21:16:19838 '<@(packaging_files_common)',
839 '<@(packaging_files_deb)',
[email protected]9d0bd9c42009-09-01 20:13:00840 ],
841 'outputs': [
[email protected]5c630f52013-06-25 23:30:01842 '<(PRODUCT_DIR)/google-chrome-<(channel)_<(version)-1_<(deb_arch).deb',
[email protected]9d0bd9c42009-09-01 20:13:00843 ],
844 'action': [ '<@(deb_cmd)', '-c', '<(channel)', ],
[email protected]eaf76722009-07-30 17:42:35845 },
[email protected]0faab512009-08-25 00:12:29846 ],
[email protected]caa95c82009-11-23 22:39:32847 },
848 {
849 'target_name': 'linux_packages_beta_deb',
850 'suppress_wildcard': 1,
851 'type': 'none',
852 'dependencies': [
[email protected]5c14951a2010-05-24 00:35:46853 'chrome',
[email protected]caa95c82009-11-23 22:39:32854 'linux_installer_configs',
855 ],
856 'actions': [
857 {
858 'variables': {
859 'channel': 'beta',
860 },
861 'action_name': 'deb_packages_<(channel)',
862 'process_outputs_as_sources': 1,
863 'inputs': [
864 '<(deb_build)',
865 '<@(packaging_files_binaries)',
866 '<@(packaging_files_common)',
867 '<@(packaging_files_deb)',
[email protected]eaf76722009-07-30 17:42:35868 ],
[email protected]caa95c82009-11-23 22:39:32869 'outputs': [
[email protected]5c630f52013-06-25 23:30:01870 '<(PRODUCT_DIR)/google-chrome-<(channel)_<(version)-1_<(deb_arch).deb',
[email protected]caa95c82009-11-23 22:39:32871 ],
872 'action': [ '<@(deb_cmd)', '-c', '<(channel)', ],
873 },
874 ],
875 },
876 {
877 'target_name': 'linux_packages_stable_deb',
878 'suppress_wildcard': 1,
879 'type': 'none',
880 'dependencies': [
[email protected]5c14951a2010-05-24 00:35:46881 'chrome',
[email protected]caa95c82009-11-23 22:39:32882 'linux_installer_configs',
883 ],
884 'actions': [
885 {
886 'variables': {
887 'channel': 'stable',
888 },
889 'action_name': 'deb_packages_<(channel)',
890 'process_outputs_as_sources': 1,
891 'inputs': [
892 '<(deb_build)',
893 '<@(packaging_files_binaries)',
894 '<@(packaging_files_common)',
895 '<@(packaging_files_deb)',
896 ],
897 'outputs': [
[email protected]5c630f52013-06-25 23:30:01898 '<(PRODUCT_DIR)/google-chrome-<(channel)_<(version)-1_<(deb_arch).deb',
[email protected]caa95c82009-11-23 22:39:32899 ],
900 'action': [ '<@(deb_cmd)', '-c', '<(channel)', ],
901 },
902 ],
903 },
904 {
[email protected]9520e7a2012-10-14 15:22:32905 'target_name': 'linux_packages_asan_rpm',
906 'suppress_wildcard': 1,
907 'type': 'none',
908 'dependencies': [
909 'chrome',
910 'linux_installer_configs',
911 ],
912 'actions': [
913 {
914 'variables': {
915 'channel': 'asan',
916 },
917 'action_name': 'rpm_packages_<(channel)',
918 'process_outputs_as_sources': 1,
919 'inputs': [
920 '<(rpm_build)',
921 '<(PRODUCT_DIR)/installer/rpm/chrome.spec.template',
922 '<@(packaging_files_binaries)',
923 '<@(packaging_files_common)',
924 '<@(packaging_files_rpm)',
925 ],
926 'outputs': [
[email protected]5c630f52013-06-25 23:30:01927 '<(PRODUCT_DIR)/google-chrome-<(channel)-<(version)-1.<(rpm_arch).rpm',
[email protected]9520e7a2012-10-14 15:22:32928 ],
929 'action': [ '<@(rpm_cmd)', '-c', '<(channel)', ],
930 },
931 ],
932 },
933 {
[email protected]caa95c82009-11-23 22:39:32934 'target_name': 'linux_packages_trunk_rpm',
935 'suppress_wildcard': 1,
936 'type': 'none',
937 'dependencies': [
[email protected]5c14951a2010-05-24 00:35:46938 'chrome',
[email protected]caa95c82009-11-23 22:39:32939 'linux_installer_configs',
940 ],
941 'actions': [
942 {
943 'variables': {
944 'channel': 'trunk',
945 },
946 'action_name': 'rpm_packages_<(channel)',
947 'process_outputs_as_sources': 1,
948 'inputs': [
949 '<(rpm_build)',
950 '<(PRODUCT_DIR)/installer/rpm/chrome.spec.template',
951 '<@(packaging_files_binaries)',
952 '<@(packaging_files_common)',
953 '<@(packaging_files_rpm)',
954 ],
955 'outputs': [
[email protected]5c630f52013-06-25 23:30:01956 '<(PRODUCT_DIR)/google-chrome-<(channel)-<(version)-1.<(rpm_arch).rpm',
[email protected]caa95c82009-11-23 22:39:32957 ],
958 'action': [ '<@(rpm_cmd)', '-c', '<(channel)', ],
959 },
960 ],
961 },
962 {
963 'target_name': 'linux_packages_unstable_rpm',
964 'suppress_wildcard': 1,
965 'type': 'none',
966 'dependencies': [
[email protected]5c14951a2010-05-24 00:35:46967 'chrome',
[email protected]caa95c82009-11-23 22:39:32968 'linux_installer_configs',
969 ],
970 'actions': [
971 {
972 'variables': {
973 'channel': 'unstable',
974 },
975 'action_name': 'rpm_packages_<(channel)',
976 'process_outputs_as_sources': 1,
977 'inputs': [
978 '<(rpm_build)',
979 '<(PRODUCT_DIR)/installer/rpm/chrome.spec.template',
980 '<@(packaging_files_binaries)',
981 '<@(packaging_files_common)',
982 '<@(packaging_files_rpm)',
983 ],
984 'outputs': [
[email protected]5c630f52013-06-25 23:30:01985 '<(PRODUCT_DIR)/google-chrome-<(channel)-<(version)-1.<(rpm_arch).rpm',
[email protected]caa95c82009-11-23 22:39:32986 ],
987 'action': [ '<@(rpm_cmd)', '-c', '<(channel)', ],
988 },
989 ],
990 },
991 {
992 'target_name': 'linux_packages_beta_rpm',
993 'suppress_wildcard': 1,
994 'type': 'none',
995 'dependencies': [
[email protected]5c14951a2010-05-24 00:35:46996 'chrome',
[email protected]caa95c82009-11-23 22:39:32997 'linux_installer_configs',
998 ],
999 'actions': [
1000 {
1001 'variables': {
1002 'channel': 'beta',
1003 },
1004 'action_name': 'rpm_packages_<(channel)',
1005 'process_outputs_as_sources': 1,
1006 'inputs': [
1007 '<(rpm_build)',
1008 '<(PRODUCT_DIR)/installer/rpm/chrome.spec.template',
1009 '<@(packaging_files_binaries)',
1010 '<@(packaging_files_common)',
1011 '<@(packaging_files_rpm)',
1012 ],
1013 'outputs': [
[email protected]5c630f52013-06-25 23:30:011014 '<(PRODUCT_DIR)/google-chrome-<(channel)-<(version)-1.<(rpm_arch).rpm',
[email protected]caa95c82009-11-23 22:39:321015 ],
1016 'action': [ '<@(rpm_cmd)', '-c', '<(channel)', ],
1017 },
1018 ],
1019 },
1020 {
1021 'target_name': 'linux_packages_stable_rpm',
1022 'suppress_wildcard': 1,
1023 'type': 'none',
1024 'dependencies': [
[email protected]5c14951a2010-05-24 00:35:461025 'chrome',
[email protected]caa95c82009-11-23 22:39:321026 'linux_installer_configs',
1027 ],
1028 'actions': [
1029 {
1030 'variables': {
1031 'channel': 'stable',
1032 },
1033 'action_name': 'rpm_packages_<(channel)',
1034 'process_outputs_as_sources': 1,
1035 'inputs': [
1036 '<(rpm_build)',
1037 '<(PRODUCT_DIR)/installer/rpm/chrome.spec.template',
1038 '<@(packaging_files_binaries)',
1039 '<@(packaging_files_common)',
1040 '<@(packaging_files_rpm)',
1041 ],
1042 'outputs': [
[email protected]5c630f52013-06-25 23:30:011043 '<(PRODUCT_DIR)/google-chrome-<(channel)-<(version)-1.<(rpm_arch).rpm',
[email protected]caa95c82009-11-23 22:39:321044 ],
1045 'action': [ '<@(rpm_cmd)', '-c', '<(channel)', ],
1046 },
[email protected]eaf76722009-07-30 17:42:351047 ],
1048 },
1049 ],
1050 }],
[email protected]66caf562010-06-02 16:54:031051 ['OS=="mac"', {
1052 'variables': {
1053 'mac_packaging_dir':
1054 '<(PRODUCT_DIR)/<(mac_product_name) Packaging',
1055 # <(PRODUCT_DIR) expands to $(BUILT_PRODUCTS_DIR), which doesn't
1056 # work properly in a shell script, where ${BUILT_PRODUCTS_DIR} is
1057 # needed.
1058 'mac_packaging_sh_dir':
1059 '${BUILT_PRODUCTS_DIR}/<(mac_product_name) Packaging',
1060 }, # variables
1061 'targets': [
1062 {
1063 'target_name': 'installer_packaging',
1064 'type': 'none',
[email protected]c3d636d2010-06-11 19:39:281065 'dependencies': [
1066 'installer/mac/third_party/bsdiff/goobsdiff.gyp:*',
[email protected]ad5fe54d2010-06-22 21:10:571067 'installer/mac/third_party/xz/xz.gyp:*',
[email protected]c3d636d2010-06-11 19:39:281068 ],
[email protected]66caf562010-06-02 16:54:031069 'conditions': [
1070 ['buildtype=="Official"', {
1071 'actions': [
1072 {
1073 # Create sign.sh, the script that the packaging system will
1074 # use to sign the .app bundle.
1075 'action_name': 'Make sign.sh',
1076 'variables': {
[email protected]78ecf43db2010-06-11 17:46:301077 'make_signers_sh_path': 'installer/mac/make_signers.sh',
[email protected]66caf562010-06-02 16:54:031078 },
1079 'inputs': [
[email protected]78ecf43db2010-06-11 17:46:301080 '<(make_signers_sh_path)',
1081 'installer/mac/sign_app.sh.in',
1082 'installer/mac/sign_versioned_dir.sh.in',
1083 'installer/mac/app_resource_rules.plist.in',
[email protected]66caf562010-06-02 16:54:031084 '<(version_path)',
1085 ],
1086 'outputs': [
[email protected]78ecf43db2010-06-11 17:46:301087 '<(mac_packaging_dir)/sign_app.sh',
1088 '<(mac_packaging_dir)/sign_versioned_dir.sh',
[email protected]66caf562010-06-02 16:54:031089 '<(mac_packaging_dir)/app_resource_rules.plist',
1090 ],
1091 'action': [
[email protected]78ecf43db2010-06-11 17:46:301092 '<(make_signers_sh_path)',
[email protected]66caf562010-06-02 16:54:031093 '<(mac_packaging_sh_dir)',
1094 '<(mac_product_name)',
1095 '<(version_full)',
1096 ],
1097 },
1098 ], # actions
1099 }], # buildtype=="Official"
[email protected]77fd1b02012-06-12 16:24:331100 ['branding=="Chrome" and buildtype=="Official"', {
1101 'actions': [
1102 {
[email protected]08c31172012-07-20 19:29:501103 # copy_keychain_reauthorize.sh explains why this isn't in a
1104 # 'copies' block, but briefly: this is a prebuilt signed
1105 # binary component that relies on a correct signature to
1106 # function properly, and a normal 'copies' block sadly makes
1107 # a trivial modification to the file such that its signature
1108 # is no longer valid.
[email protected]77fd1b02012-06-12 16:24:331109 'action_name': 'Copy keychain_reauthorize',
1110 'variables': {
1111 'keychain_reauthorize_path': 'tools/build/mac/copy_keychain_reauthorize.sh',
1112 'keychain_reauthorize_normal_path': 'installer/mac/internal/keychain_reauthorize/com.google.Chrome',
1113 'keychain_reauthorize_canary_path': 'installer/mac/internal/keychain_reauthorize/com.google.Chrome.canary',
1114 'keychain_reauthorize_output_dir': '<(mac_packaging_dir)/.keychain_reauthorize',
1115 },
1116 'inputs': [
1117 '<(keychain_reauthorize_path)',
1118 '<(keychain_reauthorize_normal_path)',
1119 '<(keychain_reauthorize_canary_path)',
1120 ],
1121 'outputs': [
1122 '<(keychain_reauthorize_output_dir)/com.google.Chrome',
1123 '<(keychain_reauthorize_output_dir)/com.google.Chrome.canary',
1124 ],
1125 'action': [
1126 '<(keychain_reauthorize_path)',
1127 '<(keychain_reauthorize_output_dir)',
1128 '<(keychain_reauthorize_normal_path)',
1129 '<(keychain_reauthorize_canary_path)',
1130 ],
1131 },
1132 ], # actions
1133 }], # branding=="Chrome" and buildtype=="Official"
[email protected]66caf562010-06-02 16:54:031134 ], # conditions
1135 'copies': [
1136 {
[email protected]c3d636d2010-06-11 19:39:281137 # Put the files where the packaging system will find them. The
1138 # packager will use these when building the "full installer"
1139 # disk images and delta/differential update disk images.
[email protected]66caf562010-06-02 16:54:031140 'destination': '<(mac_packaging_dir)',
1141 'files': [
[email protected]c3d636d2010-06-11 19:39:281142 '<(PRODUCT_DIR)/goobsdiff',
1143 '<(PRODUCT_DIR)/goobspatch',
[email protected]ad5fe54d2010-06-22 21:10:571144 '<(PRODUCT_DIR)/liblzma_decompress.dylib',
1145 '<(PRODUCT_DIR)/xz',
1146 '<(PRODUCT_DIR)/xzdec',
[email protected]c3d636d2010-06-11 19:39:281147 'installer/mac/dirdiffer.sh',
1148 'installer/mac/dirpatcher.sh',
[email protected]be4f7a62010-06-11 21:06:571149 'installer/mac/dmgdiffer.sh',
[email protected]0b3c9772010-06-11 17:45:231150 'installer/mac/pkg-dmg',
[email protected]66caf562010-06-02 16:54:031151 ],
1152 'conditions': [
1153 ['mac_keystone==1', {
1154 'files': [
1155 'installer/mac/keystone_install.sh',
1156 ],
1157 }], # mac_keystone
1158 ['branding=="Chrome" and buildtype=="Official"', {
1159 'files': [
[email protected]de2bd3a2011-04-19 03:21:321160 'app/theme/google_chrome/app_canary.icns',
[email protected]76fda9b2011-04-28 21:19:441161 'app/theme/google_chrome/document_canary.icns',
[email protected]22bed332011-04-19 21:51:161162 'installer/mac/internal/chrome_canary_dmg_dsstore',
[email protected]60e399f2011-04-20 00:55:101163 'installer/mac/internal/chrome_canary_dmg_icon.icns',
[email protected]66caf562010-06-02 16:54:031164 'installer/mac/internal/chrome_dmg_background.png',
1165 'installer/mac/internal/chrome_dmg_dsstore',
1166 'installer/mac/internal/chrome_dmg_icon.icns',
1167 'installer/mac/internal/generate_dmgs',
1168 ],
1169 }], # branding=="Chrome" and buildtype=="Official"
1170 ], # conditions
1171 },
[email protected]17e63872012-06-07 03:51:561172 ], # copies
[email protected]66caf562010-06-02 16:54:031173 }, # target: installer_packaging
[email protected]e1972bd2012-05-16 20:43:351174 {
[email protected]0db4cb12012-05-17 23:48:561175 'target_name': 'gcapi_lib',
1176 'type': 'static_library',
1177 'include_dirs': [
1178 '..',
1179 ],
1180 'sources': [
1181 'installer/gcapi_mac/gcapi.h',
1182 'installer/gcapi_mac/gcapi.mm',
1183 ],
1184 'link_settings': {
1185 'libraries': [
1186 '$(SDKROOT)/System/Library/Frameworks/Cocoa.framework',
1187 ],
1188 },
1189 'xcode_settings': {
[email protected]9125a492012-05-25 21:13:471190 'ARCHS': [ 'i386', 'x86_64' ],
[email protected]0db4cb12012-05-17 23:48:561191 'MACOSX_DEPLOYMENT_TARGET': '10.4',
1192 'GCC_ENABLE_OBJC_GC': 'supported',
1193 },
1194 },
1195 {
1196 'target_name': 'gcapi_example',
1197 'type': 'executable',
[email protected]89886fa32012-10-08 23:46:331198 'dependencies': [
[email protected]0db4cb12012-05-17 23:48:561199 'gcapi_lib',
1200 ],
1201 'include_dirs': [
1202 '..',
1203 ],
1204 'sources': [
1205 'installer/gcapi_mac/gcapi_example_client.mm',
1206 ],
1207 },
[email protected]66caf562010-06-02 16:54:031208 ], # targets
1209 }], # OS=="mac"
[email protected]176e0912009-05-28 00:10:371210 [ 'branding == "Chrome"', {
1211 'variables': {
[email protected]5c14951a2010-05-24 00:35:461212 'branding_dir': 'app/theme/google_chrome',
[email protected]982df332012-07-04 18:43:361213 'branding_dir_100': 'app/theme/default_100_percent/google_chrome',
[email protected]176e0912009-05-28 00:10:371214 },
1215 }, { # else branding!="Chrome"
1216 'variables': {
[email protected]5c14951a2010-05-24 00:35:461217 'branding_dir': 'app/theme/chromium',
[email protected]982df332012-07-04 18:43:361218 'branding_dir_100': 'app/theme/default_100_percent/chromium',
[email protected]176e0912009-05-28 00:10:371219 },
1220 }],
[email protected]bac9380a2009-05-15 21:55:061221 ],
1222}