Adrien Béraud | 04d822c | 2015-04-02 17:44:36 -0400 | [diff] [blame] | 1 | #! /bin/bash |
Adrien Béraud | 86759bb | 2016-09-28 13:54:54 -0400 | [diff] [blame] | 2 | # Build Ring daemon and client APK for Android |
Alexandre Lision | 43b9aeb | 2014-07-15 14:21:19 -0400 | [diff] [blame] | 3 | |
| 4 | if [ -z "$ANDROID_ABI" ]; then |
Adrien Béraud | 4846f2b | 2018-06-24 12:52:24 -0400 | [diff] [blame] | 5 | ANDROID_ABI="armeabi-v7a arm64-v8a x86_64" |
Adrien Béraud | 86759bb | 2016-09-28 13:54:54 -0400 | [diff] [blame] | 6 | echo "ANDROID_ABI not provided, building for ${ANDROID_ABI}" |
Alexandre Lision | 43b9aeb | 2014-07-15 14:21:19 -0400 | [diff] [blame] | 7 | fi |
| 8 | |
Alexandre Lision | 6b792f0 | 2017-08-05 14:06:56 -0400 | [diff] [blame] | 9 | TOP=$(pwd)/ring-android |
| 10 | |
Alexandre Lision | 9db308d | 2016-11-26 18:43:27 -0500 | [diff] [blame] | 11 | # Flags: |
| 12 | |
| 13 | # --release: build in release mode |
| 14 | # --daemon: Only build the daemon for the selected archs |
| 15 | |
Romain Bertozzi | 32692de | 2016-10-27 15:16:46 -0400 | [diff] [blame] | 16 | RELEASE=0 |
Alexandre Lision | 9db308d | 2016-11-26 18:43:27 -0500 | [diff] [blame] | 17 | DAEMON_ONLY=0 |
Marcus Hoffmann | a9cf009 | 2018-04-23 18:26:24 +0200 | [diff] [blame] | 18 | NO_GRADLE=0 |
Romain Bertozzi | 32692de | 2016-10-27 15:16:46 -0400 | [diff] [blame] | 19 | for i in ${@}; do |
| 20 | case "$i" in |
| 21 | release|--release) |
| 22 | RELEASE=1 |
| 23 | ;; |
Alexandre Lision | 9db308d | 2016-11-26 18:43:27 -0500 | [diff] [blame] | 24 | daemon|--daemon) |
| 25 | DAEMON_ONLY=1 |
| 26 | ;; |
Marcus Hoffmann | a9cf009 | 2018-04-23 18:26:24 +0200 | [diff] [blame] | 27 | no-gradle|--no-gradle) |
| 28 | NO_GRADLE=1 |
| 29 | ;; |
Romain Bertozzi | 32692de | 2016-10-27 15:16:46 -0400 | [diff] [blame] | 30 | *) |
| 31 | ;; |
| 32 | esac |
| 33 | done |
| 34 | export RELEASE |
Aline Bonnet | aded8f2 | 2017-03-22 11:22:35 -0400 | [diff] [blame] | 35 | export DAEMON_ONLY |
Romain Bertozzi | 32692de | 2016-10-27 15:16:46 -0400 | [diff] [blame] | 36 | |
Adrien Béraud | 86759bb | 2016-09-28 13:54:54 -0400 | [diff] [blame] | 37 | ANDROID_ABI_LIST="${ANDROID_ABI}" |
| 38 | echo "Building ABIs: ${ANDROID_ABI_LIST}" |
| 39 | for i in ${ANDROID_ABI_LIST}; do |
| 40 | echo "$i starts building" |
| 41 | ANDROID_NDK=$ANDROID_NDK ANDROID_SDK=$ANDROID_SDK ANDROID_ABI=$i \ |
Romain Bertozzi | 32692de | 2016-10-27 15:16:46 -0400 | [diff] [blame] | 42 | ./build-daemon.sh $* || { echo "$i build KO"; exit 1; } |
Adrien Béraud | 86759bb | 2016-09-28 13:54:54 -0400 | [diff] [blame] | 43 | echo "$i build OK" |
Alexandre Lision | 7d5df5d | 2014-10-27 13:10:01 -0400 | [diff] [blame] | 44 | done |
Alexandre Lision | 9db308d | 2016-11-26 18:43:27 -0500 | [diff] [blame] | 45 | |
Marcus Hoffmann | a9cf009 | 2018-04-23 18:26:24 +0200 | [diff] [blame] | 46 | if [[ $NO_GRADLE -eq 0 ]]; then |
| 47 | if [ -z "$RING_BUILD_FIREBASE" ]; then |
| 48 | echo "Building without Firebase support" |
Alexandre Lision | 6b792f0 | 2017-08-05 14:06:56 -0400 | [diff] [blame] | 49 | else |
Marcus Hoffmann | a9cf009 | 2018-04-23 18:26:24 +0200 | [diff] [blame] | 50 | GRADLE_PROPERTIES="-PbuildFirebase" |
| 51 | echo "Building with Firebase support" |
Alexandre Lision | 6b792f0 | 2017-08-05 14:06:56 -0400 | [diff] [blame] | 52 | fi |
Marcus Hoffmann | a9cf009 | 2018-04-23 18:26:24 +0200 | [diff] [blame] | 53 | if [[ $DAEMON_ONLY -eq 0 ]]; then |
| 54 | if [[ $RELEASE -eq 1 ]]; then |
Adrien Béraud | 62dea73 | 2018-09-15 23:12:39 -0400 | [diff] [blame] | 55 | cd $TOP && gradle $GRADLE_PROPERTIES assembleRelease |
Marcus Hoffmann | a9cf009 | 2018-04-23 18:26:24 +0200 | [diff] [blame] | 56 | else |
Adrien Béraud | 62dea73 | 2018-09-15 23:12:39 -0400 | [diff] [blame] | 57 | cd $TOP && gradle $GRADLE_PROPERTIES assembleDebug |
Marcus Hoffmann | a9cf009 | 2018-04-23 18:26:24 +0200 | [diff] [blame] | 58 | fi |
| 59 | fi |
| 60 | else |
| 61 | echo "Stopping before gradle build as requested." |
Alexandre Lision | 9db308d | 2016-11-26 18:43:27 -0500 | [diff] [blame] | 62 | fi |