blob: 24c93dfa2bf26a43692c0ba31e473ac206dbedba [file] [log] [blame]
Adrien Béraud04d822c2015-04-02 17:44:36 -04001#! /bin/bash
Adrien Béraud86759bb2016-09-28 13:54:54 -04002# Build Ring daemon and client APK for Android
Alexandre Lision43b9aeb2014-07-15 14:21:19 -04003
4if [ -z "$ANDROID_ABI" ]; then
Adrien Béraudd088a982017-02-09 14:38:36 -05005 ANDROID_ABI="armeabi-v7a arm64-v8a x86 x86_64"
Adrien Béraud86759bb2016-09-28 13:54:54 -04006 echo "ANDROID_ABI not provided, building for ${ANDROID_ABI}"
Alexandre Lision43b9aeb2014-07-15 14:21:19 -04007fi
8
Alexandre Lision6b792f02017-08-05 14:06:56 -04009TOP=$(pwd)/ring-android
10
11pushd $TOP
Adrien Béraud1906f212016-10-07 12:10:17 -040012./make-swig.sh
13popd
14
Alexandre Lision9db308d2016-11-26 18:43:27 -050015# Flags:
16
17 # --release: build in release mode
18 # --daemon: Only build the daemon for the selected archs
19
Romain Bertozzi32692de2016-10-27 15:16:46 -040020RELEASE=0
Alexandre Lision9db308d2016-11-26 18:43:27 -050021DAEMON_ONLY=0
Romain Bertozzi32692de2016-10-27 15:16:46 -040022for i in ${@}; do
23 case "$i" in
24 release|--release)
25 RELEASE=1
26 ;;
Alexandre Lision9db308d2016-11-26 18:43:27 -050027 daemon|--daemon)
28 DAEMON_ONLY=1
29 ;;
Romain Bertozzi32692de2016-10-27 15:16:46 -040030 *)
31 ;;
32 esac
33done
34export RELEASE
Aline Bonnetaded8f22017-03-22 11:22:35 -040035export DAEMON_ONLY
Romain Bertozzi32692de2016-10-27 15:16:46 -040036
Adrien Béraud86759bb2016-09-28 13:54:54 -040037ANDROID_ABIS=""
38ANDROID_ABI_LIST="${ANDROID_ABI}"
39echo "Building ABIs: ${ANDROID_ABI_LIST}"
40for i in ${ANDROID_ABI_LIST}; do
41 echo "$i starts building"
42 ANDROID_NDK=$ANDROID_NDK ANDROID_SDK=$ANDROID_SDK ANDROID_ABI=$i \
Romain Bertozzi32692de2016-10-27 15:16:46 -040043 ./build-daemon.sh $* || { echo "$i build KO"; exit 1; }
Adrien Béraud86759bb2016-09-28 13:54:54 -040044 echo "$i build OK"
Alexandre Lision7d5df5d2014-10-27 13:10:01 -040045done
Alexandre Lision9db308d2016-11-26 18:43:27 -050046
47if [[ $DAEMON_ONLY -eq 0 ]]; then
Alexandre Lision6b792f02017-08-05 14:06:56 -040048 if [[ $RELEASE -eq 1 ]]; then
49 cd $TOP && ./gradlew assembleRelease
50 else
51 cd $TOP && ./gradlew assembleDebug
52 fi
Alexandre Lision9db308d2016-11-26 18:43:27 -050053fi