[dali_1.9.0] Merge branch 'devel/master'
[platform/core/uifw/dali-demo.git] / build / android / build.sh
1 [ -z $ROOT_DIR ] && ROOT_DIR=$HOME
2 echo "Using ROOT_DIR=\"$ROOT_DIR\""
3
4 [ -z $DALI_DIR ] && DALI_DIR=$(cd ../../../;pwd)
5 echo "Using DALI_DIR=\"$DALI_DIR\""
6 export DALI_DIR=$DALI_DIR
7
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
11
12 [ -z $TARGET ] && export TARGET=armeabi-v7a
13 echo "Using TARGET=\"$TARGET\""
14
15 if [ ! -z $http_proxy ]
16 then
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"
22 fi
23
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 https://dl.google.com/android/repository/sdk-tools-linux-4333796.zip
29     unzip sdk-tools-linux-4333796.zip
30     tools/bin/sdkmanager --update $SdbProxyOptions
31     yes | tools/bin/sdkmanager $SdbProxyOptions "patcher;v4" "platform-tools" "platforms;android-29" "build-tools;29.0.2" "lldb;3.1" "cmake;3.10.2.4988404" "ndk-bundle" "ndk;20.1.5948944"
32     cd -
33   fi
34 fi
35
36 if [ ! -d "$ANDROID_SDK" ]; then
37 # try default path
38   if [ -d "$ROOT_DIR/Android/Sdk" ]; then
39     export ANDROID_SDK=$ROOT_DIR/Android/Sdk
40   fi
41 fi
42
43 if [ ! -d "$ANDROID_NDK" ]; then
44   if [ -d "$ANDROID_SDK" ]; then
45     NDK_DIR=$(find $ANDROID_SDK -maxdepth 2 -name ndk-build | sed 's/\/ndk-build//')
46     if [ -d "$NDK_DIR" ]; then
47       export ANDROID_NDK=$NDK_DIR
48     fi
49   fi
50 fi
51
52 if [ ! -d "$ROOT_DIR/gradle/gradle-5.4.1" ]; then
53   mkdir -p $ROOT_DIR/gradle
54   cd $ROOT_DIR/gradle
55   wget https://services.gradle.org/distributions/gradle-5.4.1-bin.zip
56   unzip gradle-5.4.1-bin.zip
57   cd -
58 fi
59
60 GRADLE_PROPERTIES_FILE=gradle.properties
61 if [ ! -f $GRADLE_PROPERTIES_FILE ]
62 then
63   echo "org.gradle.jvmargs=-Xmx1536m" > $GRADLE_PROPERTIES_FILE
64   if [ ! -z $http_proxy ]
65   then
66     echo "systemProp.http.proxyHost=$proxyHost" >> $GRADLE_PROPERTIES_FILE
67     echo "systemProp.http.proxyPort=$proxyPort" >> $GRADLE_PROPERTIES_FILE
68
69     if [ ! -z $https_proxy ]
70     then
71       httpsProxyFull=${https_proxy/https:\/\/}
72       httpsProxyHost=$(echo $httpsProxyFull | cut -d: -f 1)
73       httpsProxyPort=$(echo $httpsProxyFull | cut -d: -f 2)
74       echo "systemProp.https.proxyHost=$httpsProxyHost" >> $GRADLE_PROPERTIES_FILE
75       echo "systemProp.https.proxyPort=$httpsProxyPort" >> $GRADLE_PROPERTIES_FILE
76     fi
77   fi
78 fi
79
80 export PATH=$PATH:$ROOT_DIR/gradle/gradle-5.4.1/bin
81 [ ! -f local.properties ] && echo 'sdk.dir='$(echo $ANDROID_SDK) > local.properties
82
83 gradle wrapper
84 if [ "$1" = "clean" ]; then
85   ./gradlew clean
86 else
87   if [ -z "$DEBUG" ]; then
88     ./gradlew assembleRelease
89   else
90     ./gradlew assembleDebug
91   fi
92 fi
93