OLD | NEW |
1 { | 1 { |
2 'variables': { | 2 'variables': { |
3 'version_py': '../../chrome/tools/build/version.py', | 3 'version_py': '../../chrome/tools/build/version.py', |
4 'VERSION': '../../chrome/VERSION', | 4 'VERSION': '../../chrome/VERSION', |
5 # 'BRANDING' is set in the 'conditions' section at the bottom. | 5 # 'BRANDING' is set in the 'conditions' section at the bottom. |
6 }, | 6 }, |
7 'includes': [ | 7 'includes': [ |
8 '../../build/common.gypi', | 8 '../../build/common.gypi', |
9 ], | 9 ], |
10 'targets': [ | 10 'targets': [ |
11 { | 11 { |
12 'target_name': 'gcapi_dll', | |
13 'type': 'loadable_module', | |
14 'msvs_guid': 'B802A2FE-E4E2-4F5A-905A-D5128875C954', | |
15 'dependencies': [ | |
16 '../../google_update/google_update.gyp:google_update', | |
17 ], | |
18 'include_dirs': [ | |
19 '../..', | |
20 ], | |
21 'sources': [ | |
22 'gcapi/gcapi.cc', | |
23 'gcapi/gcapi.h', | |
24 ], | |
25 }, | |
26 { | |
27 'target_name': 'gcapi_lib', | |
28 'type': 'static_library', | |
29 'msvs_guid': 'CD2FD73A-6AAB-4886-B887-760D18E8B635', | |
30 'dependencies': [ | |
31 '../../google_update/google_update.gyp:google_update', | |
32 ], | |
33 'include_dirs': [ | |
34 '../..', | |
35 ], | |
36 'sources': [ | |
37 'gcapi/gcapi.cc', | |
38 'gcapi/gcapi.h', | |
39 ], | |
40 }, | |
41 { | |
42 'target_name': 'gcapi_test', | |
43 'type': 'executable', | |
44 'msvs_guid': 'B64B396B-8EF1-4B6B-A07E-48D40EB961AB', | |
45 'dependencies': [ | |
46 'gcapi_dll', | |
47 'gcapi_lib', | |
48 ], | |
49 'include_dirs': [ | |
50 '../..', | |
51 ], | |
52 'sources': [ | |
53 'gcapi/gcapi_test.cc', | |
54 'gcapi/gcapi_test.rc', | |
55 'gcapi/resource.h', | |
56 ], | |
57 }, | |
58 { | |
59 'target_name': 'installer_unittests', | |
60 'type': 'executable', | |
61 'msvs_guid': '903F8C1E-537A-4C9E-97BE-075147CBE769', | |
62 'dependencies': [ | |
63 'installer_util', | |
64 'installer_util_strings', | |
65 '../../base/base.gyp:base', | |
66 '../../testing/gtest.gyp:gtest', | |
67 ], | |
68 'include_dirs': [ | |
69 '../..', | |
70 ], | |
71 'sources': [ | |
72 'setup/compat_checks_unittest.cc', | |
73 'setup/setup_constants.cc', | |
74 'util/copy_tree_work_item_unittest.cc', | |
75 'util/create_dir_work_item_unittest.cc', | |
76 'util/create_reg_key_work_item_unittest.cc', | |
77 'util/delete_reg_value_work_item_unittest.cc', | |
78 'util/delete_tree_work_item_unittest.cc', | |
79 'util/google_chrome_distribution_unittest.cc', | |
80 'util/helper_unittest.cc', | |
81 'util/installer_unittests.rc', | |
82 'util/installer_unittests_resource.h', | |
83 'util/move_tree_work_item_unittest.cc', | |
84 'util/run_all_unittests.cc', | |
85 'util/set_reg_value_work_item_unittest.cc', | |
86 'util/work_item_list_unittest.cc', | |
87 ], | |
88 }, | |
89 { | |
90 'target_name': 'installer_util', | 12 'target_name': 'installer_util', |
91 'type': '<(library)', | 13 'conditions': [ |
92 'msvs_guid': 'EFBB1436-A63F-4CD8-9E99-B89226E782EC', | 14 ['OS=="linux"', { |
93 'dependencies': [ | 15 'type': 'none', |
94 'installer_util_strings', | 16 # Add these files to the build output so the build archives will be |
95 '../chrome.gyp:common', | 17 # "hermetic" for packaging. This is only for branding="Chrome" since |
96 '../chrome.gyp:chrome_resources', | 18 # we only create packages for official builds. |
97 '../chrome.gyp:chrome_strings', | 19 'conditions': [ |
98 '../../net/net.gyp:net_resources', | 20 ['branding=="Chrome"', { |
99 '../../media/media.gyp:media', | 21 'variables': { |
100 '../../skia/skia.gyp:skia', | 22 'branding_path': 'google_chrome', |
101 '../../third_party/icu38/icu38.gyp:icui18n', | 23 'lib32_dir': '<!(if uname -m | egrep -q "x86_64"; then echo lib3
2; else echo lib; fi)', |
102 '../../third_party/icu38/icu38.gyp:icuuc', | 24 }, |
103 '../../third_party/libxml/libxml.gyp:libxml', | 25 'copies': [ |
104 '../../third_party/lzma_sdk/lzma_sdk.gyp:lzma_sdk', | 26 # Copy tools for generating packages from the build archive. |
105 '../../third_party/npapi/npapi.gyp:npapi', | 27 { |
106 '../third_party/hunspell/hunspell.gyp:hunspell', | 28 'destination': '<(PRODUCT_DIR)/installer/', |
107 ], | 29 'files': [ |
108 'include_dirs': [ | 30 'linux/internal/build_from_archive.sh', |
109 '../..', | 31 ] |
110 ], | 32 }, |
111 'sources': [ | 33 { |
112 'util/browser_distribution.cc', | 34 'destination': '<(PRODUCT_DIR)/installer/debian/', |
113 'util/browser_distribution.h', | 35 'files': [ |
114 'util/compat_checks.cc', | 36 'linux/internal/debian/changelog.template', |
115 'util/compat_checks.h', | 37 'linux/internal/debian/postinst', |
116 'util/copy_tree_work_item.cc', | 38 'linux/internal/debian/prerm', |
117 'util/copy_tree_work_item.h', | 39 'linux/internal/debian/build.sh', |
118 'util/create_dir_work_item.cc', | 40 'linux/internal/debian/control.template', |
119 'util/create_dir_work_item.h', | 41 ] |
120 'util/create_reg_key_work_item.cc', | 42 }, |
121 'util/create_reg_key_work_item.h', | 43 { |
122 'util/delete_reg_value_work_item.cc', | 44 'destination': '<(PRODUCT_DIR)/installer/common/', |
123 'util/delete_reg_value_work_item.h', | 45 'files': [ |
124 'util/delete_tree_work_item.cc', | 46 'linux/internal/common/apt.include', |
125 'util/delete_tree_work_item.h', | 47 'linux/internal/common/wrapper', |
126 'util/google_chrome_distribution.cc', | 48 'linux/internal/common/updater', |
127 'util/google_chrome_distribution.h', | 49 'linux/internal/common/desktop.template', |
128 'util/google_update_constants.cc', | 50 'linux/internal/common/google-chrome/google-chrome.info', |
129 'util/google_update_constants.h', | 51 ] |
130 'util/google_update_settings.cc', | 52 }, |
131 'util/google_update_settings.h', | 53 # System libs needed for 64-bit package building. |
132 'util/helper.cc', | 54 { |
133 'util/helper.h', | 55 'destination': '<(PRODUCT_DIR)/installer/lib32/', |
134 'util/html_dialog.h', | 56 'files': [ |
135 'util/html_dialog_impl.cc', | 57 '/usr/<(lib32_dir)/libsqlite3.so.0', |
136 'util/install_util.cc', | 58 '/usr/<(lib32_dir)/libsqlite3.so.0.8.6', |
137 'util/install_util.h', | 59 '/usr/<(lib32_dir)/libnspr4.so.0d', |
138 'util/l10n_string_util.cc', | 60 '/usr/<(lib32_dir)/libplds4.so.0d', |
139 'util/l10n_string_util.h', | 61 '/usr/<(lib32_dir)/libplc4.so.0d', |
140 'util/logging_installer.cc', | 62 '/usr/<(lib32_dir)/libssl3.so.1d', |
141 'util/logging_installer.h', | 63 '/usr/<(lib32_dir)/libnss3.so.1d', |
142 'util/lzma_util.cc', | 64 '/usr/<(lib32_dir)/libsmime3.so.1d', |
143 'util/lzma_util.h', | 65 '/usr/<(lib32_dir)/libnssutil3.so.1d', |
144 'util/master_preferences.cc', | 66 '/usr/<(lib32_dir)/nss/libfreebl3.so', |
145 'util/master_preferences.h', | 67 '/usr/<(lib32_dir)/nss/libsoftokn3.chk', |
146 'util/move_tree_work_item.cc', | 68 '/usr/<(lib32_dir)/nss/libsoftokn3.so', |
147 'util/move_tree_work_item.h', | 69 '/usr/<(lib32_dir)/nss/libnssckbi.so', |
148 'util/self_reg_work_item.cc', | 70 '/usr/<(lib32_dir)/nss/libnssdbm3.so', |
149 'util/self_reg_work_item.h', | 71 '/usr/<(lib32_dir)/nss/libfreebl3.chk', |
150 'util/set_reg_value_work_item.cc', | 72 ], |
151 'util/set_reg_value_work_item.h', | 73 }, |
152 'util/shell_util.cc', | 74 # Additional theme resources needed for package building. |
153 'util/shell_util.h', | 75 { |
154 'util/util_constants.cc', | 76 'destination': '<(PRODUCT_DIR)/installer/theme/', |
155 'util/util_constants.h', | 77 'files': [ |
156 'util/version.cc', | 78 '../app/theme/<(branding_path)/product_logo_16.png', |
157 'util/version.h', | 79 '../app/theme/<(branding_path)/product_logo_32.png', |
158 'util/work_item.cc', | 80 '../app/theme/<(branding_path)/product_logo_48.png', |
159 'util/work_item.h', | 81 '../app/theme/<(branding_path)/product_logo_256.png', |
160 'util/work_item_list.cc', | 82 '../app/theme/<(branding_path)/BRANDING', |
161 'util/work_item_list.h', | 83 ], |
162 ], | 84 }, |
163 }, | 85 ], |
164 { | 86 'actions': [ |
165 'target_name': 'installer_util_strings', | 87 { |
166 'type': 'none', | 88 'action_name': 'save_build_info', |
167 'msvs_guid': '0026A376-C4F1-4575-A1BA-578C69F07013', | 89 'inputs': [ |
168 'actions': [ | 90 '<(BRANDING)', |
169 { | 91 '<(VERSION)', |
170 # TODO(sgk): Clean this up so that we pass in the | 92 ], |
171 # file names to the script instead of having it hard-code | 93 'outputs': [ |
172 # matching path names internally. | 94 '<(PRODUCT_DIR)/installer/version.txt', |
173 'action_name': 'installer_util_strings', | 95 ], |
174 'inputs': [ | 96 # Jst output the default version info variables. |
175 'util/prebuild/create_string_rc.py', | 97 'action': ['python', '<(version_py)', '-f', |
176 '../app/generated_resources.grd', | 98 '<(BRANDING)', '-f', '<(VERSION)', |
177 ], | 99 '-o', '<@(_outputs)'], |
178 'outputs': [ | 100 }, |
179 '<(SHARED_INTERMEDIATE_DIR)/installer_util_strings/installer_util_st
rings.rc', | 101 ], |
180 '<(SHARED_INTERMEDIATE_DIR)/installer_util_strings/installer_util_st
rings.h', | 102 }], |
181 ], | 103 ], |
182 'action': [ | 104 }], |
183 # The create_string_rc.py script requires the checked-in | 105 ['OS=="win"', { |
184 # python.exe that has google modules installed, and | 106 'type': '<(library)', |
185 # a PYTHONPATH pointing to grit so it can import FP. | 107 'msvs_guid': 'EFBB1436-A63F-4CD8-9E99-B89226E782EC', |
186 # TODO: clean this up | 108 'dependencies': [ |
187 'set PYTHONPATH=../../tools/grit/grit/extern', '&&', | 109 'installer_util_strings', |
188 '../../third_party/python_24/python.exe', | 110 '../chrome.gyp:common', |
189 'util/prebuild/create_string_rc.py', | 111 '../chrome.gyp:chrome_resources', |
190 '<(SHARED_INTERMEDIATE_DIR)/installer_util_strings' | 112 '../chrome.gyp:chrome_strings', |
191 ], | 113 '../../net/net.gyp:net_resources', |
192 'msvs_cygwin_shell': 0, | 114 '../../media/media.gyp:media', |
193 }, | 115 '../../skia/skia.gyp:skia', |
194 ], | 116 '../../third_party/icu38/icu38.gyp:icui18n', |
195 'direct_dependent_settings': { | 117 '../../third_party/icu38/icu38.gyp:icuuc', |
196 'include_dirs': [ | 118 '../../third_party/libxml/libxml.gyp:libxml', |
197 '<(SHARED_INTERMEDIATE_DIR)/installer_util_strings', | 119 '../../third_party/lzma_sdk/lzma_sdk.gyp:lzma_sdk', |
198 ], | 120 '../../third_party/npapi/npapi.gyp:npapi', |
199 }, | 121 '../third_party/hunspell/hunspell.gyp:hunspell', |
200 }, | 122 ], |
201 { | 123 'include_dirs': [ |
202 'target_name': 'mini_installer', | 124 '../..', |
203 'type': 'executable', | 125 ], |
204 'msvs_guid': '24A5AC7C-280B-4899-9153-6BA570A081E7', | 126 'sources': [ |
205 'dependencies': [ | 127 'util/browser_distribution.cc', |
206 '../chrome.gyp:app', | 128 'util/browser_distribution.h', |
207 '../chrome.gyp:chrome_dll', | 129 'util/compat_checks.cc', |
208 ], | 130 'util/compat_checks.h', |
209 'include_dirs': [ | 131 'util/copy_tree_work_item.cc', |
210 '../..', | 132 'util/copy_tree_work_item.h', |
211 '<(PRODUCT_DIR)', | 133 'util/create_dir_work_item.cc', |
212 '<(INTERMEDIATE_DIR)', | 134 'util/create_dir_work_item.h', |
213 ], | 135 'util/create_reg_key_work_item.cc', |
214 'sources': [ | 136 'util/create_reg_key_work_item.h', |
215 'mini_installer/chrome.release', | 137 'util/delete_reg_value_work_item.cc', |
216 'mini_installer/mini_installer.cc', | 138 'util/delete_reg_value_work_item.h', |
217 'mini_installer/mini_installer.h', | 139 'util/delete_tree_work_item.cc', |
218 'mini_installer/mini_installer.ico', | 140 'util/delete_tree_work_item.h', |
219 'mini_installer/mini_installer.rc', | 141 'util/google_chrome_distribution.cc', |
220 'mini_installer/mini_installer_exe_version.rc.version', | 142 'util/google_chrome_distribution.h', |
221 'mini_installer/mini_installer_resource.h', | 143 'util/google_update_constants.cc', |
222 'mini_installer/pe_resource.cc', | 144 'util/google_update_constants.h', |
223 'mini_installer/pe_resource.h', | 145 'util/google_update_settings.cc', |
224 ], | 146 'util/google_update_settings.h', |
225 'msvs_settings': { | 147 'util/helper.cc', |
226 'VCLinkerTool': { | 148 'util/helper.h', |
227 'SubSystem': '2', # Set /SUBSYSTEM:WINDOWS | 149 'util/html_dialog.h', |
228 }, | 150 'util/html_dialog_impl.cc', |
229 }, | 151 'util/install_util.cc', |
230 'rules': [ | 152 'util/install_util.h', |
231 { | 153 'util/l10n_string_util.cc', |
232 'rule_name': 'mini_installer_version', | 154 'util/l10n_string_util.h', |
233 'extension': 'version', | 155 'util/logging_installer.cc', |
234 'variables': { | 156 'util/logging_installer.h', |
235 'template_input_path': 'mini_installer/mini_installer_exe_version.rc
.version', | 157 'util/lzma_util.cc', |
236 'template_output_path': | 158 'util/lzma_util.h', |
237 '<(INTERMEDIATE_DIR)/mini_installer_exe_version.rc', | 159 'util/master_preferences.cc', |
238 }, | 160 'util/master_preferences.h', |
239 'inputs': [ | 161 'util/move_tree_work_item.cc', |
240 '<(template_input_path)', | 162 'util/move_tree_work_item.h', |
241 '<(VERSION)', | 163 'util/self_reg_work_item.cc', |
242 '<(BRANDING)', | 164 'util/self_reg_work_item.h', |
243 ], | 165 'util/set_reg_value_work_item.cc', |
244 'outputs': [ | 166 'util/set_reg_value_work_item.h', |
245 # Use a non-existant output so this action always runs and | 167 'util/shell_util.cc', |
246 # generates version information, e.g. to capture revision | 168 'util/shell_util.h', |
247 # changes, which aren't captured by file dependencies. | 169 'util/util_constants.cc', |
248 '<(INTERMEDIATE_DIR)/mini_installer_version.bogus', | 170 'util/util_constants.h', |
249 | 171 'util/version.cc', |
250 # And this is the real output, so that the build system knows | 172 'util/version.h', |
251 # what action generates it. | 173 'util/work_item.cc', |
252 '<(template_output_path)', | 174 'util/work_item.h', |
253 ], | 175 'util/work_item_list.cc', |
254 'action': [ | 176 'util/work_item_list.h', |
255 'python', | 177 ], |
256 '<(version_py)', | 178 }], |
257 '-f', '<(VERSION)', | |
258 '-f', '<(BRANDING)', | |
259 '<(template_input_path)', | |
260 '<(template_output_path)', | |
261 ], | |
262 'process_outputs_as_sources': 1, | |
263 'message': 'Generating version information' | |
264 }, | |
265 { | |
266 'rule_name': 'installer_archive', | |
267 'extension': 'release', | |
268 'variables': { | |
269 'create_installer_archive_py_path': | |
270 '../tools/build/win/create_installer_archive.py', | |
271 'template_output_path': | |
272 '<(INTERMEDIATE_DIR)/mini_installer_exe_version.rc', | |
273 }, | |
274 'inputs': [ | |
275 '<(create_installer_archive_py_path)', | |
276 '<(PRODUCT_DIR)/chrome.exe', | |
277 '<(PRODUCT_DIR)/chrome.dll', | |
278 '<(PRODUCT_DIR)/locales/en-US.dll', | |
279 '<(PRODUCT_DIR)/icudt38.dll', | |
280 ], | |
281 'outputs': [ | |
282 'xxx.out', | |
283 '<(PRODUCT_DIR)/<(RULE_INPUT_NAME).7z', | |
284 '<(PRODUCT_DIR)/<(RULE_INPUT_NAME).packed.7z', | |
285 '<(PRODUCT_DIR)/setup.ex_', | |
286 '<(PRODUCT_DIR)/packed_files.txt', | |
287 ], | |
288 'action': [ | |
289 'python', | |
290 '<(create_installer_archive_py_path)', | |
291 '--output_dir=<(PRODUCT_DIR)', | |
292 '--input_file=<(RULE_INPUT_PATH)', | |
293 # TODO(sgk): may just use environment variables | |
294 #'--distribution=$(CHROMIUM_BUILD)', | |
295 '--distribution=_google_chrome', | |
296 ], | |
297 }, | |
298 ], | |
299 }, | |
300 { | |
301 'target_name': 'mini_installer_test', | |
302 'type': 'executable', | |
303 'msvs_guid': '4B6E199A-034A-49BD-AB93-458DD37E45B1', | |
304 'dependencies': [ | |
305 'installer_util', | |
306 '../../base/base.gyp:base', | |
307 '../../testing/gtest.gyp:gtest', | |
308 ], | |
309 'include_dirs': [ | |
310 '../..', | |
311 ], | |
312 'sources': [ | |
313 'setup/setup_constants.cc', | |
314 'util/run_all_unittests.cc', | |
315 '../test/mini_installer_test/chrome_mini_installer.cc', | |
316 '../test/mini_installer_test/chrome_mini_installer.h', | |
317 '../test/mini_installer_test/mini_installer_test_constants.cc', | |
318 '../test/mini_installer_test/mini_installer_test_constants.h', | |
319 '../test/mini_installer_test/test.cc', | |
320 ], | |
321 }, | |
322 { | |
323 'target_name': 'setup', | |
324 'type': 'executable', | |
325 'msvs_guid': '21C76E6E-8B38-44D6-8148-B589C13B9554', | |
326 'dependencies': [ | |
327 'installer_util', | |
328 'installer_util_strings', | |
329 '../chrome.gyp:app', | |
330 '../chrome.gyp:chrome_dll', | |
331 '../../build/win/system.gyp:cygwin', | |
332 '../../courgette/courgette.gyp:courgette_lib', | |
333 '../../third_party/bspatch/bspatch.gyp:bspatch', | |
334 ], | |
335 'include_dirs': [ | |
336 '../..', | |
337 '<(INTERMEDIATE_DIR)', | |
338 '<(SHARED_INTERMEDIATE_DIR)', | |
339 ], | |
340 'sources': [ | |
341 'mini_installer/chrome.release', | |
342 'setup/install.cc', | |
343 'setup/main.cc', | |
344 'setup/setup.cc', | |
345 'setup/setup.h', | |
346 'setup/setup.ico', | |
347 'setup/setup.rc', | |
348 'setup/setup_constants.cc', | |
349 'setup/setup_constants.h', | |
350 'setup/setup_exe_version.rc.version', | |
351 'setup/setup_resource.h', | |
352 'setup/uninstall.cc', | |
353 'setup/uninstall.h', | |
354 ], | |
355 'msvs_settings': { | |
356 'VCLinkerTool': { | |
357 'SubSystem': '2', # Set /SUBSYSTEM:WINDOWS | |
358 }, | |
359 }, | |
360 'rules': [ | |
361 { | |
362 'rule_name': 'setup_version', | |
363 'extension': 'version', | |
364 'variables': { | |
365 'version_py': '../../chrome/tools/build/version.py', | |
366 'VERSION': '../../chrome/VERSION', | |
367 'template_input_path': 'setup/setup_exe_version.rc.version', | |
368 'template_output_path': | |
369 '<(SHARED_INTERMEDIATE_DIR)/setup_exe_version.rc', | |
370 }, | |
371 'inputs': [ | |
372 '<(template_input_path)', | |
373 '<(VERSION)', | |
374 '<(BRANDING)', | |
375 ], | |
376 'outputs': [ | |
377 # Use a non-existant output so this action always runs and | |
378 # generates version information, e.g. to capture revision | |
379 # changes, which aren't captured by file dependencies. | |
380 '<(SHARED_INTERMEDIATE_DIR)/setup_exe_version.bogus', | |
381 | |
382 # And this is the real output, so that the build system knows | |
383 # what action generates it. | |
384 '<(template_output_path)', | |
385 ], | |
386 'action': [ | |
387 'python', | |
388 '<(version_py)', | |
389 '-f', '<(VERSION)', | |
390 '-f', '<(BRANDING)', | |
391 '<(template_input_path)', | |
392 '<(template_output_path)', | |
393 ], | |
394 'process_outputs_as_sources': 1, | |
395 'message': 'Generating version information' | |
396 }, | |
397 { | |
398 'rule_name': 'server_dlls', | |
399 'extension': 'release', | |
400 'variables': { | |
401 'scan_server_dlls_py' : '../tools/build/win/scan_server_dlls.py', | |
402 }, | |
403 'inputs': [ | |
404 '<scan_server_dlls_py)', | |
405 '<(PRODUCT_DIR)/chrome.exe', | |
406 '<(PRODUCT_DIR)/chrome.dll', | |
407 '<(PRODUCT_DIR)/locales/en-US.dll', | |
408 '<(PRODUCT_DIR)/icudt38.dll', | |
409 ], | |
410 'outputs': [ | |
411 '<(INTERMEDIATE_DIR)/registered_dlls.h', | |
412 ], | |
413 'action': [ | |
414 'python', | |
415 '<(scan_server_dlls_py)', | |
416 '--output_dir=<(INTERMEDIATE_DIR)', | |
417 '--input_file=<(RULE_INPUT_PATH)', | |
418 '--header_output_dir=<(INTERMEDIATE_DIR)', | |
419 # TODO(sgk): may just use environment variables | |
420 #'--distribution=$(CHROMIUM_BUILD)', | |
421 '--distribution=_google_chrome', | |
422 ], | |
423 }, | |
424 ], | 179 ], |
425 }, | 180 }, |
426 ], | 181 ], |
427 'conditions': [ | 182 'conditions': [ |
| 183 ['OS=="win"', { |
| 184 'targets': [ |
| 185 { |
| 186 'target_name': 'gcapi_dll', |
| 187 'type': 'loadable_module', |
| 188 'msvs_guid': 'B802A2FE-E4E2-4F5A-905A-D5128875C954', |
| 189 'dependencies': [ |
| 190 '../../google_update/google_update.gyp:google_update', |
| 191 ], |
| 192 'include_dirs': [ |
| 193 '../..', |
| 194 ], |
| 195 'sources': [ |
| 196 'gcapi/gcapi.cc', |
| 197 'gcapi/gcapi.h', |
| 198 ], |
| 199 }, |
| 200 { |
| 201 'target_name': 'gcapi_lib', |
| 202 'type': 'static_library', |
| 203 'msvs_guid': 'CD2FD73A-6AAB-4886-B887-760D18E8B635', |
| 204 'dependencies': [ |
| 205 '../../google_update/google_update.gyp:google_update', |
| 206 ], |
| 207 'include_dirs': [ |
| 208 '../..', |
| 209 ], |
| 210 'sources': [ |
| 211 'gcapi/gcapi.cc', |
| 212 'gcapi/gcapi.h', |
| 213 ], |
| 214 }, |
| 215 { |
| 216 'target_name': 'gcapi_test', |
| 217 'type': 'executable', |
| 218 'msvs_guid': 'B64B396B-8EF1-4B6B-A07E-48D40EB961AB', |
| 219 'dependencies': [ |
| 220 'gcapi_dll', |
| 221 'gcapi_lib', |
| 222 ], |
| 223 'include_dirs': [ |
| 224 '../..', |
| 225 ], |
| 226 'sources': [ |
| 227 'gcapi/gcapi_test.cc', |
| 228 'gcapi/gcapi_test.rc', |
| 229 'gcapi/resource.h', |
| 230 ], |
| 231 }, |
| 232 { |
| 233 'target_name': 'installer_unittests', |
| 234 'type': 'executable', |
| 235 'msvs_guid': '903F8C1E-537A-4C9E-97BE-075147CBE769', |
| 236 'dependencies': [ |
| 237 'installer_util', |
| 238 'installer_util_strings', |
| 239 '../../base/base.gyp:base', |
| 240 '../../testing/gtest.gyp:gtest', |
| 241 ], |
| 242 'include_dirs': [ |
| 243 '../..', |
| 244 ], |
| 245 'sources': [ |
| 246 'setup/compat_checks_unittest.cc', |
| 247 'setup/setup_constants.cc', |
| 248 'util/copy_tree_work_item_unittest.cc', |
| 249 'util/create_dir_work_item_unittest.cc', |
| 250 'util/create_reg_key_work_item_unittest.cc', |
| 251 'util/delete_reg_value_work_item_unittest.cc', |
| 252 'util/delete_tree_work_item_unittest.cc', |
| 253 'util/google_chrome_distribution_unittest.cc', |
| 254 'util/helper_unittest.cc', |
| 255 'util/installer_unittests.rc', |
| 256 'util/installer_unittests_resource.h', |
| 257 'util/move_tree_work_item_unittest.cc', |
| 258 'util/run_all_unittests.cc', |
| 259 'util/set_reg_value_work_item_unittest.cc', |
| 260 'util/work_item_list_unittest.cc', |
| 261 ], |
| 262 }, |
| 263 { |
| 264 'target_name': 'installer_util_strings', |
| 265 'type': 'none', |
| 266 'msvs_guid': '0026A376-C4F1-4575-A1BA-578C69F07013', |
| 267 'actions': [ |
| 268 { |
| 269 # TODO(sgk): Clean this up so that we pass in the |
| 270 # file names to the script instead of having it hard-code |
| 271 # matching path names internally. |
| 272 'action_name': 'installer_util_strings', |
| 273 'inputs': [ |
| 274 'util/prebuild/create_string_rc.py', |
| 275 '../app/generated_resources.grd', |
| 276 ], |
| 277 'outputs': [ |
| 278 '<(SHARED_INTERMEDIATE_DIR)/installer_util_strings/installer_uti
l_strings.rc', |
| 279 '<(SHARED_INTERMEDIATE_DIR)/installer_util_strings/installer_uti
l_strings.h', |
| 280 ], |
| 281 'action': [ |
| 282 # The create_string_rc.py script requires the checked-in |
| 283 # python.exe that has google modules installed, and |
| 284 # a PYTHONPATH pointing to grit so it can import FP. |
| 285 # TODO: clean this up |
| 286 'set PYTHONPATH=../../tools/grit/grit/extern', '&&', |
| 287 '../../third_party/python_24/python.exe', |
| 288 'util/prebuild/create_string_rc.py', |
| 289 '<(SHARED_INTERMEDIATE_DIR)/installer_util_strings' |
| 290 ], |
| 291 'msvs_cygwin_shell': 0, |
| 292 }, |
| 293 ], |
| 294 'direct_dependent_settings': { |
| 295 'include_dirs': [ |
| 296 '<(SHARED_INTERMEDIATE_DIR)/installer_util_strings', |
| 297 ], |
| 298 }, |
| 299 }, |
| 300 { |
| 301 'target_name': 'mini_installer', |
| 302 'type': 'executable', |
| 303 'msvs_guid': '24A5AC7C-280B-4899-9153-6BA570A081E7', |
| 304 'dependencies': [ |
| 305 '../chrome.gyp:app', |
| 306 '../chrome.gyp:chrome_dll', |
| 307 ], |
| 308 'include_dirs': [ |
| 309 '../..', |
| 310 '<(PRODUCT_DIR)', |
| 311 '<(INTERMEDIATE_DIR)', |
| 312 ], |
| 313 'sources': [ |
| 314 'mini_installer/chrome.release', |
| 315 'mini_installer/mini_installer.cc', |
| 316 'mini_installer/mini_installer.h', |
| 317 'mini_installer/mini_installer.ico', |
| 318 'mini_installer/mini_installer.rc', |
| 319 'mini_installer/mini_installer_exe_version.rc.version', |
| 320 'mini_installer/mini_installer_resource.h', |
| 321 'mini_installer/pe_resource.cc', |
| 322 'mini_installer/pe_resource.h', |
| 323 ], |
| 324 'msvs_settings': { |
| 325 'VCLinkerTool': { |
| 326 'SubSystem': '2', # Set /SUBSYSTEM:WINDOWS |
| 327 }, |
| 328 }, |
| 329 'rules': [ |
| 330 { |
| 331 'rule_name': 'mini_installer_version', |
| 332 'extension': 'version', |
| 333 'variables': { |
| 334 'template_input_path': 'mini_installer/mini_installer_exe_versio
n.rc.version', |
| 335 'template_output_path': |
| 336 '<(INTERMEDIATE_DIR)/mini_installer_exe_version.rc', |
| 337 }, |
| 338 'inputs': [ |
| 339 '<(template_input_path)', |
| 340 '<(VERSION)', |
| 341 '<(BRANDING)', |
| 342 ], |
| 343 'outputs': [ |
| 344 # Use a non-existant output so this action always runs and |
| 345 # generates version information, e.g. to capture revision |
| 346 # changes, which aren't captured by file dependencies. |
| 347 '<(INTERMEDIATE_DIR)/mini_installer_version.bogus', |
| 348 |
| 349 # And this is the real output, so that the build system knows |
| 350 # what action generates it. |
| 351 '<(template_output_path)', |
| 352 ], |
| 353 'action': [ |
| 354 'python', |
| 355 '<(version_py)', |
| 356 '-f', '<(VERSION)', |
| 357 '-f', '<(BRANDING)', |
| 358 '<(template_input_path)', |
| 359 '<(template_output_path)', |
| 360 ], |
| 361 'process_outputs_as_sources': 1, |
| 362 'message': 'Generating version information' |
| 363 }, |
| 364 { |
| 365 'rule_name': 'installer_archive', |
| 366 'extension': 'release', |
| 367 'variables': { |
| 368 'create_installer_archive_py_path': |
| 369 '../tools/build/win/create_installer_archive.py', |
| 370 'template_output_path': |
| 371 '<(INTERMEDIATE_DIR)/mini_installer_exe_version.rc', |
| 372 }, |
| 373 'inputs': [ |
| 374 '<(create_installer_archive_py_path)', |
| 375 '<(PRODUCT_DIR)/chrome.exe', |
| 376 '<(PRODUCT_DIR)/chrome.dll', |
| 377 '<(PRODUCT_DIR)/locales/en-US.dll', |
| 378 '<(PRODUCT_DIR)/icudt38.dll', |
| 379 ], |
| 380 'outputs': [ |
| 381 'xxx.out', |
| 382 '<(PRODUCT_DIR)/<(RULE_INPUT_NAME).7z', |
| 383 '<(PRODUCT_DIR)/<(RULE_INPUT_NAME).packed.7z', |
| 384 '<(PRODUCT_DIR)/setup.ex_', |
| 385 '<(PRODUCT_DIR)/packed_files.txt', |
| 386 ], |
| 387 'action': [ |
| 388 'python', |
| 389 '<(create_installer_archive_py_path)', |
| 390 '--output_dir=<(PRODUCT_DIR)', |
| 391 '--input_file=<(RULE_INPUT_PATH)', |
| 392 # TODO(sgk): may just use environment variables |
| 393 #'--distribution=$(CHROMIUM_BUILD)', |
| 394 '--distribution=_google_chrome', |
| 395 ], |
| 396 }, |
| 397 ], |
| 398 }, |
| 399 { |
| 400 'target_name': 'mini_installer_test', |
| 401 'type': 'executable', |
| 402 'msvs_guid': '4B6E199A-034A-49BD-AB93-458DD37E45B1', |
| 403 'dependencies': [ |
| 404 'installer_util', |
| 405 '../../base/base.gyp:base', |
| 406 '../../testing/gtest.gyp:gtest', |
| 407 ], |
| 408 'include_dirs': [ |
| 409 '../..', |
| 410 ], |
| 411 'sources': [ |
| 412 'setup/setup_constants.cc', |
| 413 'util/run_all_unittests.cc', |
| 414 '../test/mini_installer_test/chrome_mini_installer.cc', |
| 415 '../test/mini_installer_test/chrome_mini_installer.h', |
| 416 '../test/mini_installer_test/mini_installer_test_constants.cc', |
| 417 '../test/mini_installer_test/mini_installer_test_constants.h', |
| 418 '../test/mini_installer_test/test.cc', |
| 419 ], |
| 420 }, |
| 421 { |
| 422 'target_name': 'setup', |
| 423 'type': 'executable', |
| 424 'msvs_guid': '21C76E6E-8B38-44D6-8148-B589C13B9554', |
| 425 'dependencies': [ |
| 426 'installer_util', |
| 427 'installer_util_strings', |
| 428 '../chrome.gyp:app', |
| 429 '../chrome.gyp:chrome_dll', |
| 430 '../../build/win/system.gyp:cygwin', |
| 431 '../../courgette/courgette.gyp:courgette_lib', |
| 432 '../../third_party/bspatch/bspatch.gyp:bspatch', |
| 433 ], |
| 434 'include_dirs': [ |
| 435 '../..', |
| 436 '<(INTERMEDIATE_DIR)', |
| 437 '<(SHARED_INTERMEDIATE_DIR)', |
| 438 ], |
| 439 'sources': [ |
| 440 'mini_installer/chrome.release', |
| 441 'setup/install.cc', |
| 442 'setup/main.cc', |
| 443 'setup/setup.cc', |
| 444 'setup/setup.h', |
| 445 'setup/setup.ico', |
| 446 'setup/setup.rc', |
| 447 'setup/setup_constants.cc', |
| 448 'setup/setup_constants.h', |
| 449 'setup/setup_exe_version.rc.version', |
| 450 'setup/setup_resource.h', |
| 451 'setup/uninstall.cc', |
| 452 'setup/uninstall.h', |
| 453 ], |
| 454 'msvs_settings': { |
| 455 'VCLinkerTool': { |
| 456 'SubSystem': '2', # Set /SUBSYSTEM:WINDOWS |
| 457 }, |
| 458 }, |
| 459 'rules': [ |
| 460 { |
| 461 'rule_name': 'setup_version', |
| 462 'extension': 'version', |
| 463 'variables': { |
| 464 'version_py': '../../chrome/tools/build/version.py', |
| 465 'VERSION': '../../chrome/VERSION', |
| 466 'template_input_path': 'setup/setup_exe_version.rc.version', |
| 467 'template_output_path': |
| 468 '<(SHARED_INTERMEDIATE_DIR)/setup_exe_version.rc', |
| 469 }, |
| 470 'inputs': [ |
| 471 '<(template_input_path)', |
| 472 '<(VERSION)', |
| 473 '<(BRANDING)', |
| 474 ], |
| 475 'outputs': [ |
| 476 # Use a non-existant output so this action always runs and |
| 477 # generates version information, e.g. to capture revision |
| 478 # changes, which aren't captured by file dependencies. |
| 479 '<(SHARED_INTERMEDIATE_DIR)/setup_exe_version.bogus', |
| 480 |
| 481 # And this is the real output, so that the build system knows |
| 482 # what action generates it. |
| 483 '<(template_output_path)', |
| 484 ], |
| 485 'action': [ |
| 486 'python', |
| 487 '<(version_py)', |
| 488 '-f', '<(VERSION)', |
| 489 '-f', '<(BRANDING)', |
| 490 '<(template_input_path)', |
| 491 '<(template_output_path)', |
| 492 ], |
| 493 'process_outputs_as_sources': 1, |
| 494 'message': 'Generating version information' |
| 495 }, |
| 496 { |
| 497 'rule_name': 'server_dlls', |
| 498 'extension': 'release', |
| 499 'variables': { |
| 500 'scan_server_dlls_py' : '../tools/build/win/scan_server_dlls.py'
, |
| 501 }, |
| 502 'inputs': [ |
| 503 '<scan_server_dlls_py)', |
| 504 '<(PRODUCT_DIR)/chrome.exe', |
| 505 '<(PRODUCT_DIR)/chrome.dll', |
| 506 '<(PRODUCT_DIR)/locales/en-US.dll', |
| 507 '<(PRODUCT_DIR)/icudt38.dll', |
| 508 ], |
| 509 'outputs': [ |
| 510 '<(INTERMEDIATE_DIR)/registered_dlls.h', |
| 511 ], |
| 512 'action': [ |
| 513 'python', |
| 514 '<(scan_server_dlls_py)', |
| 515 '--output_dir=<(INTERMEDIATE_DIR)', |
| 516 '--input_file=<(RULE_INPUT_PATH)', |
| 517 '--header_output_dir=<(INTERMEDIATE_DIR)', |
| 518 # TODO(sgk): may just use environment variables |
| 519 #'--distribution=$(CHROMIUM_BUILD)', |
| 520 '--distribution=_google_chrome', |
| 521 ], |
| 522 }, |
| 523 ], |
| 524 }, |
| 525 ], |
| 526 }], |
428 [ 'branding == "Chrome"', { | 527 [ 'branding == "Chrome"', { |
429 'variables': { | 528 'variables': { |
430 'BRANDING': '../../chrome/app/theme/google_chrome/BRANDING', | 529 'BRANDING': '../../chrome/app/theme/google_chrome/BRANDING', |
431 }, | 530 }, |
432 }, { # else branding!="Chrome" | 531 }, { # else branding!="Chrome" |
433 'variables': { | 532 'variables': { |
434 'BRANDING': '../../chrome/app/theme/chromium/BRANDING', | 533 'BRANDING': '../../chrome/app/theme/chromium/BRANDING', |
435 }, | 534 }, |
436 }], | 535 }], |
437 ], | 536 ], |
438 } | 537 } |
OLD | NEW |