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

Side by Side Diff: build/android/buildbot_functions.sh

Issue 10878031: Fix android compile step to respect target config (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix factory props arg passing Created 8 years, 3 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 | « no previous file | build/android/buildbot_fyi_tester.sh » ('j') | 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 1 #!/bin/bash
2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be 3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file. 4 # found in the LICENSE file.
5 # 5 #
6 # Bash functions used by buildbot annotator scripts for the android 6 # Bash functions used by buildbot annotator scripts for the android
7 # build of chromium. Executing this script should not perform actions 7 # build of chromium. Executing this script should not perform actions
8 # other than setting variables and defining of functions. 8 # other than setting variables and defining of functions.
9 9
10 # Number of jobs on the compile line; e.g. make -j"${JOBS}" 10 # Number of jobs on the compile line; e.g. make -j"${JOBS}"
(...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after
152 # $@: make args. 152 # $@: make args.
153 # Use goma if possible; degrades to non-Goma if needed. 153 # Use goma if possible; degrades to non-Goma if needed.
154 function bb_goma_make { 154 function bb_goma_make {
155 bb_setup_goma_internal 155 bb_setup_goma_internal
156 156
157 if [ "${GOMA_DIR}" = "" ]; then 157 if [ "${GOMA_DIR}" = "" ]; then
158 make -j${JOBS} "$@" 158 make -j${JOBS} "$@"
159 return 159 return
160 fi 160 fi
161 161
162 BUILDTYPE=$(bb_get_json_prop "$FACTORY_PROPERTIES" target)
162 HOST_CC=$GOMA_DIR/gcc 163 HOST_CC=$GOMA_DIR/gcc
163 HOST_CXX=$GOMA_DIR/g++ 164 HOST_CXX=$GOMA_DIR/g++
164 TARGET_CC=$(/bin/ls $ANDROID_TOOLCHAIN/*-gcc | head -n1) 165 TARGET_CC=$(/bin/ls $ANDROID_TOOLCHAIN/*-gcc | head -n1)
165 TARGET_CXX=$(/bin/ls $ANDROID_TOOLCHAIN/*-g++ | head -n1) 166 TARGET_CXX=$(/bin/ls $ANDROID_TOOLCHAIN/*-g++ | head -n1)
166 TARGET_CC="$GOMA_DIR/gomacc $TARGET_CC" 167 TARGET_CC="$GOMA_DIR/gomacc $TARGET_CC"
167 TARGET_CXX="$GOMA_DIR/gomacc $TARGET_CXX" 168 TARGET_CXX="$GOMA_DIR/gomacc $TARGET_CXX"
168 COMMON_JAVAC="$GOMA_DIR/gomacc /usr/bin/javac -J-Xmx512M \ 169 COMMON_JAVAC="$GOMA_DIR/gomacc /usr/bin/javac -J-Xmx512M \
169 -target 1.5 -Xmaxerrs 9999999" 170 -target 1.5 -Xmaxerrs 9999999"
170 171
171 command make \ 172 command make \
172 -j100 \ 173 -j100 \
173 -l20 \ 174 -l20 \
174 HOST_CC="$HOST_CC" \ 175 HOST_CC="$HOST_CC" \
175 HOST_CXX="$HOST_CXX" \ 176 HOST_CXX="$HOST_CXX" \
176 TARGET_CC="$TARGET_CC" \ 177 TARGET_CC="$TARGET_CC" \
177 TARGET_CXX="$TARGET_CXX" \ 178 TARGET_CXX="$TARGET_CXX" \
178 CC.host="$HOST_CC" \ 179 CC.host="$HOST_CC" \
179 CXX.host="$HOST_CXX" \ 180 CXX.host="$HOST_CXX" \
180 CC.target="$TARGET_CC" \ 181 CC.target="$TARGET_CC" \
181 CXX.target="$TARGET_CXX" \ 182 CXX.target="$TARGET_CXX" \
182 LINK.target="$TARGET_CXX" \ 183 LINK.target="$TARGET_CXX" \
183 COMMON_JAVAC="$COMMON_JAVAC" \ 184 COMMON_JAVAC="$COMMON_JAVAC" \
185 BUILDTYPE="$BUILDTYPE" \
184 "$@" 186 "$@"
185 187
186 local make_exit_code=$? 188 local make_exit_code=$?
187 bb_stop_goma_internal 189 bb_stop_goma_internal
188 return $make_exit_code 190 return $make_exit_code
189 } 191 }
190 192
191 # Compile step 193 # Compile step
192 function bb_compile { 194 function bb_compile {
193 # This must be named 'compile', not 'Compile', for CQ interaction. 195 # This must be named 'compile', not 'Compile', for CQ interaction.
(...skipping 17 matching lines...) Expand all
211 done 213 done
212 } 214 }
213 215
214 # Run tests on an emulator. 216 # Run tests on an emulator.
215 function bb_run_tests_emulator { 217 function bb_run_tests_emulator {
216 echo "@@@BUILD_STEP Run Tests on an Emulator@@@" 218 echo "@@@BUILD_STEP Run Tests on an Emulator@@@"
217 build/android/run_tests.py -e --xvfb --verbose 219 build/android/run_tests.py -e --xvfb --verbose
218 } 220 }
219 221
220 # Run tests on an actual device. (Better have one plugged in!) 222 # Run tests on an actual device. (Better have one plugged in!)
221 function bb_run_tests { 223 function bb_run_unit_tests {
222 python build/android/device_status_check.py 224 python build/android/device_status_check.py
223 echo "@@@BUILD_STEP Run Tests on actual hardware@@@" 225 echo "@@@BUILD_STEP Run Tests on actual hardware@@@"
224 build/android/run_tests.py --xvfb --verbose 226 build/android/run_tests.py --xvfb --verbose
225 } 227 }
226 228
227 # Run instrumentation test. 229 # Run instrumentation test.
228 # Args: 230 # Args:
229 # $1: TEST_APK. 231 # $1: TEST_APK.
230 # $2: EXTRA_FLAGS to be passed to run_instrumentation_tests.py. 232 # $2: EXTRA_FLAGS to be passed to run_instrumentation_tests.py.
231 function bb_run_instrumentation_test { 233 function bb_run_instrumentation_test {
232 local TEST_APK=${1} 234 local TEST_APK=${1}
233 local EXTRA_FLAGS=${2} 235 local EXTRA_FLAGS=${2}
234 local APK_NAME=$(basename ${TEST_APK}) 236 local APK_NAME=$(basename ${TEST_APK})
235 echo "@@@BUILD_STEP Android Instrumentation ${APK_NAME} ${EXTRA_FLAGS} "\ 237 echo "@@@BUILD_STEP Android Instrumentation ${APK_NAME} ${EXTRA_FLAGS} "\
236 "on actual hardware@@@" 238 "on actual hardware@@@"
237 local INSTRUMENTATION_FLAGS="-vvv" 239 local INSTRUMENTATION_FLAGS="-vvv"
238 INSTRUMENTATION_FLAGS+=" --test-apk ${TEST_APK}" 240 INSTRUMENTATION_FLAGS+=" --test-apk ${TEST_APK}"
239 INSTRUMENTATION_FLAGS+=" ${EXTRA_FLAGS}" 241 INSTRUMENTATION_FLAGS+=" ${EXTRA_FLAGS}"
240 build/android/run_instrumentation_tests.py ${INSTRUMENTATION_FLAGS} 242 build/android/run_instrumentation_tests.py ${INSTRUMENTATION_FLAGS}
241 } 243 }
242 244
243 # Run content shell instrumentation test on device. 245 # Run content shell instrumentation test on device.
244 function bb_run_content_shell_instrumentation_test { 246 function bb_run_instrumentation_tests {
245 build/android/adb_install_content_shell 247 build/android/adb_install_content_shell
246 local TEST_APK="content_shell_test/ContentShellTest-debug" 248 local TEST_APK="content_shell_test/ContentShellTest-debug"
247 # Use -I to install the test apk only on the first run. 249 # Use -I to install the test apk only on the first run.
248 # TODO(bulach): remove the second once we have a Smoke test. 250 # TODO(bulach): remove the second once we have a Smoke test.
249 bb_run_instrumentation_test ${TEST_APK} "-I -A Smoke" 251 bb_run_instrumentation_test ${TEST_APK} "-I -A Smoke"
250 bb_run_instrumentation_test ${TEST_APK} "-I -A SmallTest" 252 bb_run_instrumentation_test ${TEST_APK} "-I -A SmallTest"
251 bb_run_instrumentation_test ${TEST_APK} "-A MediumTest" 253 bb_run_instrumentation_test ${TEST_APK} "-A MediumTest"
252 bb_run_instrumentation_test ${TEST_APK} "-A LargeTest" 254 bb_run_instrumentation_test ${TEST_APK} "-A LargeTest"
253 } 255 }
254 256
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
312 set +e 314 set +e
313 cd "${SRC_ROOT}" 315 cd "${SRC_ROOT}"
314 python android_webview/tools/webview_licenses.py scan 316 python android_webview/tools/webview_licenses.py scan
315 local license_exit_code=$? 317 local license_exit_code=$?
316 if [[ license_exit_code -ne 0 ]]; then 318 if [[ license_exit_code -ne 0 ]]; then
317 echo "@@@STEP_FAILURE@@@" 319 echo "@@@STEP_FAILURE@@@"
318 fi 320 fi
319 return $license_exit_code 321 return $license_exit_code
320 ) 322 )
321 } 323 }
324
325 # Retrieve a packed json property using python
326 function bb_get_json_prop {
327 local JSON="$1"
328 local PROP="$2"
329
330 python -c "import json; print json.loads('$JSON')['$PROP']"
331 }
OLDNEW
« no previous file with comments | « no previous file | build/android/buildbot_fyi_tester.sh » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698