| Index: build/common.gypi
|
| diff --git a/build/common.gypi b/build/common.gypi
|
| index 0390953622ee8dfb2c8a90571dfbc15d8b83d2ef..f5ab488ee30bdf6aca9595fda27bc7ba3e9b319c 100644
|
| --- a/build/common.gypi
|
| +++ b/build/common.gypi
|
| @@ -21,6 +21,9 @@
|
| # Whether we're building a ChromeOS build.
|
| 'chromeos%': 0,
|
|
|
| + # Whether we're building the cast (chromecast) shell
|
| + 'chromecast%': 0,
|
| +
|
| # Whether or not we are using the Aura windowing framework.
|
| 'use_aura%': 0,
|
|
|
| @@ -47,6 +50,7 @@
|
| },
|
| # Copy conditionally-set variables out one scope.
|
| 'chromeos%': '<(chromeos)',
|
| + 'chromecast%': '<(chromecast)',
|
| 'use_aura%': '<(use_aura)',
|
| 'use_ash%': '<(use_ash)',
|
| 'use_cras%': '<(use_cras)',
|
| @@ -92,6 +96,11 @@
|
| 'use_aura%': 1,
|
| }],
|
|
|
| + ['chromecast==1', {
|
| + 'embedded%': 1,
|
| + 'use_ozone%': 1,
|
| + }],
|
| +
|
| # Ozone uses Aura.
|
| ['use_ozone==1', {
|
| 'use_aura%': 1,
|
| @@ -109,12 +118,6 @@
|
| 'use_ozone%': 1,
|
| }],
|
|
|
| - ['embedded==1', {
|
| - 'use_system_fontconfig%': 0,
|
| - }, {
|
| - 'use_system_fontconfig%': 1,
|
| - }],
|
| -
|
| ['OS=="android"', {
|
| 'target_arch%': 'arm',
|
| }, {
|
| @@ -126,6 +129,7 @@
|
| },
|
| # Copy conditionally-set variables out one scope.
|
| 'chromeos%': '<(chromeos)',
|
| + 'chromecast%': '<(chromecast)',
|
| 'desktop_linux%': '<(desktop_linux)',
|
| 'use_aura%': '<(use_aura)',
|
| 'use_ash%': '<(use_ash)',
|
| @@ -134,7 +138,6 @@
|
| 'embedded%': '<(embedded)',
|
| 'use_openssl%': '<(use_openssl)',
|
| 'use_openssl_certs%': '<(use_openssl_certs)',
|
| - 'use_system_fontconfig%': '<(use_system_fontconfig)',
|
| 'enable_viewport%': '<(enable_viewport)',
|
| 'enable_hidpi%': '<(enable_hidpi)',
|
| 'buildtype%': '<(buildtype)',
|
| @@ -236,6 +239,7 @@
|
|
|
| # Copy conditionally-set variables out one scope.
|
| 'chromeos%': '<(chromeos)',
|
| + 'chromecast%': '<(chromecast)',
|
| 'host_arch%': '<(host_arch)',
|
| 'target_arch%': '<(target_arch)',
|
| 'target_subarch%': '<(target_subarch)',
|
| @@ -250,7 +254,6 @@
|
| 'embedded%': '<(embedded)',
|
| 'use_openssl%': '<(use_openssl)',
|
| 'use_openssl_certs%': '<(use_openssl_certs)',
|
| - 'use_system_fontconfig%': '<(use_system_fontconfig)',
|
| 'enable_viewport%': '<(enable_viewport)',
|
| 'enable_hidpi%': '<(enable_hidpi)',
|
| 'android_webview_build%': '<(android_webview_build)',
|
| @@ -709,9 +712,9 @@
|
| }],
|
|
|
| # Android OS includes support for proprietary codecs regardless of
|
| - # building Chromium or Google Chrome. We also ship Google Chrome with
|
| - # proprietary codecs.
|
| - ['OS=="android" or branding=="Chrome"', {
|
| + # building Chromium or Google Chrome. We also ship Google Chrome and
|
| + # Chromecast with proprietary codecs.
|
| + ['OS=="android" or branding=="Chrome" or chromecast==1', {
|
| 'proprietary_codecs%': 1,
|
| }, {
|
| 'proprietary_codecs%': 0,
|
| @@ -924,10 +927,10 @@
|
| }],
|
|
|
| # 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).
|
| # 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,
|
| 'spdy_proxy_auth_origin%': '',
|
| 'data_reduction_proxy_probe_url%': '',
|
| @@ -1023,12 +1026,12 @@
|
| 'use_ozone%': '<(use_ozone)',
|
| 'use_ozone_evdev%': '<(use_ozone_evdev)',
|
| 'use_clipboard_aurax11%': '<(use_clipboard_aurax11)',
|
| - 'use_system_fontconfig%': '<(use_system_fontconfig)',
|
| 'desktop_linux%': '<(desktop_linux)',
|
| 'use_x11%': '<(use_x11)',
|
| 'use_gnome_keyring%': '<(use_gnome_keyring)',
|
| 'linux_fpic%': '<(linux_fpic)',
|
| 'chromeos%': '<(chromeos)',
|
| + 'chromecast%': '<(chromecast)',
|
| 'enable_viewport%': '<(enable_viewport)',
|
| 'enable_hidpi%': '<(enable_hidpi)',
|
| 'use_xi2_mt%':'<(use_xi2_mt)',
|
| @@ -1750,6 +1753,24 @@
|
| # Copy it out one scope.
|
| 'android_webview_build%': '<(android_webview_build)',
|
| }], # 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', {
|
| # When building the WebView in the Android tree, jarjar will remap all
|
| # 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%': 0,
|
| @@ -2288,6 +2309,8 @@
|
|
|
| 'component%': '<(component)',
|
|
|
| + 'chromecast%': '<(chromecast)',
|
| +
|
| # See http://msdn.microsoft.com/en-us/library/aa652360(VS.71).aspx
|
| 'win_release_Optimization%': '2', # 2 = /Os
|
| 'win_debug_Optimization%': '0', # 0 = /Od
|
| @@ -2668,6 +2691,22 @@
|
| }],
|
| ], # win_z7!=0
|
| }], # 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', {
|
| 'defines': [
|
| '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',
|
| + ],
|
| + }],
|
| ],
|
| }],
|
| ],
|
|
|