There are many ways to get it wrong.
[chromium-blink-merge.git] / chrome / chrome_installer_util.gypi
blob234750fff16d67b9bb2094838a91e86c086c3b8b
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.
6   'target_defaults': {
7     'variables': {
8       'installer_util_target': 0,
9     },
10     'target_conditions': [
11       # This part is shared between the two versions of the target.
12       ['installer_util_target==1', {
13         'sources': [
14           'installer/util/advanced_firewall_manager_win.cc',
15           'installer/util/advanced_firewall_manager_win.h',
16           'installer/util/app_command.cc',
17           'installer/util/app_command.h',
18           'installer/util/app_commands.cc',
19           'installer/util/app_commands.h',
20           'installer/util/auto_launch_util.cc',
21           'installer/util/auto_launch_util.h',
22           'installer/util/browser_distribution.cc',
23           'installer/util/browser_distribution.h',
24           'installer/util/callback_work_item.cc',
25           'installer/util/callback_work_item.h',
26           'installer/util/channel_info.cc',
27           'installer/util/channel_info.h',
28           'installer/util/chrome_app_host_distribution.cc',
29           'installer/util/chrome_app_host_distribution.h',
30           'installer/util/chrome_frame_distribution.cc',
31           'installer/util/chrome_frame_distribution.h',
32           'installer/util/chromium_binaries_distribution.cc',
33           'installer/util/chromium_binaries_distribution.h',
34           'installer/util/conditional_work_item_list.cc',
35           'installer/util/conditional_work_item_list.h',
36           'installer/util/copy_reg_key_work_item.cc',
37           'installer/util/copy_reg_key_work_item.h',
38           'installer/util/copy_tree_work_item.cc',
39           'installer/util/copy_tree_work_item.h',
40           'installer/util/create_dir_work_item.cc',
41           'installer/util/create_dir_work_item.h',
42           'installer/util/create_reg_key_work_item.cc',
43           'installer/util/create_reg_key_work_item.h',
44           'installer/util/delete_reg_key_work_item.cc',
45           'installer/util/delete_reg_key_work_item.h',
46           'installer/util/delete_reg_value_work_item.cc',
47           'installer/util/delete_reg_value_work_item.h',
48           'installer/util/delete_tree_work_item.cc',
49           'installer/util/delete_tree_work_item.h',
50           'installer/util/duplicate_tree_detector.cc',
51           'installer/util/duplicate_tree_detector.h',
52           'installer/util/firewall_manager_win.cc',
53           'installer/util/firewall_manager_win.h',
54           'installer/util/google_chrome_binaries_distribution.cc',
55           'installer/util/google_chrome_binaries_distribution.h',
56           'installer/util/google_chrome_sxs_distribution.cc',
57           'installer/util/google_chrome_sxs_distribution.h',
58           'installer/util/google_update_constants.cc',
59           'installer/util/google_update_constants.h',
60           'installer/util/google_update_experiment_util.cc',
61           'installer/util/google_update_experiment_util.h',
62           'installer/util/google_update_settings.cc',
63           'installer/util/google_update_settings.h',
64           'installer/util/google_update_util.cc',
65           'installer/util/google_update_util.h',
66           'installer/util/helper.cc',
67           'installer/util/helper.h',
68           'installer/util/install_util.cc',
69           'installer/util/install_util.h',
70           'installer/util/installation_state.cc',
71           'installer/util/installation_state.h',
72           'installer/util/installer_state.cc',
73           'installer/util/installer_state.h',
74           'installer/util/l10n_string_util.cc',
75           'installer/util/l10n_string_util.h',
76           'installer/util/language_selector.cc',
77           'installer/util/language_selector.h',
78           'installer/util/legacy_firewall_manager_win.cc',
79           'installer/util/legacy_firewall_manager_win.h',
80           'installer/util/master_preferences_constants.cc',
81           'installer/util/master_preferences_constants.h',
82           'installer/util/move_tree_work_item.cc',
83           'installer/util/move_tree_work_item.h',
84           'installer/util/registry_key_backup.cc',
85           'installer/util/registry_key_backup.h',
86           'installer/util/self_reg_work_item.cc',
87           'installer/util/self_reg_work_item.h',
88           'installer/util/set_reg_value_work_item.cc',
89           'installer/util/set_reg_value_work_item.h',
90           'installer/util/util_constants.cc',
91           'installer/util/util_constants.h',
92           'installer/util/wmi.cc',
93           'installer/util/wmi.h',
94           'installer/util/work_item.cc',
95           'installer/util/work_item.h',
96           'installer/util/work_item_list.cc',
97           'installer/util/work_item_list.h',
98         ],
99         'include_dirs': [
100           '<(DEPTH)',
101         ],
102       }],
103     ],
104   },
105   'conditions': [
106     ['OS=="win"', {
107       'targets': [
108         {
109           'target_name': 'installer_util',
110           'type': 'static_library',
111           'variables': {
112             'installer_util_target': 1,
113           },
114           'dependencies': [
115             'installer_util_strings',
116             '<(DEPTH)/base/base.gyp:base',
117             '<(DEPTH)/base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
118             '<(DEPTH)/chrome/chrome_resources.gyp:chrome_resources',
119             '<(DEPTH)/chrome/chrome_resources.gyp:chrome_strings',
120             '<(DEPTH)/chrome/common_constants.gyp:common_constants',
121             '<(DEPTH)/courgette/courgette.gyp:courgette_lib',
122             '<(DEPTH)/crypto/crypto.gyp:crypto',
123             '<(DEPTH)/third_party/bspatch/bspatch.gyp:bspatch',
124             '<(DEPTH)/third_party/icu/icu.gyp:icui18n',
125             '<(DEPTH)/third_party/icu/icu.gyp:icuuc',
126             '<(DEPTH)/third_party/lzma_sdk/lzma_sdk.gyp:lzma_sdk',
127           ],
128           'sources': [
129             'installer/util/chrome_app_host_operations.cc',
130             'installer/util/chrome_app_host_operations.h',
131             'installer/util/chrome_binaries_operations.cc',
132             'installer/util/chrome_binaries_operations.h',
133             'installer/util/chrome_browser_operations.cc',
134             'installer/util/chrome_browser_operations.h',
135             'installer/util/chrome_browser_sxs_operations.cc',
136             'installer/util/chrome_browser_sxs_operations.h',
137             'installer/util/chrome_frame_operations.cc',
138             'installer/util/chrome_frame_operations.h',
139             'installer/util/compat_checks.cc',
140             'installer/util/compat_checks.h',
141             'installer/util/delete_after_reboot_helper.cc',
142             'installer/util/delete_after_reboot_helper.h',
143             'installer/util/eula_util.cc',
144             'installer/util/eula_util.h',
145             'installer/util/google_chrome_distribution.cc',
146             'installer/util/google_chrome_distribution.h',
147             'installer/util/html_dialog.h',
148             'installer/util/html_dialog_impl.cc',
149             'installer/util/installation_validator.cc',
150             'installer/util/installation_validator.h',
151             'installer/util/logging_installer.cc',
152             'installer/util/logging_installer.h',
153             'installer/util/lzma_util.cc',
154             'installer/util/lzma_util.h',
155             'installer/util/master_preferences.cc',
156             'installer/util/master_preferences.h',
157             'installer/util/product.h',
158             'installer/util/product.cc',
159             'installer/util/product_operations.h',
160             'installer/util/self_cleaning_temp_dir.cc',
161             'installer/util/self_cleaning_temp_dir.h',
162             'installer/util/shell_util.cc',
163             'installer/util/shell_util.h',
164             'installer/util/uninstall_metrics.cc',
165             'installer/util/uninstall_metrics.h',
166             'installer/util/user_experiment.cc',
167             'installer/util/user_experiment.h',
168           ],
169           # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
170           'msvs_disabled_warnings': [ 4267, ],
171         },
172       ],
173     }],
174     ['OS=="win" and target_arch=="ia32"', {
175       'targets': [
176         {
177           'target_name': 'installer_util_nacl_win64',
178           'type': 'static_library',
179           'variables': {
180             'installer_util_target': 1,
181           },
182           'dependencies': [
183             'installer_util_strings',
184           ],
185           'include_dirs': [
186             '<(SHARED_INTERMEDIATE_DIR)',
187           ],
188           'sources': [
189             'installer/util/google_chrome_distribution_dummy.cc',
190             'installer/util/master_preferences.h',
191             'installer/util/master_preferences_dummy.cc',
192           ],
193           'configurations': {
194             'Common_Base': {
195               'msvs_target_platform': 'x64',
196             },
197           },
198         },
199       ],
200     }],
201     ['OS!="win"', {
202       'targets': [
203         {
204           'target_name': 'installer_util',
205           'type': 'static_library',
206           'dependencies': [
207             '<(DEPTH)/base/base.gyp:base',
208             '<(DEPTH)/chrome/chrome_resources.gyp:chrome_resources',
209             '<(DEPTH)/chrome/chrome_resources.gyp:chrome_strings',
210           ],
211           'sources': [
212             'installer/util/google_update_experiment_util.cc',
213             'installer/util/google_update_experiment_util.h',
214             'installer/util/master_preferences.cc',
215             'installer/util/master_preferences.h',
216             'installer/util/master_preferences_constants.cc',
217             'installer/util/master_preferences_constants.h',
218           ],
219           'include_dirs': [
220             '<(DEPTH)',
221           ],
222         }
223       ],
224     }],
226   ],