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

Side by Side Diff: platform_tools/android/bin/android_setup.sh

Issue 22411004: Re-organize Android scripts (Closed) Base URL: http://skia.googlecode.com/svn/trunk/
Patch Set: Created 7 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 | Annotate | Revision Log
« no previous file with comments | « platform_tools/android/bin/android_make ('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 #!/bin/bash
2 #
3 # android_setup.sh: Sets environment variables used by other Android scripts.
4
5 # Parse the arguments for a DEVICE_ID.
6 DEVICE_ID=""
7 while (( "$#" )); do
8 if [[ $(echo "$1" | grep "^-d$") != "" ]];
9 then
10 DEVICE_ID=$2
11 shift
12 else
13 APP_ARGS="$APP_ARGS $1"
14 fi
15
16 shift
17 done
18
19 APP_ARGS=$(echo ${APP_ARGS} | sed 's/^ *//g')
20
1 function exportVar { 21 function exportVar {
2 NAME=$1 22 NAME=$1
3 VALUE=$2 23 VALUE=$2
4 echo export $NAME=\"$VALUE\" 24 echo export $NAME=\"$VALUE\"
5 export $NAME="$VALUE" 25 export $NAME="$VALUE"
6 } 26 }
7 27
8 SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" 28 SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
9 29
10 # A valid Android SDK installation is required to build the sample app. 30 # A valid Android SDK installation is required to build the sample app.
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after
98 LS="/bin/ls" # Use directly to avoid any 'ls' alias that might be defined. 118 LS="/bin/ls" # Use directly to avoid any 'ls' alias that might be defined.
99 GCC=$($LS $ANDROID_TOOLCHAIN/*-gcc | head -n1) 119 GCC=$($LS $ANDROID_TOOLCHAIN/*-gcc | head -n1)
100 if [ -z "$GCC" ]; then 120 if [ -z "$GCC" ]; then
101 echo "ERROR: Could not find Android cross-compiler in: $ANDROID_TOOLCHAIN" 121 echo "ERROR: Could not find Android cross-compiler in: $ANDROID_TOOLCHAIN"
102 return 1 122 return 1
103 fi 123 fi
104 124
105 # Remove the '-gcc' at the end to get the full toolchain prefix 125 # Remove the '-gcc' at the end to get the full toolchain prefix
106 ANDROID_TOOLCHAIN_PREFIX=${GCC%%-gcc} 126 ANDROID_TOOLCHAIN_PREFIX=${GCC%%-gcc}
107 127
108 exportVar AR "$ANDROID_TOOLCHAIN_PREFIX-ar"
109 if [[ -z "$ANDROID_MAKE_CCACHE" ]]; then 128 if [[ -z "$ANDROID_MAKE_CCACHE" ]]; then
110 exportVar CC "$ANDROID_TOOLCHAIN_PREFIX-gcc" 129 export CC="$ANDROID_TOOLCHAIN_PREFIX-gcc"
111 exportVar CXX "$ANDROID_TOOLCHAIN_PREFIX-g++" 130 export CXX="$ANDROID_TOOLCHAIN_PREFIX-g++"
112 exportVar LINK "$ANDROID_TOOLCHAIN_PREFIX-gcc" 131 export LINK="$ANDROID_TOOLCHAIN_PREFIX-gcc"
113 else 132 else
114 exportVar CC "$ANDROID_MAKE_CCACHE $ANDROID_TOOLCHAIN_PREFIX-gcc" 133 export CC="$ANDROID_MAKE_CCACHE $ANDROID_TOOLCHAIN_PREFIX-gcc"
115 exportVar CXX "$ANDROID_MAKE_CCACHE $ANDROID_TOOLCHAIN_PREFIX-g++" 134 export CXX="$ANDROID_MAKE_CCACHE $ANDROID_TOOLCHAIN_PREFIX-g++"
116 exportVar LINK "$ANDROID_MAKE_CCACHE $ANDROID_TOOLCHAIN_PREFIX-gcc" 135 export LINK="$ANDROID_MAKE_CCACHE $ANDROID_TOOLCHAIN_PREFIX-gcc"
117 fi 136 fi
118 exportVar RANLIB "$ANDROID_TOOLCHAIN_PREFIX-ranlib" 137 export AR="$ANDROID_TOOLCHAIN_PREFIX-ar"
119 exportVar OBJCOPY "$ANDROID_TOOLCHAIN_PREFIX-objcopy" 138 export RANLIB="$ANDROID_TOOLCHAIN_PREFIX-ranlib"
120 exportVar STRIP "$ANDROID_TOOLCHAIN_PREFIX-strip" 139 export OBJCOPY="$ANDROID_TOOLCHAIN_PREFIX-objcopy"
140 export STRIP="$ANDROID_TOOLCHAIN_PREFIX-strip"
121 } 141 }
122 142
123 # Helper function to configure the GYP defines to the appropriate values 143 # Helper function to configure the GYP defines to the appropriate values
124 # based on the target device. 144 # based on the target device.
125 setup_device() { 145 setup_device() {
126 DEFINES="OS=android" 146 DEFINES="OS=android"
127 DEFINES="${DEFINES} host_os=$(uname -s | sed -e 's/Linux/linux/;s/Darwin/mac/' )" 147 DEFINES="${DEFINES} host_os=$(uname -s | sed -e 's/Linux/linux/;s/Darwin/mac/' )"
128 DEFINES="${DEFINES} skia_os=android" 148 DEFINES="${DEFINES} skia_os=android"
129 DEFINES="${DEFINES} android_base=${SCRIPT_DIR}/.." 149 DEFINES="${DEFINES} android_base=${SCRIPT_DIR}/.."
130 DEFINES="${DEFINES} skia_shared_lib=1" 150 DEFINES="${DEFINES} skia_shared_lib=1"
131 151
132 # Setup the build variation depending on the target device 152 # Setup the build variation depending on the target device
133 TARGET_DEVICE="$1" 153 TARGET_DEVICE="$1"
134 154
135 if [ -z "$TARGET_DEVICE" ]; then 155 if [ -z "$TARGET_DEVICE" ]; then
136 echo "INFO: no target device type was specified so using the default 'arm_v7 '" 156 echo "INFO: no target device type was specified so using the default 'arm_v7 '"
137 TARGET_DEVICE="arm_v7" 157 TARGET_DEVICE="arm_v7"
138 fi 158 fi
139 159
140 case $TARGET_DEVICE in 160 case $TARGET_DEVICE in
141 nexus_s) 161 nexus_s)
142 DEFINES="${DEFINES} skia_arch_type=arm arm_neon=1 arm_version=7 arm_thumb= 1" 162 DEFINES="${DEFINES} skia_arch_type=arm arm_neon=1 arm_version=7 arm_thumb= 1"
143 DEFINES="${DEFINES} skia_texture_cache_mb_limit=24" 163 DEFINES="${DEFINES} skia_texture_cache_mb_limit=24"
164 ANDROID_ARCH="arm"
144 ;; 165 ;;
145 nexus_4 | nexus_7 | nexus_10) 166 nexus_4 | nexus_7 | nexus_10)
146 DEFINES="${DEFINES} skia_arch_type=arm arm_neon=1 arm_version=7 arm_thumb= 1" 167 DEFINES="${DEFINES} skia_arch_type=arm arm_neon=1 arm_version=7 arm_thumb= 1"
168 ANDROID_ARCH="arm"
147 ;; 169 ;;
148 xoom) 170 xoom)
149 DEFINES="${DEFINES} skia_arch_type=arm arm_neon=0 arm_version=7 arm_thumb= 1" 171 DEFINES="${DEFINES} skia_arch_type=arm arm_neon=0 arm_version=7 arm_thumb= 1"
172 ANDROID_ARCH="arm"
150 ;; 173 ;;
151 galaxy_nexus) 174 galaxy_nexus)
152 DEFINES="${DEFINES} skia_arch_type=arm arm_neon=1 arm_version=7 arm_thumb= 1" 175 DEFINES="${DEFINES} skia_arch_type=arm arm_neon=1 arm_version=7 arm_thumb= 1"
153 DEFINES="${DEFINES} skia_texture_cache_mb_limit=32" 176 DEFINES="${DEFINES} skia_texture_cache_mb_limit=32"
177 ANDROID_ARCH="arm"
154 ;; 178 ;;
155 razr_i) 179 razr_i)
156 DEFINES="${DEFINES} skia_arch_type=x86 skia_arch_width=32" 180 DEFINES="${DEFINES} skia_arch_type=x86 skia_arch_width=32"
157 DEFINES="${DEFINES} skia_texture_cache_mb_limit=32" 181 DEFINES="${DEFINES} skia_texture_cache_mb_limit=32"
182 ANDROID_ARCH="x86"
158 ;; 183 ;;
159 arm_v7) 184 arm_v7)
160 DEFINES="${DEFINES} skia_arch_type=arm arm_neon_optional=1 arm_version=7 a rm_thumb=0" 185 DEFINES="${DEFINES} skia_arch_type=arm arm_neon_optional=1 arm_version=7 a rm_thumb=0"
186 ANDROID_ARCH="arm"
161 ;; 187 ;;
162 arm_v7_thumb) 188 arm_v7_thumb)
163 DEFINES="${DEFINES} skia_arch_type=arm arm_neon_optional=1 arm_version=7 a rm_thumb=1" 189 DEFINES="${DEFINES} skia_arch_type=arm arm_neon_optional=1 arm_version=7 a rm_thumb=1"
190 ANDROID_ARCH="arm"
164 ;; 191 ;;
165 arm) 192 arm)
166 DEFINES="${DEFINES} skia_arch_type=arm arm_neon=0 arm_thumb=0" 193 DEFINES="${DEFINES} skia_arch_type=arm arm_neon=0 arm_thumb=0"
194 ANDROID_ARCH="arm"
167 ;; 195 ;;
168 arm_thumb) 196 arm_thumb)
169 DEFINES="${DEFINES} skia_arch_type=arm arm_neon=0 arm_thumb=1" 197 DEFINES="${DEFINES} skia_arch_type=arm arm_neon=0 arm_thumb=1"
198 ANDROID_ARCH="arm"
170 ;; 199 ;;
171 x86) 200 x86)
172 DEFINES="${DEFINES} skia_arch_type=x86 skia_arch_width=32" 201 DEFINES="${DEFINES} skia_arch_type=x86 skia_arch_width=32"
173 DEFINES="${DEFINES} skia_texture_cache_mb_limit=32" 202 DEFINES="${DEFINES} skia_texture_cache_mb_limit=32"
203 ANDROID_ARCH="x86"
174 ;; 204 ;;
175 *) 205 *)
176 echo -n "ERROR: unknown device specified ($TARGET_DEVICE), valid values: " 206 echo -n "ERROR: unknown device specified ($TARGET_DEVICE), valid values: "
177 echo "nexus_[s,4,7,10] xoom galaxy_nexus razr_i arm arm_thumb arm_v7 arm_v 7_thumb x86" 207 echo "nexus_[s,4,7,10] xoom galaxy_nexus razr_i arm arm_thumb arm_v7 arm_v 7_thumb x86"
178 return 1; 208 return 1;
179 ;; 209 ;;
180 esac 210 esac
181 211
182 echo "The build is targeting the device: $TARGET_DEVICE" 212 echo "The build is targeting the device: $TARGET_DEVICE"
183 213
184 # Set up the toolchain. 214 # Set up the toolchain.
185 setup_toolchain 215 setup_toolchain
216 if [[ "$?" != "0" ]]; then
217 return 1
218 fi
186 DEFINES="${DEFINES} android_toolchain=${TOOLCHAIN_TYPE}" 219 DEFINES="${DEFINES} android_toolchain=${TOOLCHAIN_TYPE}"
187 220
188 # Use the "android" flavor of the Makefile generator for both Linux and OS X. 221 # Use the "android" flavor of the Makefile generator for both Linux and OS X.
189 exportVar GYP_GENERATORS "make-android" 222 exportVar GYP_GENERATORS "make-android"
190 exportVar GYP_DEFINES "$DEFINES" 223 exportVar GYP_DEFINES "$DEFINES"
191 exportVar SKIA_OUT "out/config/android-${TARGET_DEVICE}" 224 exportVar SKIA_OUT "out/config/android-${TARGET_DEVICE}"
192 } 225 }
193 226
194 # adb_pull_if_needed(android_src, host_dst) 227 # adb_pull_if_needed(android_src, host_dst)
195 adb_pull_if_needed() { 228 adb_pull_if_needed() {
(...skipping 21 matching lines...) Expand all
217 if [ "${ANDROID_MD5:0:32}" != "${HOST_MD5:0:32}" ]; 250 if [ "${ANDROID_MD5:0:32}" != "${HOST_MD5:0:32}" ];
218 then 251 then
219 $ADB pull $ANDROID_SRC $HOST_DST 252 $ADB pull $ANDROID_SRC $HOST_DST
220 # else 253 # else
221 # echo "md5 match of android [$ANDROID_SRC] and host [$HOST_DST]" 254 # echo "md5 match of android [$ANDROID_SRC] and host [$HOST_DST]"
222 fi 255 fi
223 else 256 else
224 $ADB pull $ANDROID_SRC $HOST_DST 257 $ADB pull $ANDROID_SRC $HOST_DST
225 fi 258 fi
226 } 259 }
260
261 # Set up the device.
262 setup_device "${DEVICE_ID}"
263 if [[ "$?" != "0" ]]; then
264 exit 1
265 fi
OLDNEW
« no previous file with comments | « platform_tools/android/bin/android_make ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698