Add chromecast_build gyp variable and add rules when the variable is set to 1.

BUG=336640

Review URL: https://codereview.chromium.org/223143004

git-svn-id: http://src.chromium.org/svn/trunk/src/build@281285 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This commit is contained in:
lcwu@chromium.org 2014-07-03 17:20:15 +00:00
Родитель a5996daefe
Коммит 3241db0ae3
2 изменённых файлов: 86 добавлений и 15 удалений

Просмотреть файл

@ -151,6 +151,11 @@
}], }],
], ],
}], }],
['chromecast==1', {
'dependencies': [
'../chromecast/chromecast.gyp:*',
],
}],
['use_x11==1', { ['use_x11==1', {
'dependencies': [ 'dependencies': [
'../tools/xdisplaycheck/xdisplaycheck.gyp:*', '../tools/xdisplaycheck/xdisplaycheck.gyp:*',

Просмотреть файл

@ -21,6 +21,9 @@
# Whether we're building a ChromeOS build. # Whether we're building a ChromeOS build.
'chromeos%': 0, 'chromeos%': 0,
# Whether we're building the cast (chromecast) shell
'chromecast%': 0,
# Whether or not we are using the Aura windowing framework. # Whether or not we are using the Aura windowing framework.
'use_aura%': 0, 'use_aura%': 0,
@ -47,6 +50,7 @@
}, },
# Copy conditionally-set variables out one scope. # Copy conditionally-set variables out one scope.
'chromeos%': '<(chromeos)', 'chromeos%': '<(chromeos)',
'chromecast%': '<(chromecast)',
'use_aura%': '<(use_aura)', 'use_aura%': '<(use_aura)',
'use_ash%': '<(use_ash)', 'use_ash%': '<(use_ash)',
'use_cras%': '<(use_cras)', 'use_cras%': '<(use_cras)',
@ -92,6 +96,11 @@
'use_aura%': 1, 'use_aura%': 1,
}], }],
['chromecast==1', {
'embedded%': 1,
'use_ozone%': 1,
}],
# Ozone uses Aura. # Ozone uses Aura.
['use_ozone==1', { ['use_ozone==1', {
'use_aura%': 1, 'use_aura%': 1,
@ -109,12 +118,6 @@
'use_ozone%': 1, 'use_ozone%': 1,
}], }],
['embedded==1', {
'use_system_fontconfig%': 0,
}, {
'use_system_fontconfig%': 1,
}],
['OS=="android"', { ['OS=="android"', {
'target_arch%': 'arm', 'target_arch%': 'arm',
}, { }, {
@ -126,6 +129,7 @@
}, },
# Copy conditionally-set variables out one scope. # Copy conditionally-set variables out one scope.
'chromeos%': '<(chromeos)', 'chromeos%': '<(chromeos)',
'chromecast%': '<(chromecast)',
'desktop_linux%': '<(desktop_linux)', 'desktop_linux%': '<(desktop_linux)',
'use_aura%': '<(use_aura)', 'use_aura%': '<(use_aura)',
'use_ash%': '<(use_ash)', 'use_ash%': '<(use_ash)',
@ -134,7 +138,6 @@
'embedded%': '<(embedded)', 'embedded%': '<(embedded)',
'use_openssl%': '<(use_openssl)', 'use_openssl%': '<(use_openssl)',
'use_openssl_certs%': '<(use_openssl_certs)', 'use_openssl_certs%': '<(use_openssl_certs)',
'use_system_fontconfig%': '<(use_system_fontconfig)',
'enable_viewport%': '<(enable_viewport)', 'enable_viewport%': '<(enable_viewport)',
'enable_hidpi%': '<(enable_hidpi)', 'enable_hidpi%': '<(enable_hidpi)',
'buildtype%': '<(buildtype)', 'buildtype%': '<(buildtype)',
@ -236,6 +239,7 @@
# Copy conditionally-set variables out one scope. # Copy conditionally-set variables out one scope.
'chromeos%': '<(chromeos)', 'chromeos%': '<(chromeos)',
'chromecast%': '<(chromecast)',
'host_arch%': '<(host_arch)', 'host_arch%': '<(host_arch)',
'target_arch%': '<(target_arch)', 'target_arch%': '<(target_arch)',
'target_subarch%': '<(target_subarch)', 'target_subarch%': '<(target_subarch)',
@ -250,7 +254,6 @@
'embedded%': '<(embedded)', 'embedded%': '<(embedded)',
'use_openssl%': '<(use_openssl)', 'use_openssl%': '<(use_openssl)',
'use_openssl_certs%': '<(use_openssl_certs)', 'use_openssl_certs%': '<(use_openssl_certs)',
'use_system_fontconfig%': '<(use_system_fontconfig)',
'enable_viewport%': '<(enable_viewport)', 'enable_viewport%': '<(enable_viewport)',
'enable_hidpi%': '<(enable_hidpi)', 'enable_hidpi%': '<(enable_hidpi)',
'android_webview_build%': '<(android_webview_build)', 'android_webview_build%': '<(android_webview_build)',
@ -709,9 +712,9 @@
}], }],
# Android OS includes support for proprietary codecs regardless of # Android OS includes support for proprietary codecs regardless of
# building Chromium or Google Chrome. We also ship Google Chrome with # building Chromium or Google Chrome. We also ship Google Chrome and
# proprietary codecs. # Chromecast with proprietary codecs.
['OS=="android" or branding=="Chrome"', { ['OS=="android" or branding=="Chrome" or chromecast==1', {
'proprietary_codecs%': 1, 'proprietary_codecs%': 1,
}, { }, {
'proprietary_codecs%': 0, 'proprietary_codecs%': 0,
@ -924,10 +927,10 @@
}], }],
# By default, use ICU data file (icudtl.dat) on all platforms # By default, use ICU data file (icudtl.dat) on all platforms
# except when building Android WebView. # except when building Android WebView or Chromecast.
# TODO(jshin): Handle 'use_system_icu' on Linux (Chromium). # TODO(jshin): Handle 'use_system_icu' on Linux (Chromium).
# Set the data reduction proxy origin for Android Webview. # Set the data reduction proxy origin for Android Webview.
['android_webview_build==0', { ['android_webview_build==0 and chromecast==0', {
'icu_use_data_file_flag%' : 1, 'icu_use_data_file_flag%' : 1,
'spdy_proxy_auth_origin%': '', 'spdy_proxy_auth_origin%': '',
'data_reduction_proxy_probe_url%': '', 'data_reduction_proxy_probe_url%': '',
@ -1023,12 +1026,12 @@
'use_ozone%': '<(use_ozone)', 'use_ozone%': '<(use_ozone)',
'use_ozone_evdev%': '<(use_ozone_evdev)', 'use_ozone_evdev%': '<(use_ozone_evdev)',
'use_clipboard_aurax11%': '<(use_clipboard_aurax11)', 'use_clipboard_aurax11%': '<(use_clipboard_aurax11)',
'use_system_fontconfig%': '<(use_system_fontconfig)',
'desktop_linux%': '<(desktop_linux)', 'desktop_linux%': '<(desktop_linux)',
'use_x11%': '<(use_x11)', 'use_x11%': '<(use_x11)',
'use_gnome_keyring%': '<(use_gnome_keyring)', 'use_gnome_keyring%': '<(use_gnome_keyring)',
'linux_fpic%': '<(linux_fpic)', 'linux_fpic%': '<(linux_fpic)',
'chromeos%': '<(chromeos)', 'chromeos%': '<(chromeos)',
'chromecast%': '<(chromecast)',
'enable_viewport%': '<(enable_viewport)', 'enable_viewport%': '<(enable_viewport)',
'enable_hidpi%': '<(enable_hidpi)', 'enable_hidpi%': '<(enable_hidpi)',
'use_xi2_mt%':'<(use_xi2_mt)', 'use_xi2_mt%':'<(use_xi2_mt)',
@ -1750,6 +1753,24 @@
# Copy it out one scope. # Copy it out one scope.
'android_webview_build%': '<(android_webview_build)', 'android_webview_build%': '<(android_webview_build)',
}], # OS=="android" }], # OS=="android"
['embedded==1', {
'use_system_fontconfig%': 0,
}, {
'use_system_fontconfig%': 1,
}],
['chromecast==1', {
'ffmpeg_branding%': 'Chrome',
'ozone_platform_ozonex%': 1,
'conditions': [
['target_arch=="arm"', {
'arm_arch%': '',
'arm_tune%': 'cortex-a9',
'arm_thumb%': 1,
'enable_mpeg2ts_stream_parser%': 1,
'video_hole%': 1,
}],
],
}],
['android_webview_build==1', { ['android_webview_build==1', {
# When building the WebView in the Android tree, jarjar will remap all # When building the WebView in the Android tree, jarjar will remap all
# the class names, so the JNI generator needs to know this. # the class names, so the JNI generator needs to know this.
@ -1877,7 +1898,7 @@
], ],
}], }],
['os_posix==1 and chromeos==0 and OS!="android" and OS!="ios"', { ['os_posix==1 and chromeos==0 and OS!="android" and OS!="ios" and embedded==0', {
'use_cups%': 1, 'use_cups%': 1,
}, { }, {
'use_cups%': 0, 'use_cups%': 0,
@ -2288,6 +2309,8 @@
'component%': '<(component)', 'component%': '<(component)',
'chromecast%': '<(chromecast)',
# See http://msdn.microsoft.com/en-us/library/aa652360(VS.71).aspx # See http://msdn.microsoft.com/en-us/library/aa652360(VS.71).aspx
'win_release_Optimization%': '2', # 2 = /Os 'win_release_Optimization%': '2', # 2 = /Os
'win_debug_Optimization%': '0', # 0 = /Od 'win_debug_Optimization%': '0', # 0 = /Od
@ -2668,6 +2691,22 @@
}], }],
], # win_z7!=0 ], # win_z7!=0
}], # OS==win }], # OS==win
['chromecast==1', {
'defines': [
'LOG_DISABLED=0',
],
'conditions': [
['target_arch=="arm"', {
'defines': [
# TODO(lcwu): Work around an error when building Chromium
# with gcc-4.5.3 (e.g. v8/src/platform-linux.cc). Remove
# this define once the toolchain is updated.
# See crbug.com/388933.
'__SOFTFP',
],
}],
],
}],
['enable_task_manager==1', { ['enable_task_manager==1', {
'defines': [ 'defines': [
'ENABLE_TASK_MANAGER=1', 'ENABLE_TASK_MANAGER=1',
@ -3717,6 +3756,33 @@
}], }],
], ],
}], }],
['chromecast==1', {
'cflags': [
# We set arm_arch to "" so that -march compiler option
# is not set. Otherwise a gcc bug that would complain
# about it conflicting with '-mcpu=cortex-a9'. The flag
# '-march=armv7-a' is actually redundant anyway because
# it is enabled by default when we built the toolchain.
# And using '-mcpu=cortex-a9' should be sufficient.
'-mcpu=cortex-a9',
'-funwind-tables',
# Breakpad requires symbols with debugging information
'-g',
],
'ldflags': [
# We want to statically link libstdc++/libgcc_s.
'-static-libstdc++',
'-static-libgcc',
],
'cflags!': [
# Some components in Chromium (e.g. v8, skia, ffmpeg)
# define their own cflags for arm builds that could
# conflict with the flags we set here (e.g.
# '-mcpu=cortex-a9'). Remove these flags explicitly.
'-march=armv7-a',
'-mtune=cortex-a8',
],
}],
], ],
}], }],
], ],