1 [ -z $ROOT_DIR ] && ROOT_DIR=$HOME
2 echo "Using ROOT_DIR=\"$ROOT_DIR\""
4 [ -z $DALI_DIR ] && DALI_DIR=$(cd ../../../;pwd)
5 echo "Using DALI_DIR=\"$DALI_DIR\""
6 export DALI_DIR=$DALI_DIR
8 [ -z $DALI_ENV_DIR ] && DALI_ENV_DIR=$DALI_DIR/dali-env/android
9 echo "Using DALI_ENV_DIR=\"$DALI_ENV_DIR\""
10 export DALI_ENV_DIR=$DALI_ENV_DIR
12 [ -z $TARGET ] && export TARGET=armeabi-v7a
13 echo "Using TARGET=\"$TARGET\""
15 if [ ! -z $http_proxy ]
17 proxyFull=${http_proxy/http:\/\/}
18 proxyHost=$(echo $proxyFull | cut -d: -f 1)
19 proxyPort=$(echo $proxyFull | cut -d: -f 2)
20 SdbProxyOptions="--proxy=http --proxy_host=$proxyHost --proxy_port=$proxyPort"
21 echo "Proxy detected Host:$proxyHost Port:$proxyPort"
24 if [ ! -d "$ANDROID_SDK" ]; then
25 if [ ! -d "$ROOT_DIR/Android/Sdk" ]; then
26 mkdir -p "$ROOT_DIR/Android/Sdk"
27 cd "$ROOT_DIR/Android/Sdk"
28 wget --quiet https://developer.android.com/studio/index.html
29 if [ ! -f index.html ]; then echo ERROR: Unable to get Android Tools Version; exit 1; fi
31 androidCommandLineToolsPkgUrl=$(cat index.html | grep "commandlinetools-linux-" | grep href | cut -d\" -f 2)
32 androidCommandLineToolsPkgName=$(echo $androidCommandLineToolsPkgUrl | rev | cut -d\/ -f 1 | rev)
33 echo "Downloading Android Command Line Tools from: $androidCommandLineToolsPkgUrl"
34 wget --quiet $androidCommandLineToolsPkgUrl
35 echo "Unzipping $androidCommandLineToolsPkgName"
36 unzip -q $androidCommandLineToolsPkgName
37 SDK_MANAGER="$ROOT_DIR/Android/Sdk/cmdline-tools/bin/sdkmanager --sdk_root=$ROOT_DIR/Android/Sdk $SdbProxyOptions"
39 yes | $SDK_MANAGER "platform-tools" "platforms;android-30" "build-tools;33.0.1" "cmake;3.22.1" "ndk-bundle" "ndk;25.1.8937393"
44 if [ ! -d "$ANDROID_SDK" ]; then
46 if [ -d "$ROOT_DIR/Android/Sdk" ]; then
47 export ANDROID_SDK=$ROOT_DIR/Android/Sdk
51 if [ ! -d "$ANDROID_NDK" ]; then
52 if [ -d "$ANDROID_SDK" ]; then
53 NDK_DIR=$(find $ANDROID_SDK -maxdepth 2 -name ndk-build | sed 's/\/ndk-build//')
54 # Some sdk folder structures have extra <version> dir for ndk folders.
55 if [ ! -d "$NDK_DIR" ]; then
56 NDK_DIR=$(find $ANDROID_SDK -maxdepth 3 -name ndk-build | sed 's/\/ndk-build//')
58 if [ -d "$NDK_DIR" ]; then
59 export ANDROID_NDK=$NDK_DIR
65 if [ ! -d "$ROOT_DIR/gradle/gradle-$GRADLE_VERSION" ]; then
66 mkdir -p $ROOT_DIR/gradle
68 wget --quiet https://services.gradle.org/distributions/gradle-$GRADLE_VERSION-bin.zip
69 unzip -q gradle-$GRADLE_VERSION-bin.zip
73 GRADLE_PROPERTIES_FILE=gradle.properties
74 if [ ! -f $GRADLE_PROPERTIES_FILE ]
76 echo "org.gradle.jvmargs=-Xmx1536m" > $GRADLE_PROPERTIES_FILE
77 echo "android.useAndroidX=true" >> $GRADLE_PROPERTIES_FILE
78 if [ ! -z $http_proxy ]
80 echo "systemProp.http.proxyHost=$proxyHost" >> $GRADLE_PROPERTIES_FILE
81 echo "systemProp.http.proxyPort=$proxyPort" >> $GRADLE_PROPERTIES_FILE
83 if [ ! -z $https_proxy ]
85 httpsProxyFull=$https_proxy
86 httpsProxyFull=${httpsProxyFull/https:\/\/}
87 httpsProxyFull=${httpsProxyFull/http:\/\/}
88 httpsProxyHost=$(echo $httpsProxyFull | cut -d: -f 1)
89 httpsProxyPort=$(echo $httpsProxyFull | cut -d: -f 2)
90 echo "systemProp.https.proxyHost=$httpsProxyHost" >> $GRADLE_PROPERTIES_FILE
91 echo "systemProp.https.proxyPort=$httpsProxyPort" >> $GRADLE_PROPERTIES_FILE
96 export PATH=$PATH:$ROOT_DIR/gradle/gradle-$GRADLE_VERSION/bin
97 [ ! -f local.properties ] && echo 'sdk.dir='$(echo $ANDROID_SDK) > local.properties
99 gradle wrapper || exit 1
100 if [ "$1" = "clean" ]; then
103 if [ -z "$DEBUG" ]; then
104 ./gradlew assembleRelease
106 ./gradlew assembleDebug