14159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot#!/usr/bin/env sh
24159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot
34159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot##############################################################################
44159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot##
54159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot##  Gradle start up script for UN*X
64159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot##
74159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot##############################################################################
84159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot
94159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot# Attempt to set APP_HOME
104159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot# Resolve links: $0 may be a link
114159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team RobotPRG="$0"
124159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot# Need this for relative symlinks.
134159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robotwhile [ -h "$PRG" ] ; do
144159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    ls=`ls -ld "$PRG"`
154159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    link=`expr "$ls" : '.*-> \(.*\)$'`
164159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    if expr "$link" : '/.*' > /dev/null; then
174159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot        PRG="$link"
184159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    else
194159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot        PRG=`dirname "$PRG"`"/$link"
204159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    fi
214159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robotdone
224159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team RobotSAVED="`pwd`"
234159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robotcd "`dirname \"$PRG\"`/" >/dev/null
244159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team RobotAPP_HOME="`pwd -P`"
254159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robotcd "$SAVED" >/dev/null
264159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot
274159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team RobotAPP_NAME="Gradle"
284159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team RobotAPP_BASE_NAME=`basename "$0"`
294159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot
304159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
314159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team RobotDEFAULT_JVM_OPTS=""
324159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot
334159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot# Use the maximum available, or set MAX_FD != -1 to use that value.
344159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team RobotMAX_FD="maximum"
354159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot
364159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robotwarn () {
374159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    echo "$*"
384159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot}
394159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot
404159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robotdie () {
414159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    echo
424159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    echo "$*"
434159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    echo
444159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    exit 1
454159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot}
464159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot
474159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot# OS specific support (must be 'true' or 'false').
484159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robotcygwin=false
494159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robotmsys=false
504159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robotdarwin=false
514159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robotnonstop=false
524159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robotcase "`uname`" in
534159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot  CYGWIN* )
544159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    cygwin=true
554159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    ;;
564159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot  Darwin* )
574159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    darwin=true
584159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    ;;
594159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot  MINGW* )
604159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    msys=true
614159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    ;;
624159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot  NONSTOP* )
634159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    nonstop=true
644159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    ;;
654159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robotesac
664159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot
674159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team RobotCLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
684159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot
694159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot# Determine the Java command to use to start the JVM.
704159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robotif [ -n "$JAVA_HOME" ] ; then
714159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
724159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot        # IBM's JDK on AIX uses strange locations for the executables
734159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot        JAVACMD="$JAVA_HOME/jre/sh/java"
744159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    else
754159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot        JAVACMD="$JAVA_HOME/bin/java"
764159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    fi
774159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    if [ ! -x "$JAVACMD" ] ; then
784159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot        die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
794159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot
804159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team RobotPlease set the JAVA_HOME variable in your environment to match the
814159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robotlocation of your Java installation."
824159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    fi
834159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robotelse
844159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    JAVACMD="java"
854159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
864159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot
874159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team RobotPlease set the JAVA_HOME variable in your environment to match the
884159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robotlocation of your Java installation."
894159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robotfi
904159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot
914159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot# Increase the maximum file descriptors if we can.
924159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robotif [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then
934159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    MAX_FD_LIMIT=`ulimit -H -n`
944159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    if [ $? -eq 0 ] ; then
954159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot        if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
964159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot            MAX_FD="$MAX_FD_LIMIT"
974159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot        fi
984159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot        ulimit -n $MAX_FD
994159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot        if [ $? -ne 0 ] ; then
1004159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot            warn "Could not set maximum file descriptor limit: $MAX_FD"
1014159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot        fi
1024159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    else
1034159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot        warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
1044159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    fi
1054159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robotfi
1064159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot
1074159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot# For Darwin, add options to specify how the application appears in the dock
1084159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robotif $darwin; then
1094159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
1104159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robotfi
1114159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot
1124159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot# For Cygwin, switch paths to Windows format before running java
1134159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robotif $cygwin ; then
1144159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    APP_HOME=`cygpath --path --mixed "$APP_HOME"`
1154159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
1164159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    JAVACMD=`cygpath --unix "$JAVACMD"`
1174159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot
1184159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    # We build the pattern for arguments to be converted via cygpath
1194159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
1204159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    SEP=""
1214159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    for dir in $ROOTDIRSRAW ; do
1224159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot        ROOTDIRS="$ROOTDIRS$SEP$dir"
1234159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot        SEP="|"
1244159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    done
1254159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    OURCYGPATTERN="(^($ROOTDIRS))"
1264159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    # Add a user-defined pattern to the cygpath arguments
1274159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    if [ "$GRADLE_CYGPATTERN" != "" ] ; then
1284159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot        OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
1294159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    fi
1304159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    # Now convert the arguments - kludge to limit ourselves to /bin/sh
1314159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    i=0
1324159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    for arg in "$@" ; do
1334159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot        CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
1344159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot        CHECK2=`echo "$arg"|egrep -c "^-"`                                 ### Determine if an option
1354159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot
1364159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot        if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then                    ### Added a condition
1374159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot            eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
1384159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot        else
1394159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot            eval `echo args$i`="\"$arg\""
1404159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot        fi
1414159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot        i=$((i+1))
1424159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    done
1434159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    case $i in
1444159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot        (0) set -- ;;
1454159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot        (1) set -- "$args0" ;;
1464159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot        (2) set -- "$args0" "$args1" ;;
1474159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot        (3) set -- "$args0" "$args1" "$args2" ;;
1484159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot        (4) set -- "$args0" "$args1" "$args2" "$args3" ;;
1494159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot        (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
1504159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot        (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
1514159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot        (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
1524159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot        (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
1534159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot        (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
1544159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    esac
1554159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robotfi
1564159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot
1574159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot# Escape application args
1584159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robotsave () {
1594159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
1604159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot    echo " "
1614159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot}
1624159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team RobotAPP_ARGS=$(save "$@")
1634159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot
1644159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot# Collect all arguments for the java command, following the shell quoting and substitution rules
1654159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Roboteval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
1664159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot
1674159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong
1684159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robotif [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then
1694159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot  cd "$(dirname "$0")"
1704159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robotfi
1714159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robot
1724159b9ea860ab3deec08f511deb71f4f599924aandroid-build-team Robotexec "$JAVACMD" "$@"
173