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

Unified Diff: build/android/buildbot_functions.sh

Issue 9693016: Enable goma for Android. Fix non-goma 'make' builds. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: removing make() add given merge with recent changes Created 8 years, 9 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: build/android/buildbot_functions.sh
diff --git a/build/android/buildbot_functions.sh b/build/android/buildbot_functions.sh
index a53b31511c17cb9265fdef860a06fe5838590bcc..c830e588fd738420fe610233850486d6b2522308 100755
--- a/build/android/buildbot_functions.sh
+++ b/build/android/buildbot_functions.sh
@@ -60,7 +60,9 @@ function bb_baseline_setup {
echo "@@@BUILD_STEP Basic setup@@@"
bb_setup_environment
- for mandatory_directory in "${ANDROID_SDK_ROOT}" "${ANDROID_NDK_ROOT}" ; do
+
+ for mandatory_directory in $(dirname "${ANDROID_SDK_ROOT}") \
+ $(dirname "${ANDROID_NDK_ROOT}") ; do
if [[ ! -d "${mandatory_directory}" ]]; then
echo "Directory ${mandatory_directory} does not exist."
echo "Build cannot continue."
@@ -73,6 +75,11 @@ function bb_baseline_setup {
NEED_CLOBBER=1
fi
+ # Setting up a new bot? Must do this before envsetup.sh
+ if [ ! -d "${ANDROID_NDK_ROOT}" ] ; then
+ bb_install_build_deps $1
+ fi
+
echo "@@@BUILD_STEP Configure with envsetup.sh@@@"
. build/android/envsetup.sh
@@ -92,11 +99,25 @@ function bb_baseline_setup {
# Setup goma. Used internally to buildbot_functions.sh.
function bb_setup_goma_internal {
+
+ # Quick bail if I messed things up and can't wait for the CQ to
+ # flush out.
+ # TODO(jrg): remove this condition when things are
+ # proven stable (4/1/12 or so).
+ if [ -f /usr/local/google/DISABLE_GOMA ]; then
+ echo "@@@STEP_WARNINGS@@@"
+ echo "Goma disabled with a local file"
+ return
+ fi
+
+ goma_dir=${goma_dir:-/b/build/goma}
+ if [ -f ${goma_dir}/goma.key ]; then
+ export GOMA_API_KEY_FILE=${GOMA_DIR}/goma.key
+ fi
local goma_ctl=$(which goma_ctl.sh)
if [ "${goma_ctl}" != "" ]; then
local goma_dir=$(dirname ${goma_ctl})
fi
- goma_dir=${goma_dir:-/b/build/goma}
if [ ! -f ${goma_dir}/goma_ctl.sh ]; then
echo "@@@STEP_WARNINGS@@@"
@@ -106,31 +127,28 @@ function bb_setup_goma_internal {
export GOMA_DIR=${goma_dir}
echo "GOMA_DIR: " $GOMA_DIR
- ${GOMA_DIR}/goma_ctl.sh start
- if [ -f ${goma_dir}/goma.key ]; then
- export GOMA_API_KEY_FILE=${GOMA_DIR}/goma.key
- fi
export GOMA_COMPILER_PROXY_DAEMON_MODE=true
export GOMA_COMPILER_PROXY_RPC_TIMEOUT_SECS=300
export PATH=$GOMA_DIR:$PATH
+
+ echo "Starting goma"
+ if [ "$NEED_CLOBBER" -eq 1 ]; then
+ ${GOMA_DIR}/goma_ctl.sh restart
+ else
+ ${GOMA_DIR}/goma_ctl.sh ensure_start
+ fi
+ trap bb_stop_goma_internal SIGHUP SIGINT SIGTERM
+}
+
+# Stop goma.
+function bb_stop_goma_internal {
+ echo "Stopping goma"
+ ${GOMA_DIR}/goma_ctl.sh stop
}
# $@: make args.
# Use goma if possible; degrades to non-Goma if needed.
function bb_goma_make {
- # Disable Goma
- # Seems to work on "Android FYI"
- # http://build.chromium.org/p/chromium.fyi/builders/Chromium%20Linux%20Android/builds/6421/steps/Compile/logs/stdio
- # and Linux trybots
- # http://build.chromium.org/p/chromium/builders/Linux%20x64/builds/23995/steps/compile/logs/stdio
- # But not on Android trybots?
- # http://build.chromium.org/p/tryserver.chromium/builders/android/builds/2136/steps/Compile/logs/stdio
- make -j${JOBS} "$@"
- return
-
- # TODO(bulach): to use goma, we need to:
- # GOMA_DIR=... android_gyp
- # PATH=$GOMA_DIR:$PATH make -j${JOBS} "$@"
bb_setup_goma_internal
if [ "${GOMA_DIR}" = "" ]; then
@@ -147,7 +165,7 @@ function bb_goma_make {
COMMON_JAVAC="$GOMA_DIR/gomacc /usr/bin/javac -J-Xmx512M \
-target 1.5 -Xmaxerrs 9999999"
- make \
+ command make \
-j100 \
-l20 \
HOST_CC="$HOST_CC" \
@@ -161,6 +179,8 @@ function bb_goma_make {
LINK.target="$TARGET_CXX" \
COMMON_JAVAC="$COMMON_JAVAC" \
"$@"
+
+ bb_stop_goma_internal
}
# Compile step
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698