1 # Copyright (c) 2012 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.
7 'lastchange_path': '../build/util/LASTCHANGE',
8 # 'branding_dir' is set in the 'conditions' section at the bottom.
14 'target_name': 'gcapi_dll',
15 'type': 'loadable_module',
23 'installer/gcapi/gcapi.def',
24 'installer/gcapi/gcapi_dll.cc',
28 'target_name': 'gcapi_lib',
29 'type': 'static_library',
32 '../base/base.gyp:base',
33 '../chrome/chrome.gyp:launcher_support',
34 '../google_update/google_update.gyp:google_update',
40 'installer/gcapi/gcapi.cc',
41 'installer/gcapi/gcapi.h',
42 'installer/gcapi/gcapi_omaha_experiment.cc',
43 'installer/gcapi/gcapi_omaha_experiment.h',
44 'installer/gcapi/gcapi_reactivation.cc',
45 'installer/gcapi/gcapi_reactivation.h',
49 'target_name': 'gcapi_test',
56 '../base/base.gyp:base',
57 '../base/base.gyp:test_support_base',
58 '../testing/gtest.gyp:gtest',
64 'installer/gcapi/gcapi_last_run_test.cc',
65 'installer/gcapi/gcapi_reactivation_test.cc',
66 'installer/gcapi/gcapi_test.cc',
67 'installer/gcapi/gcapi_test.rc',
68 'installer/gcapi/resource.h',
72 'target_name': 'installer_util_unittests',
76 'installer_util_strings',
77 'installer/upgrade_test.gyp:alternate_version_generator_lib',
78 '../base/base.gyp:base',
79 '../base/base.gyp:base_i18n',
80 '../base/base.gyp:test_support_base',
81 '../build/temp_gyp/googleurl.gyp:googleurl',
82 '../chrome/chrome.gyp:chrome_version_resources',
83 '../content/content.gyp:content_common',
84 '../testing/gmock.gyp:gmock',
85 '../testing/gtest.gyp:gtest',
91 'installer/setup/compat_checks_unittest.cc',
92 'installer/setup/setup_constants.cc',
93 'installer/util/callback_work_item_unittest.cc',
94 'installer/util/channel_info_unittest.cc',
95 'installer/util/copy_reg_key_work_item_unittest.cc',
96 'installer/util/copy_tree_work_item_unittest.cc',
97 'installer/util/create_dir_work_item_unittest.cc',
98 'installer/util/create_reg_key_work_item_unittest.cc',
99 'installer/util/delete_after_reboot_helper_unittest.cc',
100 'installer/util/delete_reg_key_work_item_unittest.cc',
101 'installer/util/delete_reg_value_work_item_unittest.cc',
102 'installer/util/delete_tree_work_item_unittest.cc',
103 'installer/util/duplicate_tree_detector_unittest.cc',
104 'installer/util/fake_installation_state.h',
105 'installer/util/fake_product_state.h',
106 'installer/util/google_chrome_distribution_unittest.cc',
107 'installer/util/google_update_settings_unittest.cc',
108 'installer/util/install_util_unittest.cc',
109 'installer/util/installation_validation_helper.cc',
110 'installer/util/installation_validation_helper.h',
111 'installer/util/installation_validator_unittest.cc',
112 'installer/util/installer_state_unittest.cc',
113 'installer/util/installer_util_test_common.cc',
114 'installer/util/installer_util_test_common.h',
115 'installer/util/installer_util_unittests.rc',
116 'installer/util/installer_util_unittests_resource.h',
117 'installer/util/language_selector_unittest.cc',
118 'installer/util/logging_installer_unittest.cc',
119 'installer/util/lzma_util_unittest.cc',
120 'installer/util/master_preferences_unittest.cc',
121 'installer/util/move_tree_work_item_unittest.cc',
122 'installer/util/product_state_unittest.cc',
123 'installer/util/product_unittest.cc',
124 'installer/util/product_unittest.h',
125 'installer/util/registry_key_backup_unittest.cc',
126 'installer/util/registry_test_data.cc',
127 'installer/util/registry_test_data.h',
128 'installer/util/run_all_unittests.cc',
129 'installer/util/self_cleaning_temp_dir_unittest.cc',
130 'installer/util/set_reg_value_work_item_unittest.cc',
131 'installer/util/shell_util_unittest.cc',
132 'installer/util/wmi_unittest.cc',
133 'installer/util/work_item_list_unittest.cc',
134 '<(SHARED_INTERMEDIATE_DIR)/chrome_version/other_version.rc',
138 'AdditionalManifestFiles': '$(ProjectDir)\\installer\\mini_installer\\mini_installer.exe.manifest',
143 'target_name': 'installer_util_strings',
147 'rule_name': 'installer_util_strings',
150 'create_string_rc_py' : 'installer/util/prebuild/create_string_rc.py',
153 '<(create_string_rc_py)',
154 '<(RULE_INPUT_PATH)',
157 # Don't use <(RULE_INPUT_ROOT) to create the output file
158 # name, because the base name of the input
159 # (generated_resources.grd) doesn't match the generated file
160 # (installer_util_strings.h).
161 '<(SHARED_INTERMEDIATE_DIR)/installer_util_strings/installer_util_strings.h',
162 '<(SHARED_INTERMEDIATE_DIR)/installer_util_strings/installer_util_strings.rc',
165 '<(create_string_rc_py)',
166 '<(SHARED_INTERMEDIATE_DIR)/installer_util_strings',
168 'message': 'Generating resources from <(RULE_INPUT_PATH)',
172 'app/chromium_strings.grd',
174 'direct_dependent_settings': {
176 '<(SHARED_INTERMEDIATE_DIR)/installer_util_strings',
181 'target_name': 'launcher_support',
182 'type': 'static_library',
186 'direct_dependent_settings': {
192 '<(DEPTH)/base/base.gyp:base',
195 'installer/launcher_support/chrome_launcher_support.cc',
196 'installer/launcher_support/chrome_launcher_support.h',
200 'target_name': 'launcher_support64',
201 'type': 'static_library',
205 'direct_dependent_settings': {
211 '<@(nacl_win64_defines)',
214 '<(DEPTH)/base/base.gyp:base_nacl_win64',
218 'msvs_target_platform': 'x64',
222 'installer/launcher_support/chrome_launcher_support.cc',
223 'installer/launcher_support/chrome_launcher_support.h',
227 'target_name': 'mini_installer_test',
228 'type': 'executable',
231 'installer_util_strings',
232 '../base/base.gyp:base',
233 '../base/base.gyp:base_i18n',
234 '../base/base.gyp:test_support_base',
235 '../chrome/chrome.gyp:test_support_common',
236 '../testing/gtest.gyp:gtest',
242 '<(SHARED_INTERMEDIATE_DIR)/installer_util_strings/installer_util_strings.rc',
243 'installer/util/installation_validation_helper.cc',
244 'installer/util/installation_validation_helper.h',
245 'test/mini_installer_test/installer_path_provider.cc',
246 'test/mini_installer_test/installer_path_provider.h',
247 'test/mini_installer_test/installer_test_util.cc',
248 'test/mini_installer_test/installer_test_util.h',
249 'test/mini_installer_test/mini_installer_test_constants.cc',
250 'test/mini_installer_test/mini_installer_test_constants.h',
251 'test/mini_installer_test/run_all_unittests.cc',
252 'test/mini_installer_test/switch_builder.cc',
253 'test/mini_installer_test/switch_builder.h',
254 'test/mini_installer_test/test.cc',
258 'AdditionalManifestFiles': '$(ProjectDir)\\installer\\mini_installer\\mini_installer.exe.manifest',
263 'target_name': 'setup',
264 'type': 'executable',
267 'installer_util_strings',
268 '../base/base.gyp:base',
269 '../breakpad/breakpad.gyp:breakpad_handler',
270 '../build/temp_gyp/googleurl.gyp:googleurl',
271 '../chrome/common_constants.gyp:common_constants',
272 '../chrome_frame/chrome_frame.gyp:chrome_tab_idl',
273 '../chrome_frame/chrome_frame.gyp:npchrome_frame',
274 '../rlz/rlz.gyp:rlz_lib',
275 '../third_party/zlib/zlib.gyp:zlib',
279 '<(INTERMEDIATE_DIR)',
280 '<(SHARED_INTERMEDIATE_DIR)/setup',
282 'direct_dependent_settings': {
284 '<(SHARED_INTERMEDIATE_DIR)/setup',
288 'installer/mini_installer/chrome.release',
289 'installer/setup/chrome_frame_quick_enable.cc',
290 'installer/setup/chrome_frame_quick_enable.h',
291 'installer/setup/chrome_frame_ready_mode.cc',
292 'installer/setup/chrome_frame_ready_mode.h',
293 'installer/setup/install.cc',
294 'installer/setup/install.h',
295 'installer/setup/install_worker.cc',
296 'installer/setup/install_worker.h',
297 'installer/setup/setup_main.cc',
298 'installer/setup/setup.ico',
299 'installer/setup/setup.rc',
300 'installer/setup/setup_constants.cc',
301 'installer/setup/setup_constants.h',
302 'installer/setup/setup_exe_version.rc.version',
303 'installer/setup/setup_resource.h',
304 'installer/setup/setup_util.cc',
305 'installer/setup/setup_util.h',
306 'installer/setup/uninstall.cc',
307 'installer/setup/uninstall.h',
311 'SubSystem': '2', # Set /SUBSYSTEM:WINDOWS
314 'AdditionalManifestFiles': '$(ProjectDir)\\installer\\setup\\setup.exe.manifest',
319 'rule_name': 'setup_version',
320 'extension': 'version',
322 'version_py_path': '../chrome/tools/build/version.py',
323 'template_input_path': 'installer/setup/setup_exe_version.rc.version',
326 '<(template_input_path)',
328 '<(lastchange_path)',
329 '<(branding_dir)/BRANDING',
332 '<(SHARED_INTERMEDIATE_DIR)/setup/setup_exe_version.rc',
335 'python', '<(version_py_path)',
336 '-f', '<(version_path)',
337 '-f', '<(lastchange_path)',
338 '-f', '<(branding_dir)/BRANDING',
339 '<(template_input_path)',
342 'process_outputs_as_sources': 1,
343 'message': 'Generating version information'
346 'rule_name': 'server_dlls',
347 'extension': 'release',
349 'scan_server_dlls_py' : 'tools/build/win/scan_server_dlls.py',
350 'template_file': 'installer/mini_installer/chrome.release',
353 '<(scan_server_dlls_py)',
357 '<(INTERMEDIATE_DIR)/registered_dlls.h',
361 '<(scan_server_dlls_py)',
362 '--output_dir=<(PRODUCT_DIR)',
363 '--input_file=<(RULE_INPUT_PATH)',
364 '--header_output_dir=<(INTERMEDIATE_DIR)',
365 # TODO(sgk): may just use environment variables
366 #'--distribution=$(CHROMIUM_BUILD)',
367 '--distribution=_google_chrome',
372 ['component == "shared_library"', {
375 'EmbedManifest': 'false',
379 # TODO(mark): <(branding_dir) should be defined by the
380 # global condition block at the bottom of the file, but
381 # this doesn't work due to the following issue:
383 # http://code.google.com/p/gyp/issues/detail?id=22
385 # Remove this block once the above issue is fixed.
386 [ 'branding == "Chrome"', {
388 'branding_dir': 'app/theme/google_chrome',
389 'branding_dir_100': 'app/theme/default_100_percent/google_chrome',
391 }, { # else branding!="Chrome"
393 'branding_dir': 'app/theme/chromium',
394 'branding_dir_100': 'app/theme/default_100_percent/chromium',
399 '../chrome_frame/chrome_frame.gyp:chrome_tab_idl',
400 '../chrome_frame/chrome_frame.gyp:npchrome_frame',
409 'target_name': 'setup_unittests',
410 'type': 'executable',
413 'installer_util_strings',
414 '../base/base.gyp:base',
415 '../base/base.gyp:base_i18n',
416 '../base/base.gyp:test_support_base',
417 '../build/temp_gyp/googleurl.gyp:googleurl',
418 '../chrome_frame/chrome_frame.gyp:chrome_tab_idl',
419 '../testing/gmock.gyp:gmock',
420 '../testing/gtest.gyp:gtest',
424 '<(INTERMEDIATE_DIR)',
426 # TODO(robertshield): Move the items marked with "Move to lib"
427 # below into a separate lib and then link both setup.exe and
428 # setup_unittests.exe against that.
430 'installer/mini_installer/chrome.release', # Move to lib
431 'installer/mini_installer/appid.h',
432 'installer/mini_installer/chrome_appid.cc',
433 'installer/mini_installer/configuration.cc',
434 'installer/mini_installer/configuration.h',
435 'installer/mini_installer/configuration_test.cc',
436 'installer/mini_installer/decompress.cc',
437 'installer/mini_installer/decompress.h',
438 'installer/mini_installer/decompress_test.cc',
439 'installer/mini_installer/mini_string.cc',
440 'installer/mini_installer/mini_string.h',
441 'installer/mini_installer/mini_string_test.cc',
442 'installer/setup/install.cc', # Move to lib
443 'installer/setup/install.h', # Move to lib
444 'installer/setup/install_unittest.cc',
445 'installer/setup/install_worker.cc', # Move to lib
446 'installer/setup/install_worker.h', # Move to lib
447 'installer/setup/install_worker_unittest.cc',
448 'installer/setup/run_all_unittests.cc',
449 'installer/setup/setup_constants.cc', # Move to lib
450 'installer/setup/setup_constants.h', # Move to lib
451 'installer/setup/setup_unittests.rc',
452 'installer/setup/setup_unittests_resource.h',
453 'installer/setup/setup_util.cc',
454 'installer/setup/setup_util_unittest.cc',
458 'rule_name': 'server_dlls', # Move to lib
459 'extension': 'release',
461 'scan_server_dlls_py' : 'tools/build/win/scan_server_dlls.py',
462 'template_file': 'installer/mini_installer/chrome.release',
465 '<(scan_server_dlls_py)',
469 '<(INTERMEDIATE_DIR)/registered_dlls.h',
473 '<(scan_server_dlls_py)',
474 '--output_dir=<(PRODUCT_DIR)',
475 '--input_file=<(RULE_INPUT_PATH)',
476 '--header_output_dir=<(INTERMEDIATE_DIR)',
477 # TODO(sgk): may just use environment variables
478 #'--distribution=$(CHROMIUM_BUILD)',
479 '--distribution=_google_chrome',
486 ['OS=="linux" and branding=="Chrome"', {
488 # Always google_chrome since this only applies to branding==Chrome.
489 'branding_dir': 'app/theme/google_chrome',
490 'branding_dir_100': 'app/theme/default_100_percent/google_chrome',
491 'version' : '<!(python <(version_py_path) -f ../chrome/VERSION -t "@MAJOR@.@MINOR@.@BUILD@.@PATCH@")',
492 'revision' : '<!(python ../build/util/lastchange.py --revision-only)',
493 'packaging_files_common': [
494 'installer/linux/internal/common/apt.include',
495 'installer/linux/internal/common/default-app.template',
496 'installer/linux/internal/common/default-app-block.template',
497 'installer/linux/internal/common/desktop.template',
498 'installer/linux/internal/common/google-chrome/google-chrome.info',
499 'installer/linux/internal/common/installer.include',
500 'installer/linux/internal/common/postinst.include',
501 'installer/linux/internal/common/prerm.include',
502 'installer/linux/internal/common/repo.cron',
503 'installer/linux/internal/common/rpm.include',
504 'installer/linux/internal/common/rpmrepo.cron',
505 'installer/linux/internal/common/updater',
506 'installer/linux/internal/common/variables.include',
507 'installer/linux/internal/common/wrapper',
509 'packaging_files_deb': [
510 'installer/linux/internal/debian/build.sh',
511 'installer/linux/internal/debian/changelog.template',
512 'installer/linux/internal/debian/control.template',
513 'installer/linux/internal/debian/debian.menu',
514 'installer/linux/internal/debian/expected_deps',
515 'installer/linux/internal/debian/postinst',
516 'installer/linux/internal/debian/postrm',
517 'installer/linux/internal/debian/prerm',
519 'packaging_files_rpm': [
520 'installer/linux/internal/rpm/build.sh',
521 'installer/linux/internal/rpm/chrome.spec.template',
523 'packaging_files_binaries': [
524 # TODO(mmoss) Any convenient way to get all the relevant build
525 # files? (e.g. all locales, resources, etc.)
526 '<(PRODUCT_DIR)/chrome',
527 '<(PRODUCT_DIR)/chrome.pak',
528 '<(PRODUCT_DIR)/chrome_sandbox',
529 '<(PRODUCT_DIR)/libffmpegsumo.so',
530 '<(PRODUCT_DIR)/libppGoogleNaClPluginChrome.so',
531 '<(PRODUCT_DIR)/xdg-mime',
532 '<(PRODUCT_DIR)/xdg-settings',
533 '<(PRODUCT_DIR)/locales/en-US.pak',
534 '<(PRODUCT_DIR)/nacl_helper',
535 '<(PRODUCT_DIR)/nacl_helper_bootstrap',
536 '<(PRODUCT_DIR)/PepperFlash/libpepflashplayer.so',
537 '<(PRODUCT_DIR)/PepperFlash/manifest.json',
538 '<@(default_apps_list_linux_dest)',
540 'flock_bash': ['flock', '--', '/tmp/linux_package_lock', 'bash'],
541 'deb_build': '<(PRODUCT_DIR)/installer/debian/build.sh',
542 'rpm_build': '<(PRODUCT_DIR)/installer/rpm/build.sh',
543 'deb_cmd': ['<@(flock_bash)', '<(deb_build)', '-o' '<(PRODUCT_DIR)',
544 '-b', '<(PRODUCT_DIR)', '-a', '<(target_arch)'],
545 'rpm_cmd': ['<@(flock_bash)', '<(rpm_build)', '-o' '<(PRODUCT_DIR)',
546 '-b', '<(PRODUCT_DIR)', '-a', '<(target_arch)'],
548 ['target_arch=="ia32"', {
551 'packaging_files_binaries': [
552 '<(PRODUCT_DIR)/nacl_irt_x86_32.nexe',
553 '<(PRODUCT_DIR)/nacl_ipc_irt_x86_32.nexe',
556 ['target_arch=="x64"', {
558 'rpm_arch': 'x86_64',
559 'packaging_files_binaries': [
560 '<(PRODUCT_DIR)/nacl_irt_x86_64.nexe',
561 '<(PRODUCT_DIR)/nacl_ipc_irt_x86_64.nexe',
564 ['target_arch=="arm"', {
569 'packaging_files_binaries': [
570 '<(PRODUCT_DIR)/libpdf.so',
577 'target_name': 'linux_installer_configs',
579 # Add these files to the build output so the build archives will be
580 # "hermetic" for packaging. This is only for branding="Chrome" since
581 # we only create packages for official builds.
584 'destination': '<(PRODUCT_DIR)/installer/debian/',
586 '<@(packaging_files_deb)',
590 'destination': '<(PRODUCT_DIR)/installer/rpm/',
592 '<@(packaging_files_rpm)',
596 'destination': '<(PRODUCT_DIR)/installer/common/',
598 '<@(packaging_files_common)',
601 # Additional theme resources needed for package building.
603 'destination': '<(PRODUCT_DIR)/installer/theme/',
605 '<(branding_dir_100)/product_logo_16.png',
606 '<(branding_dir)/product_logo_22.png',
607 '<(branding_dir)/product_logo_24.png',
608 '<(branding_dir_100)/product_logo_32.png',
609 '<(branding_dir)/product_logo_48.png',
610 '<(branding_dir)/product_logo_64.png',
611 '<(branding_dir)/product_logo_128.png',
612 '<(branding_dir)/product_logo_256.png',
613 '<(branding_dir)/product_logo_32.xpm',
614 '<(branding_dir)/BRANDING',
620 'action_name': 'save_build_info',
622 '<(branding_dir)/BRANDING',
624 '<(lastchange_path)',
627 '<(PRODUCT_DIR)/installer/version.txt',
629 # Just output the default version info variables.
631 'python', '<(version_py_path)',
632 '-f', '<(branding_dir)/BRANDING',
633 '-f', '<(version_path)',
634 '-f', '<(lastchange_path)',
641 'target_name': 'linux_packages_all',
642 'suppress_wildcard': 1,
645 'linux_packages_unstable',
646 'linux_packages_beta',
647 'linux_packages_stable',
651 # 'asan' is a developer, testing-only package, so it shouldn't be
652 # included in the 'linux_packages_all' collection.
653 'target_name': 'linux_packages_asan',
654 'suppress_wildcard': 1,
657 'linux_packages_asan_deb',
659 # ChromeOS doesn't care about RPM packages.
663 'linux_packages_asan_rpm',
669 # 'trunk' is a developer, testing-only package, so it shouldn't be
670 # included in the 'linux_packages_all' collection.
671 'target_name': 'linux_packages_trunk',
672 'suppress_wildcard': 1,
675 'linux_packages_trunk_deb',
677 # ChromeOS doesn't care about RPM packages.
681 'linux_packages_trunk_rpm',
687 'target_name': 'linux_packages_unstable',
688 'suppress_wildcard': 1,
691 'linux_packages_unstable_deb',
693 # ChromeOS doesn't care about RPM packages.
697 'linux_packages_unstable_rpm',
703 'target_name': 'linux_packages_beta',
704 'suppress_wildcard': 1,
707 'linux_packages_beta_deb',
709 # ChromeOS doesn't care about RPM packages.
713 'linux_packages_beta_rpm',
719 'target_name': 'linux_packages_stable',
720 'suppress_wildcard': 1,
723 'linux_packages_stable_deb',
725 # ChromeOS doesn't care about RPM packages.
729 'linux_packages_stable_rpm',
734 # TODO(mmoss) gyp looping construct would be handy here ...
735 # These package actions are the same except for the 'channel' variable.
737 'target_name': 'linux_packages_asan_deb',
738 'suppress_wildcard': 1,
742 'linux_installer_configs',
749 'action_name': 'deb_packages_<(channel)',
750 'process_outputs_as_sources': 1,
753 '<@(packaging_files_binaries)',
754 '<@(packaging_files_common)',
755 '<@(packaging_files_deb)',
758 '<(PRODUCT_DIR)/google-chrome-<(channel)_<(version)-r<(revision)_<(deb_arch).deb',
760 'action': [ '<@(deb_cmd)', '-c', '<(channel)', ],
765 'target_name': 'linux_packages_trunk_deb',
766 'suppress_wildcard': 1,
770 'linux_installer_configs',
777 'action_name': 'deb_packages_<(channel)',
778 'process_outputs_as_sources': 1,
781 '<@(packaging_files_binaries)',
782 '<@(packaging_files_common)',
783 '<@(packaging_files_deb)',
786 '<(PRODUCT_DIR)/google-chrome-<(channel)_<(version)-r<(revision)_<(deb_arch).deb',
788 'action': [ '<@(deb_cmd)', '-c', '<(channel)', ],
793 'target_name': 'linux_packages_unstable_deb',
794 'suppress_wildcard': 1,
798 'linux_installer_configs',
803 'channel': 'unstable',
805 'action_name': 'deb_packages_<(channel)',
806 'process_outputs_as_sources': 1,
809 '<@(packaging_files_binaries)',
810 '<@(packaging_files_common)',
811 '<@(packaging_files_deb)',
814 '<(PRODUCT_DIR)/google-chrome-<(channel)_<(version)-r<(revision)_<(deb_arch).deb',
816 'action': [ '<@(deb_cmd)', '-c', '<(channel)', ],
821 'target_name': 'linux_packages_beta_deb',
822 'suppress_wildcard': 1,
826 'linux_installer_configs',
833 'action_name': 'deb_packages_<(channel)',
834 'process_outputs_as_sources': 1,
837 '<@(packaging_files_binaries)',
838 '<@(packaging_files_common)',
839 '<@(packaging_files_deb)',
842 '<(PRODUCT_DIR)/google-chrome-<(channel)_<(version)-r<(revision)_<(deb_arch).deb',
844 'action': [ '<@(deb_cmd)', '-c', '<(channel)', ],
849 'target_name': 'linux_packages_stable_deb',
850 'suppress_wildcard': 1,
854 'linux_installer_configs',
861 'action_name': 'deb_packages_<(channel)',
862 'process_outputs_as_sources': 1,
865 '<@(packaging_files_binaries)',
866 '<@(packaging_files_common)',
867 '<@(packaging_files_deb)',
870 '<(PRODUCT_DIR)/google-chrome-<(channel)_<(version)-r<(revision)_<(deb_arch).deb',
872 'action': [ '<@(deb_cmd)', '-c', '<(channel)', ],
877 'target_name': 'linux_packages_asan_rpm',
878 'suppress_wildcard': 1,
882 'linux_installer_configs',
889 'action_name': 'rpm_packages_<(channel)',
890 'process_outputs_as_sources': 1,
893 '<(PRODUCT_DIR)/installer/rpm/chrome.spec.template',
894 '<@(packaging_files_binaries)',
895 '<@(packaging_files_common)',
896 '<@(packaging_files_rpm)',
899 '<(PRODUCT_DIR)/google-chrome-<(channel)-<(version)-<(revision).<(rpm_arch).rpm',
901 'action': [ '<@(rpm_cmd)', '-c', '<(channel)', ],
906 'target_name': 'linux_packages_trunk_rpm',
907 'suppress_wildcard': 1,
911 'linux_installer_configs',
918 'action_name': 'rpm_packages_<(channel)',
919 'process_outputs_as_sources': 1,
922 '<(PRODUCT_DIR)/installer/rpm/chrome.spec.template',
923 '<@(packaging_files_binaries)',
924 '<@(packaging_files_common)',
925 '<@(packaging_files_rpm)',
928 '<(PRODUCT_DIR)/google-chrome-<(channel)-<(version)-<(revision).<(rpm_arch).rpm',
930 'action': [ '<@(rpm_cmd)', '-c', '<(channel)', ],
935 'target_name': 'linux_packages_unstable_rpm',
936 'suppress_wildcard': 1,
940 'linux_installer_configs',
945 'channel': 'unstable',
947 'action_name': 'rpm_packages_<(channel)',
948 'process_outputs_as_sources': 1,
951 '<(PRODUCT_DIR)/installer/rpm/chrome.spec.template',
952 '<@(packaging_files_binaries)',
953 '<@(packaging_files_common)',
954 '<@(packaging_files_rpm)',
957 '<(PRODUCT_DIR)/google-chrome-<(channel)-<(version)-<(revision).<(rpm_arch).rpm',
959 'action': [ '<@(rpm_cmd)', '-c', '<(channel)', ],
964 'target_name': 'linux_packages_beta_rpm',
965 'suppress_wildcard': 1,
969 'linux_installer_configs',
976 'action_name': 'rpm_packages_<(channel)',
977 'process_outputs_as_sources': 1,
980 '<(PRODUCT_DIR)/installer/rpm/chrome.spec.template',
981 '<@(packaging_files_binaries)',
982 '<@(packaging_files_common)',
983 '<@(packaging_files_rpm)',
986 '<(PRODUCT_DIR)/google-chrome-<(channel)-<(version)-<(revision).<(rpm_arch).rpm',
988 'action': [ '<@(rpm_cmd)', '-c', '<(channel)', ],
993 'target_name': 'linux_packages_stable_rpm',
994 'suppress_wildcard': 1,
998 'linux_installer_configs',
1003 'channel': 'stable',
1005 'action_name': 'rpm_packages_<(channel)',
1006 'process_outputs_as_sources': 1,
1009 '<(PRODUCT_DIR)/installer/rpm/chrome.spec.template',
1010 '<@(packaging_files_binaries)',
1011 '<@(packaging_files_common)',
1012 '<@(packaging_files_rpm)',
1015 '<(PRODUCT_DIR)/google-chrome-<(channel)-<(version)-<(revision).<(rpm_arch).rpm',
1017 'action': [ '<@(rpm_cmd)', '-c', '<(channel)', ],
1025 'mac_packaging_dir':
1026 '<(PRODUCT_DIR)/<(mac_product_name) Packaging',
1027 # <(PRODUCT_DIR) expands to $(BUILT_PRODUCTS_DIR), which doesn't
1028 # work properly in a shell script, where ${BUILT_PRODUCTS_DIR} is
1030 'mac_packaging_sh_dir':
1031 '${BUILT_PRODUCTS_DIR}/<(mac_product_name) Packaging',
1035 'target_name': 'installer_packaging',
1038 'installer/mac/third_party/bsdiff/goobsdiff.gyp:*',
1039 'installer/mac/third_party/xz/xz.gyp:*',
1042 ['buildtype=="Official"', {
1045 # Create sign.sh, the script that the packaging system will
1046 # use to sign the .app bundle.
1047 'action_name': 'Make sign.sh',
1049 'make_signers_sh_path': 'installer/mac/make_signers.sh',
1052 '<(make_signers_sh_path)',
1053 'installer/mac/sign_app.sh.in',
1054 'installer/mac/sign_versioned_dir.sh.in',
1055 'installer/mac/app_resource_rules.plist.in',
1059 '<(mac_packaging_dir)/sign_app.sh',
1060 '<(mac_packaging_dir)/sign_versioned_dir.sh',
1061 '<(mac_packaging_dir)/app_resource_rules.plist',
1064 '<(make_signers_sh_path)',
1065 '<(mac_packaging_sh_dir)',
1066 '<(mac_product_name)',
1071 }], # buildtype=="Official"
1072 ['branding=="Chrome" and buildtype=="Official"', {
1075 # copy_keychain_reauthorize.sh explains why this isn't in a
1076 # 'copies' block, but briefly: this is a prebuilt signed
1077 # binary component that relies on a correct signature to
1078 # function properly, and a normal 'copies' block sadly makes
1079 # a trivial modification to the file such that its signature
1080 # is no longer valid.
1081 'action_name': 'Copy keychain_reauthorize',
1083 'keychain_reauthorize_path': 'tools/build/mac/copy_keychain_reauthorize.sh',
1084 'keychain_reauthorize_normal_path': 'installer/mac/internal/keychain_reauthorize/com.google.Chrome',
1085 'keychain_reauthorize_canary_path': 'installer/mac/internal/keychain_reauthorize/com.google.Chrome.canary',
1086 'keychain_reauthorize_output_dir': '<(mac_packaging_dir)/.keychain_reauthorize',
1089 '<(keychain_reauthorize_path)',
1090 '<(keychain_reauthorize_normal_path)',
1091 '<(keychain_reauthorize_canary_path)',
1094 '<(keychain_reauthorize_output_dir)/com.google.Chrome',
1095 '<(keychain_reauthorize_output_dir)/com.google.Chrome.canary',
1098 '<(keychain_reauthorize_path)',
1099 '<(keychain_reauthorize_output_dir)',
1100 '<(keychain_reauthorize_normal_path)',
1101 '<(keychain_reauthorize_canary_path)',
1105 }], # branding=="Chrome" and buildtype=="Official"
1109 # Put the files where the packaging system will find them. The
1110 # packager will use these when building the "full installer"
1111 # disk images and delta/differential update disk images.
1112 'destination': '<(mac_packaging_dir)',
1114 '<(PRODUCT_DIR)/goobsdiff',
1115 '<(PRODUCT_DIR)/goobspatch',
1116 '<(PRODUCT_DIR)/liblzma_decompress.dylib',
1117 '<(PRODUCT_DIR)/xz',
1118 '<(PRODUCT_DIR)/xzdec',
1119 'installer/mac/dirdiffer.sh',
1120 'installer/mac/dirpatcher.sh',
1121 'installer/mac/dmgdiffer.sh',
1122 'installer/mac/pkg-dmg',
1125 ['mac_keystone==1', {
1127 'installer/mac/keystone_install.sh',
1130 ['branding=="Chrome" and buildtype=="Official"', {
1132 'app/theme/google_chrome/app_canary.icns',
1133 'app/theme/google_chrome/document_canary.icns',
1134 'installer/mac/internal/chrome_canary_dmg_dsstore',
1135 'installer/mac/internal/chrome_canary_dmg_icon.icns',
1136 'installer/mac/internal/chrome_dmg_background.png',
1137 'installer/mac/internal/chrome_dmg_dsstore',
1138 'installer/mac/internal/chrome_dmg_icon.icns',
1139 'installer/mac/internal/generate_dmgs',
1141 }], # branding=="Chrome" and buildtype=="Official"
1145 }, # target: installer_packaging
1147 'target_name': 'gcapi_lib',
1148 'type': 'static_library',
1153 'installer/gcapi_mac/gcapi.h',
1154 'installer/gcapi_mac/gcapi.mm',
1158 '$(SDKROOT)/System/Library/Frameworks/Cocoa.framework',
1162 'ARCHS': [ 'i386', 'x86_64' ],
1163 'MACOSX_DEPLOYMENT_TARGET': '10.4',
1164 'GCC_ENABLE_OBJC_GC': 'supported',
1168 'target_name': 'gcapi_example',
1169 'type': 'executable',
1177 'installer/gcapi_mac/gcapi_example_client.mm',
1182 [ 'branding == "Chrome"', {
1184 'branding_dir': 'app/theme/google_chrome',
1185 'branding_dir_100': 'app/theme/default_100_percent/google_chrome',
1187 }, { # else branding!="Chrome"
1189 'branding_dir': 'app/theme/chromium',
1190 'branding_dir_100': 'app/theme/default_100_percent/chromium',