OLD | NEW |
---|---|
(Empty) | |
1 # Copyright (c) 2014 The Chromium Authors. All rights reserved. | |
2 # Use of this source code is governed by a BSD-style license that can be | |
3 # found in the LICENSE file. | |
4 | |
5 function setup_chromium_env_arm_chromecast() { | |
6 setup_chromium_env_common arm_chromecast $@ | |
7 | |
8 local tc_old="${CHROME_SRCROOT}/../../prebuilt/toolchain/arm-unknown-linux-gnu eabi-4.5.3-glibc/bin/arm-unknown-linux-gnueabi" | |
9 local tc_new="${CHROME_SRCROOT}/../../prebuilt/toolchain/armv7a/bin/armv7a-cro s-linux-gnueabi" | |
10 if [[ -e ${tc_old}-gcc ]]; then | |
11 tc=${tc_old} | |
12 elif [[ -e ${tc_new}-gcc ]]; then | |
13 tc=${tc_new} | |
14 else | |
15 echo "could not find toolchain" | |
16 exit 1 | |
17 fi | |
18 setup_build_toolchain "${tc}" | |
19 | |
20 setup_chromium_env_common_chromecast | |
21 | |
22 # If using a hardfloat toolchain, set the gyp defines for it. | |
23 if [[ ! -e ${CHROME_SRCROOT}/../../prebuilt/toolchain/arm-unknown-linux-gnueab i-4.5.3-glibc/bin/arm-unknown-linux-gnueabi-gcc && | |
24 ( -e ${CHROME_SRCROOT}/../../prebuilt/toolchain/armv7a/bin/armv7a-cros-l inux-gnueabi-gcc || | |
25 -e `which armv7a-cros-linux-gnueabi-gcc` ) ]]; then | |
26 export GYP_DEFINES="${GYP_DEFINES} arm_float_abi=hard v8_use_arm_eabi_hardfl oat=true" | |
27 fi | |
28 | |
29 # Check if widevine is available. | |
30 if [ -d "${CHROME_SRCROOT}/chromecast/internal/widevine_cdm" ]; then | |
31 export GYP_DEFINES="${GYP_DEFINES} use_widevine=1" | |
32 fi | |
33 | |
34 # Check if playready is available. | |
35 if [ -d "${CHROME_SRCROOT}/chromecast/internal/playready_cdm" ]; then | |
36 export GYP_DEFINES="${GYP_DEFINES} use_playready=1" | |
37 fi | |
38 | |
39 # - arm_thumb=1: turn on Thumb mode for a smaller executable. | |
40 # - armv7=1: We are using a Cortex A9 which support Arm V7. | |
41 # - cast_uses_directfb=0 (use MARVELL's graphics directly) | |
42 # - chromecast_branding=Chrome: Whether this is internal release build | |
43 # (Chrome) or public build (Chromium) | |
44 # - linux_use_gold_binary=0: Don't use gold linker. | |
45 # - linux_use_gold_flags=0: Don't use gold specific flags. | |
46 # - sysroot: Set the build sysroot directory | |
47 # - target_arch=arm : this is ARM. | |
48 # - use_alsa=0 | |
49 # - use_libjpeg_turbo=1: Use libjpeg_turbo for arm build | |
50 # - use_pulseaudio=0 | |
51 # - use_system_libjpeg=0 | |
52 # - video_hole=1: Enable video hole punching | |
53 local defines=" | |
54 arm_arch='' | |
jam
2014/04/04 01:01:24
i wonder if this stuff better belongs in build/com
lcwu1
2014/04/05 01:17:13
Yes, I too prefer what you suggested. (In fact, in
jam
2014/04/07 17:32:01
I see. ok btw this is what android does (they set
| |
55 arm_tune='cortex-a9' | |
56 arm_thumb=1 | |
57 armv7=1 | |
58 cast_uses_directfb=0 | |
59 chromecast_branding=Chrome | |
60 linux_use_gold_binary=0 | |
61 linux_use_gold_flags=0 | |
62 sysroot=${CHROME_SRCROOT}/../../${TARGET_OUT_TOOLCHAIN:-out/target/product/ancho vy/build_sysroot} | |
63 target_arch=arm | |
64 use_alsa=0 | |
65 use_libjpeg_turbo=1 | |
66 use_pulseaudio=0 | |
67 use_system_libjpeg=0 | |
68 video_hole=1 | |
69 " | |
70 | |
71 export GYP_DEFINES="${GYP_DEFINES} ${defines}" | |
72 } | |
73 | |
74 function setup_chrome_env_arm_chromecast() { | |
75 setup_chromium_env_arm_chromecast $@ | |
76 brand_as_chrome | |
77 } | |
OLD | NEW |