Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(30)

Side by Side Diff: chrome/installer/installer.gyp

Issue 115843: Add Linux packaging tools to the build output and the buildbot archive. (Closed)
Patch Set: merge gyp conditions blocks Created 11 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « chrome/chrome.gyp ('k') | chrome/tools/build/linux/FILES.official » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 }
OLDNEW
« no previous file with comments | « chrome/chrome.gyp ('k') | chrome/tools/build/linux/FILES.official » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698