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

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

Issue 159641: Add Linux package building target. (Closed)
Patch Set: Created 11 years, 4 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 | « build/all.gyp ('k') | no next file » | 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_path': '../../chrome/VERSION', 4 'version_path': '../../chrome/VERSION',
5 'lastchange_path': '<(SHARED_INTERMEDIATE_DIR)/build/LASTCHANGE', 5 'lastchange_path': '<(SHARED_INTERMEDIATE_DIR)/build/LASTCHANGE',
6 # 'branding_dir' is set in the 'conditions' section at the bottom. 6 # 'branding_dir' is set in the 'conditions' section at the bottom.
7 }, 7 },
8 'includes': [ 8 'includes': [
9 '../../build/common.gypi', 9 '../../build/common.gypi',
10 ], 10 ],
11 'targets': [ 11 'conditions': [
12 { 12 ['OS=="win"', {
13 'target_name': 'installer_util', 13 'targets': [
14 'conditions': [ 14 {
15 ['OS=="linux"', { 15 'target_name': 'installer_util',
16 'type': 'none',
17 # Add these files to the build output so the build archives will be
18 # "hermetic" for packaging. This is only for branding="Chrome" since
19 # we only create packages for official builds.
20 'conditions': [
21 ['branding=="Chrome"', {
22 'variables': {
23 'lib32_dir': '<!(if uname -m | egrep -q "x86_64"; then echo lib3 2; else echo lib; fi)',
24 },
25 'copies': [
26 # Copy tools for generating packages from the build archive.
27 {
28 'destination': '<(PRODUCT_DIR)/installer/',
29 'files': [
30 'linux/internal/build_from_archive.sh',
31 ]
32 },
33 {
34 'destination': '<(PRODUCT_DIR)/installer/debian/',
35 'files': [
36 'linux/internal/debian/build.sh',
37 'linux/internal/debian/changelog.template',
38 'linux/internal/debian/control.template',
39 'linux/internal/debian/postinst',
40 'linux/internal/debian/postrm',
41 'linux/internal/debian/prerm',
42 ]
43 },
44 {
45 'destination': '<(PRODUCT_DIR)/installer/rpm/',
46 'files': [
47 'linux/internal/rpm/build.sh',
48 'linux/internal/rpm/chrome.spec.template',
49 ]
50 },
51 {
52 'destination': '<(PRODUCT_DIR)/installer/common/',
53 'files': [
54 'linux/internal/common/apt.include',
55 'linux/internal/common/desktop.template',
56 'linux/internal/common/default-app.template',
57 'linux/internal/common/default-app-block.template',
58 'linux/internal/common/google-chrome/google-chrome.info',
59 'linux/internal/common/installer.include',
60 'linux/internal/common/postinst.include',
61 'linux/internal/common/prerm.include',
62 'linux/internal/common/repo.cron',
63 'linux/internal/common/updater',
64 'linux/internal/common/wrapper',
65 ]
66 },
67 # System libs needed for 64-bit package building.
68 {
69 'destination': '<(PRODUCT_DIR)/installer/lib32/',
70 'files': [
71 '/usr/<(lib32_dir)/libsqlite3.so.0',
72 '/usr/<(lib32_dir)/libsqlite3.so.0.8.6',
73 '/usr/<(lib32_dir)/libnspr4.so.0d',
74 '/usr/<(lib32_dir)/libplds4.so.0d',
75 '/usr/<(lib32_dir)/libplc4.so.0d',
76 '/usr/<(lib32_dir)/libssl3.so.1d',
77 '/usr/<(lib32_dir)/libnss3.so.1d',
78 '/usr/<(lib32_dir)/libsmime3.so.1d',
79 '/usr/<(lib32_dir)/libnssutil3.so.1d',
80 '/usr/<(lib32_dir)/nss/libfreebl3.so',
81 '/usr/<(lib32_dir)/nss/libsoftokn3.chk',
82 '/usr/<(lib32_dir)/nss/libsoftokn3.so',
83 '/usr/<(lib32_dir)/nss/libnssckbi.so',
84 '/usr/<(lib32_dir)/nss/libnssdbm3.so',
85 '/usr/<(lib32_dir)/nss/libfreebl3.chk',
86 ],
87 },
88 # Additional theme resources needed for package building.
89 {
90 'destination': '<(PRODUCT_DIR)/installer/theme/',
91 'files': [
92 '<(branding_dir)/product_logo_16.png',
93 '<(branding_dir)/product_logo_32.png',
94 '<(branding_dir)/product_logo_48.png',
95 '<(branding_dir)/product_logo_256.png',
96 '<(branding_dir)/BRANDING',
97 ],
98 },
99 ],
100 'actions': [
101 {
102 'action_name': 'save_build_info',
103 'inputs': [
104 '<(branding_dir)/BRANDING',
105 '<(version_path)',
106 '<(lastchange_path)',
107 ],
108 'outputs': [
109 '<(PRODUCT_DIR)/installer/version.txt',
110 ],
111 # Just output the default version info variables.
112 'action': [
113 'python', '<(version_py)',
114 '-f', '<(branding_dir)/BRANDING',
115 '-f', '<(version_path)',
116 '-f', '<(lastchange_path)',
117 '-o', '<@(_outputs)'
118 ],
119 },
120 ],
121 }],
122 ],
123 }],
124 ['OS=="win"', {
125 'type': '<(library)', 16 'type': '<(library)',
126 'msvs_guid': 'EFBB1436-A63F-4CD8-9E99-B89226E782EC', 17 'msvs_guid': 'EFBB1436-A63F-4CD8-9E99-B89226E782EC',
127 'dependencies': [ 18 'dependencies': [
128 'installer_util_strings', 19 'installer_util_strings',
129 '../chrome.gyp:common', 20 '../chrome.gyp:common',
130 '../chrome.gyp:chrome_resources', 21 '../chrome.gyp:chrome_resources',
131 '../chrome.gyp:chrome_strings', 22 '../chrome.gyp:chrome_strings',
132 '../../third_party/icu38/icu38.gyp:icui18n', 23 '../../third_party/icu38/icu38.gyp:icui18n',
133 '../../third_party/icu38/icu38.gyp:icuuc', 24 '../../third_party/icu38/icu38.gyp:icuuc',
134 '../../third_party/libxml/libxml.gyp:libxml', 25 '../../third_party/libxml/libxml.gyp:libxml',
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
184 'util/util_constants.h', 75 'util/util_constants.h',
185 'util/version.cc', 76 'util/version.cc',
186 'util/version.h', 77 'util/version.h',
187 'util/work_item.cc', 78 'util/work_item.cc',
188 'util/work_item.h', 79 'util/work_item.h',
189 'util/work_item_list.cc', 80 'util/work_item_list.cc',
190 'util/work_item_list.h', 81 'util/work_item_list.h',
191 '../common/json_value_serializer.cc', 82 '../common/json_value_serializer.cc',
192 '../common/pref_names.cc', 83 '../common/pref_names.cc',
193 ], 84 ],
194 }], 85 },
195 ],
196 },
197 ],
198 'conditions': [
199 ['OS=="win"', {
200 'targets': [
201 { 86 {
202 'target_name': 'gcapi_dll', 87 'target_name': 'gcapi_dll',
203 'type': 'loadable_module', 88 'type': 'loadable_module',
204 'msvs_guid': 'B802A2FE-E4E2-4F5A-905A-D5128875C954', 89 'msvs_guid': 'B802A2FE-E4E2-4F5A-905A-D5128875C954',
205 'dependencies': [ 90 'dependencies': [
206 '../../google_update/google_update.gyp:google_update', 91 '../../google_update/google_update.gyp:google_update',
207 ], 92 ],
208 'include_dirs': [ 93 'include_dirs': [
209 '../..', 94 '../..',
210 ], 95 ],
(...skipping 265 matching lines...) Expand 10 before | Expand all | Expand 10 after
476 '../..', 361 '../..',
477 ], 362 ],
478 'sources': [ 363 'sources': [
479 'setup/run_all_unittests.cc', 364 'setup/run_all_unittests.cc',
480 'setup/setup_util.cc', 365 'setup/setup_util.cc',
481 'setup/setup_util_unittest.cc', 366 'setup/setup_util_unittest.cc',
482 ], 367 ],
483 }, 368 },
484 ], 369 ],
485 }], 370 }],
371 ['OS=="linux" and branding=="Chrome"', {
372 # Always google_chrome since this only applies to branding==Chrome.
373 'variables': {
374 'branding_dir': '../app/theme/google_chrome',
375 },
376 'targets': [
377 {
378 'target_name': 'installer_util',
379 'type': 'none',
380 # Add these files to the build output so the build archives will be
381 # "hermetic" for packaging. This is only for branding="Chrome" since
382 # we only create packages for official builds.
383 'variables': {
384 'lib32_dir': '<!(if uname -m | egrep -q "x86_64"; then echo lib32; e lse echo lib; fi)',
385 },
386 'copies': [
387 # Copy tools for generating packages from the build archive.
388 {
389 'destination': '<(PRODUCT_DIR)/installer/',
390 'files': [
391 'linux/internal/build_from_archive.sh',
392 ]
393 },
394 {
395 'destination': '<(PRODUCT_DIR)/installer/debian/',
396 'files': [
397 'linux/internal/debian/build.sh',
398 'linux/internal/debian/changelog.template',
399 'linux/internal/debian/control.template',
400 'linux/internal/debian/postinst',
401 'linux/internal/debian/postrm',
402 'linux/internal/debian/prerm',
403 ]
404 },
405 {
406 'destination': '<(PRODUCT_DIR)/installer/rpm/',
407 'files': [
408 'linux/internal/rpm/build.sh',
409 'linux/internal/rpm/chrome.spec.template',
410 ]
411 },
412 {
413 'destination': '<(PRODUCT_DIR)/installer/common/',
414 'files': [
415 'linux/internal/common/apt.include',
416 'linux/internal/common/desktop.template',
417 'linux/internal/common/default-app.template',
418 'linux/internal/common/default-app-block.template',
419 'linux/internal/common/google-chrome/google-chrome.info',
420 'linux/internal/common/installer.include',
421 'linux/internal/common/postinst.include',
422 'linux/internal/common/prerm.include',
423 'linux/internal/common/repo.cron',
424 'linux/internal/common/updater',
425 'linux/internal/common/wrapper',
426 ]
427 },
428 # System libs needed for 64-bit package building.
429 {
430 'destination': '<(PRODUCT_DIR)/installer/lib32/',
431 'files': [
432 '/usr/<(lib32_dir)/libsqlite3.so.0',
433 '/usr/<(lib32_dir)/libsqlite3.so.0.8.6',
434 '/usr/<(lib32_dir)/libnspr4.so.0d',
435 '/usr/<(lib32_dir)/libplds4.so.0d',
436 '/usr/<(lib32_dir)/libplc4.so.0d',
437 '/usr/<(lib32_dir)/libssl3.so.1d',
438 '/usr/<(lib32_dir)/libnss3.so.1d',
439 '/usr/<(lib32_dir)/libsmime3.so.1d',
440 '/usr/<(lib32_dir)/libnssutil3.so.1d',
441 '/usr/<(lib32_dir)/nss/libfreebl3.so',
442 '/usr/<(lib32_dir)/nss/libsoftokn3.chk',
443 '/usr/<(lib32_dir)/nss/libsoftokn3.so',
444 '/usr/<(lib32_dir)/nss/libnssckbi.so',
445 '/usr/<(lib32_dir)/nss/libnssdbm3.so',
446 '/usr/<(lib32_dir)/nss/libfreebl3.chk',
447 ],
448 },
449 # Additional theme resources needed for package building.
450 {
451 'destination': '<(PRODUCT_DIR)/installer/theme/',
452 'files': [
453 '<(branding_dir)/product_logo_16.png',
454 '<(branding_dir)/product_logo_32.png',
455 '<(branding_dir)/product_logo_48.png',
456 '<(branding_dir)/product_logo_256.png',
457 '<(branding_dir)/BRANDING',
458 ],
459 },
460 ],
461 'actions': [
462 {
463 'action_name': 'save_build_info',
464 'inputs': [
465 '<(branding_dir)/BRANDING',
466 '<(version_path)',
467 '<(lastchange_path)',
468 ],
469 'outputs': [
470 '<(PRODUCT_DIR)/installer/version.txt',
471 ],
472 # Just output the default version info variables.
473 'action': [
474 'python', '<(version_py)',
475 '-f', '<(branding_dir)/BRANDING',
476 '-f', '<(version_path)',
477 '-f', '<(lastchange_path)',
478 '-o', '<@(_outputs)'
479 ],
480 },
481 ],
482 },
483 {
484 'target_name': 'linux_packages',
485 'suppress_wildcard': 1,
486 'type': 'none',
487 'dependencies': [
488 '../chrome.gyp:chrome',
489 ],
490 'variables': {
491 'version' : '<!(echo -n "@MAJOR@.@MINOR@.@BUILD@.@PATCH@" | <(versio n_py) -f ../../chrome/VERSION /dev/stdin)',
492 'revision' : '<!(python ../../build/util/lastchange.py | cut -d "=" -f 2)',
493 },
494 'actions': [
495 {
496 'action_name': 'deb_packages',
497 'process_outputs_as_sources': 1,
Evan Martin 2009/07/30 17:06:52 I believe this is flag is only meaningful when you
498 'inputs': [
499 '<(PRODUCT_DIR)/installer/debian/build.sh',
500 # TODO Add all the build archive files. Share this with stage_bu ild.py somehow?
501 ],
502 'outputs': [
503 '<(PRODUCT_DIR)/google-chrome-unstable_<(version)-r<(revision)_i 386.deb',
504 '<(PRODUCT_DIR)/google-chrome-unstable_<(version)-r<(revision)_a md64.deb',
505 # TODO(mmoss) Add other outputs once we start building other cha nnels.
506 ],
507 'action': [
508 'bash', '<(_inputs)', '-o' '<(PRODUCT_DIR)', '-b', '<(PRODUCT_DI R)', '-c', 'dev',
509 ],
510 },
511 {
512 'action_name': 'rpm_packages',
513 'process_outputs_as_sources': 1,
Evan Martin 2009/07/30 17:06:52 same comment as above
514 'inputs': [
515 '<(PRODUCT_DIR)/installer/rpm/build.sh',
516 # TODO Add all the build archive files. Share this with stage_bu ild.py somehow?
517 ],
518 'outputs': [
519 '<(PRODUCT_DIR)/google-chrome-unstable-<(version)-<(revision).i3 86.rpm',
520 # TODO(mmoss) Add other outputs once we start building other cha nnels.
521 ],
522 'action': [
523 'bash', '<(_inputs)', '-o' '<(PRODUCT_DIR)', '-b', '<(PRODUCT_DI R)', '-c', 'dev',
524 ],
525 },
526 ],
527 },
528 ],
529 }],
486 [ 'branding == "Chrome"', { 530 [ 'branding == "Chrome"', {
487 'variables': { 531 'variables': {
488 'branding_dir': '../app/theme/google_chrome', 532 'branding_dir': '../app/theme/google_chrome',
489 }, 533 },
490 }, { # else branding!="Chrome" 534 }, { # else branding!="Chrome"
491 'variables': { 535 'variables': {
492 'branding_dir': '../app/theme/chromium', 536 'branding_dir': '../app/theme/chromium',
493 }, 537 },
494 }], 538 }],
495 ], 539 ],
496 } 540 }
OLDNEW
« no previous file with comments | « build/all.gyp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698