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

Unified Diff: chrome/installer/installer.gyp

Issue 418021: Make Linux packaging options more granular. (Closed)
Patch Set: default to all packages Created 11 years, 1 month 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/chrome.gyp ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/installer/installer.gyp
diff --git a/chrome/installer/installer.gyp b/chrome/installer/installer.gyp
index 13f988f1bce0772375dcea691bce559e30a83040..41a056a688b21516fdb01072eb01476fcf5b2286 100644
--- a/chrome/installer/installer.gyp
+++ b/chrome/installer/installer.gyp
@@ -379,9 +379,11 @@
],
}],
['OS=="linux" and branding=="Chrome"', {
- # Always google_chrome since this only applies to branding==Chrome.
'variables': {
+ # Always google_chrome since this only applies to branding==Chrome.
'branding_dir': '../app/theme/google_chrome',
+ 'version' : '<!(python <(version_py) -f ../../chrome/VERSION -t "@MAJOR@.@MINOR@.@BUILD@.@PATCH@")',
+ 'revision' : '<!(python ../../build/util/lastchange.py | cut -d "=" -f 2)',
'packaging_files_common': [
'linux/internal/common/apt.include',
'linux/internal/common/default-app.template',
@@ -411,10 +413,37 @@
'linux/internal/rpm/build.sh',
'linux/internal/rpm/chrome.spec.template',
],
+ 'packaging_files_binaries': [
+ # TODO(mmoss) Any convenient way to get all the relevant build
+ # files? (e.g. all locales, resources, etc.)
+ '<(PRODUCT_DIR)/chrome',
+ '<(PRODUCT_DIR)/chrome.pak',
+ '<(PRODUCT_DIR)/chrome_sandbox',
+ '<(PRODUCT_DIR)/libffmpegsumo.so',
+ '<(PRODUCT_DIR)/xdg-settings',
+ '<(PRODUCT_DIR)/locales/en-US.pak',
+ ],
+ 'flock_bash': ['flock', '--', '/tmp/linux_package_lock', 'bash'],
+ 'deb_build': '<(PRODUCT_DIR)/installer/debian/build.sh',
+ 'rpm_build': '<(PRODUCT_DIR)/installer/rpm/build.sh',
+ 'deb_cmd': ['<@(flock_bash)', '<(deb_build)', '-o' '<(PRODUCT_DIR)',
+ '-b', '<(PRODUCT_DIR)', '-a', '<(target_arch)'],
+ 'rpm_cmd': ['<@(flock_bash)', '<(rpm_build)', '-o' '<(PRODUCT_DIR)',
+ '-b', '<(PRODUCT_DIR)', '-a', '<(target_arch)'],
+ 'conditions': [
+ ['target_arch=="ia32"', {
+ 'deb_arch': 'i386',
+ 'rpm_arch': 'i386',
+ }],
+ ['target_arch=="x64"', {
+ 'deb_arch': 'amd64',
+ 'rpm_arch': 'x86_64',
+ }],
+ ],
},
'targets': [
{
- 'target_name': 'installer_util',
+ 'target_name': 'linux_installer_configs',
'type': 'none',
# Add these files to the build output so the build archives will be
# "hermetic" for packaging. This is only for branding="Chrome" since
@@ -481,47 +510,120 @@
],
},
{
- 'target_name': 'linux_packages',
+ 'target_name': 'linux_packages_all',
+ 'suppress_wildcard': 1,
+ 'type': 'none',
+ 'dependencies': [
+ 'linux_packages_unstable',
+ 'linux_packages_beta',
+ 'linux_packages_stable',
+ ],
+ },
+ {
+ # 'trunk' is a developer, testing-only package, so it shouldn't be
+ # included in the 'linux_packages_all' collection.
+ 'target_name': 'linux_packages_trunk',
+ 'suppress_wildcard': 1,
+ 'type': 'none',
+ 'dependencies': [
+ 'linux_packages_trunk_deb',
+ ],
+ # ChromeOS doesn't care about RPM packages.
+ 'conditions': [
+ ['chromeos==0 and toolkit_views==0', {
+ 'dependencies': [
+ 'linux_packages_trunk_rpm',
+ ],
+ }],
+ ],
+ },
+ {
+ 'target_name': 'linux_packages_unstable',
+ 'suppress_wildcard': 1,
+ 'type': 'none',
+ 'dependencies': [
+ 'linux_packages_unstable_deb',
+ ],
+ # ChromeOS doesn't care about RPM packages.
+ 'conditions': [
+ ['chromeos==0 and toolkit_views==0', {
+ 'dependencies': [
+ 'linux_packages_unstable_rpm',
+ ],
+ }],
+ ],
+ },
+ {
+ 'target_name': 'linux_packages_beta',
+ 'suppress_wildcard': 1,
+ 'type': 'none',
+ 'dependencies': [
+ 'linux_packages_beta_deb',
+ ],
+ # ChromeOS doesn't care about RPM packages.
+ 'conditions': [
+ ['chromeos==0 and toolkit_views==0', {
+ 'dependencies': [
+ 'linux_packages_beta_rpm',
+ ],
+ }],
+ ],
+ },
+ {
+ 'target_name': 'linux_packages_stable',
+ 'suppress_wildcard': 1,
+ 'type': 'none',
+ 'dependencies': [
+ 'linux_packages_stable_deb',
+ ],
+ # ChromeOS doesn't care about RPM packages.
+ 'conditions': [
+ ['chromeos==0 and toolkit_views==0', {
+ 'dependencies': [
+ 'linux_packages_stable_rpm',
+ ],
+ }],
+ ],
+ },
+ # TODO(mmoss) gyp looping construct would be handy here ...
+ # These package actions are the same except for the 'channel' variable.
+ {
+ 'target_name': 'linux_packages_trunk_deb',
+ 'suppress_wildcard': 1,
+ 'type': 'none',
+ 'dependencies': [
+ '../chrome.gyp:chrome',
+ 'linux_installer_configs',
+ ],
+ 'actions': [
+ {
+ 'variables': {
+ 'channel': 'trunk',
+ },
+ 'action_name': 'deb_packages_<(channel)',
+ 'process_outputs_as_sources': 1,
+ 'inputs': [
+ '<(deb_build)',
+ '<@(packaging_files_binaries)',
+ '<@(packaging_files_common)',
+ '<@(packaging_files_deb)',
+ ],
+ 'outputs': [
+ '<(PRODUCT_DIR)/google-chrome-<(channel)_<(version)-r<(revision)_<(deb_arch).deb',
+ ],
+ 'action': [ '<@(deb_cmd)', '-c', '<(channel)', ],
+ },
+ ],
+ },
+ {
+ 'target_name': 'linux_packages_unstable_deb',
'suppress_wildcard': 1,
'type': 'none',
'dependencies': [
'../chrome.gyp:chrome',
+ 'linux_installer_configs',
],
- 'variables': {
- 'version' : '<!(python <(version_py) -f ../../chrome/VERSION -t "@MAJOR@.@MINOR@.@BUILD@.@PATCH@")',
- 'revision' : '<!(python ../../build/util/lastchange.py | cut -d "=" -f 2)',
- 'input_files': [
- # TODO(mmoss) Any convenient way to get all the relevant build
- # files? (e.g. all locales, resources, etc.)
- '<(PRODUCT_DIR)/chrome',
- '<(PRODUCT_DIR)/chrome.pak',
- '<(PRODUCT_DIR)/chrome_sandbox',
- '<(PRODUCT_DIR)/libffmpegsumo.so',
- '<(PRODUCT_DIR)/xdg-settings',
- '<(PRODUCT_DIR)/locales/en-US.pak',
- ],
- 'flock_bash': ['flock', '--', '/tmp/linux_package_lock', 'bash'],
- 'deb_build': '<(PRODUCT_DIR)/installer/debian/build.sh',
- 'rpm_build': '<(PRODUCT_DIR)/installer/rpm/build.sh',
- 'deb_cmd': ['<@(flock_bash)', '<(deb_build)', '-o' '<(PRODUCT_DIR)',
- '-b', '<(PRODUCT_DIR)', '-a', '<(target_arch)'],
- 'rpm_cmd': ['<@(flock_bash)', '<(rpm_build)', '-o' '<(PRODUCT_DIR)',
- '-b', '<(PRODUCT_DIR)', '-a', '<(target_arch)'],
- 'conditions': [
- ['target_arch=="ia32"', {
- 'deb_arch': 'i386',
- 'rpm_arch': 'i386',
- }],
- ['target_arch=="x64"', {
- 'deb_arch': 'amd64',
- 'rpm_arch': 'x86_64',
- }],
- ],
- },
'actions': [
- # TODO(mmoss) gyp looping construct would be handy here ...
- # These deb_packages* and rpm_packages* actions are the same except
- # for the 'channel' variable.
{
'variables': {
'channel': 'unstable',
@@ -530,7 +632,7 @@
'process_outputs_as_sources': 1,
'inputs': [
'<(deb_build)',
- '<@(input_files)',
+ '<@(packaging_files_binaries)',
'<@(packaging_files_common)',
'<@(packaging_files_deb)',
],
@@ -539,6 +641,17 @@
],
'action': [ '<@(deb_cmd)', '-c', '<(channel)', ],
},
+ ],
+ },
+ {
+ 'target_name': 'linux_packages_beta_deb',
+ 'suppress_wildcard': 1,
+ 'type': 'none',
+ 'dependencies': [
+ '../chrome.gyp:chrome',
+ 'linux_installer_configs',
+ ],
+ 'actions': [
{
'variables': {
'channel': 'beta',
@@ -547,7 +660,7 @@
'process_outputs_as_sources': 1,
'inputs': [
'<(deb_build)',
- '<@(input_files)',
+ '<@(packaging_files_binaries)',
'<@(packaging_files_common)',
'<@(packaging_files_deb)',
],
@@ -556,6 +669,17 @@
],
'action': [ '<@(deb_cmd)', '-c', '<(channel)', ],
},
+ ],
+ },
+ {
+ 'target_name': 'linux_packages_stable_deb',
+ 'suppress_wildcard': 1,
+ 'type': 'none',
+ 'dependencies': [
+ '../chrome.gyp:chrome',
+ 'linux_installer_configs',
+ ],
+ 'actions': [
{
'variables': {
'channel': 'stable',
@@ -564,7 +688,7 @@
'process_outputs_as_sources': 1,
'inputs': [
'<(deb_build)',
- '<@(input_files)',
+ '<@(packaging_files_binaries)',
'<@(packaging_files_common)',
'<@(packaging_files_deb)',
],
@@ -574,68 +698,121 @@
'action': [ '<@(deb_cmd)', '-c', '<(channel)', ],
},
],
- 'conditions': [
- ['chromeos==0 and toolkit_views==0', {
- 'actions': [
- {
- 'variables': {
- 'channel': 'unstable',
- },
- 'action_name': 'rpm_packages_<(channel)',
- 'process_outputs_as_sources': 1,
- 'inputs': [
- '<(rpm_build)',
- '<(PRODUCT_DIR)/installer/rpm/chrome.spec.template',
- '<@(input_files)',
- '<@(packaging_files_common)',
- '<@(packaging_files_rpm)',
- ],
- 'outputs': [
- '<(PRODUCT_DIR)/google-chrome-<(channel)-<(version)-<(revision).<(rpm_arch).rpm',
- ],
- 'action': [ '<@(rpm_cmd)', '-c', '<(channel)', ],
- },
- {
- 'variables': {
- 'channel': 'beta',
- },
- 'action_name': 'rpm_packages_<(channel)',
- 'process_outputs_as_sources': 1,
- 'inputs': [
- '<(rpm_build)',
- '<(PRODUCT_DIR)/installer/rpm/chrome.spec.template',
- '<@(input_files)',
- '<@(packaging_files_common)',
- '<@(packaging_files_rpm)',
- ],
- 'outputs': [
- '<(PRODUCT_DIR)/google-chrome-<(channel)-<(version)-<(revision).<(rpm_arch).rpm',
- ],
- 'action': [ '<@(rpm_cmd)', '-c', '<(channel)', ],
- },
- {
- 'variables': {
- 'channel': 'stable',
- },
- 'action_name': 'rpm_packages_<(channel)',
- 'process_outputs_as_sources': 1,
- 'inputs': [
- '<(rpm_build)',
- '<(PRODUCT_DIR)/installer/rpm/chrome.spec.template',
- '<@(input_files)',
- '<@(packaging_files_common)',
- '<@(packaging_files_rpm)',
- ],
- 'outputs': [
- '<(PRODUCT_DIR)/google-chrome-<(channel)-<(version)-<(revision).<(rpm_arch).rpm',
- ],
- 'action': [ '<@(rpm_cmd)', '-c', '<(channel)', ],
- },
+ },
+ {
+ 'target_name': 'linux_packages_trunk_rpm',
+ 'suppress_wildcard': 1,
+ 'type': 'none',
+ 'dependencies': [
+ '../chrome.gyp:chrome',
+ 'linux_installer_configs',
+ ],
+ 'actions': [
+ {
+ 'variables': {
+ 'channel': 'trunk',
+ },
+ 'action_name': 'rpm_packages_<(channel)',
+ 'process_outputs_as_sources': 1,
+ 'inputs': [
+ '<(rpm_build)',
+ '<(PRODUCT_DIR)/installer/rpm/chrome.spec.template',
+ '<@(packaging_files_binaries)',
+ '<@(packaging_files_common)',
+ '<@(packaging_files_rpm)',
],
- }],
- ['target_arch=="x64"', {
- # TODO(mmoss) 64-bit RPMs not ready yet.
- }],
+ 'outputs': [
+ '<(PRODUCT_DIR)/google-chrome-<(channel)-<(version)-<(revision).<(rpm_arch).rpm',
+ ],
+ 'action': [ '<@(rpm_cmd)', '-c', '<(channel)', ],
+ },
+ ],
+ },
+ {
+ 'target_name': 'linux_packages_unstable_rpm',
+ 'suppress_wildcard': 1,
+ 'type': 'none',
+ 'dependencies': [
+ '../chrome.gyp:chrome',
+ 'linux_installer_configs',
+ ],
+ 'actions': [
+ {
+ 'variables': {
+ 'channel': 'unstable',
+ },
+ 'action_name': 'rpm_packages_<(channel)',
+ 'process_outputs_as_sources': 1,
+ 'inputs': [
+ '<(rpm_build)',
+ '<(PRODUCT_DIR)/installer/rpm/chrome.spec.template',
+ '<@(packaging_files_binaries)',
+ '<@(packaging_files_common)',
+ '<@(packaging_files_rpm)',
+ ],
+ 'outputs': [
+ '<(PRODUCT_DIR)/google-chrome-<(channel)-<(version)-<(revision).<(rpm_arch).rpm',
+ ],
+ 'action': [ '<@(rpm_cmd)', '-c', '<(channel)', ],
+ },
+ ],
+ },
+ {
+ 'target_name': 'linux_packages_beta_rpm',
+ 'suppress_wildcard': 1,
+ 'type': 'none',
+ 'dependencies': [
+ '../chrome.gyp:chrome',
+ 'linux_installer_configs',
+ ],
+ 'actions': [
+ {
+ 'variables': {
+ 'channel': 'beta',
+ },
+ 'action_name': 'rpm_packages_<(channel)',
+ 'process_outputs_as_sources': 1,
+ 'inputs': [
+ '<(rpm_build)',
+ '<(PRODUCT_DIR)/installer/rpm/chrome.spec.template',
+ '<@(packaging_files_binaries)',
+ '<@(packaging_files_common)',
+ '<@(packaging_files_rpm)',
+ ],
+ 'outputs': [
+ '<(PRODUCT_DIR)/google-chrome-<(channel)-<(version)-<(revision).<(rpm_arch).rpm',
+ ],
+ 'action': [ '<@(rpm_cmd)', '-c', '<(channel)', ],
+ },
+ ],
+ },
+ {
+ 'target_name': 'linux_packages_stable_rpm',
+ 'suppress_wildcard': 1,
+ 'type': 'none',
+ 'dependencies': [
+ '../chrome.gyp:chrome',
+ 'linux_installer_configs',
+ ],
+ 'actions': [
+ {
+ 'variables': {
+ 'channel': 'stable',
+ },
+ 'action_name': 'rpm_packages_<(channel)',
+ 'process_outputs_as_sources': 1,
+ 'inputs': [
+ '<(rpm_build)',
+ '<(PRODUCT_DIR)/installer/rpm/chrome.spec.template',
+ '<@(packaging_files_binaries)',
+ '<@(packaging_files_common)',
+ '<@(packaging_files_rpm)',
+ ],
+ 'outputs': [
+ '<(PRODUCT_DIR)/google-chrome-<(channel)-<(version)-<(revision).<(rpm_arch).rpm',
+ ],
+ 'action': [ '<@(rpm_cmd)', '-c', '<(channel)', ],
+ },
],
},
],
« no previous file with comments | « chrome/chrome.gyp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698