Adrien Béraud | 04d822c | 2015-04-02 17:44:36 -0400 | [diff] [blame] | 1 | #! /bin/bash |
Adrien Béraud | e8e7463 | 2020-10-02 15:04:41 -0400 | [diff] [blame] | 2 | # Build Jami 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 |
Romain Bertozzi | 32692de | 2016-10-27 15:16:46 -0400 | [diff] [blame] | 18 | for i in ${@}; do |
| 19 | case "$i" in |
| 20 | release|--release) |
| 21 | RELEASE=1 |
| 22 | ;; |
Alexandre Lision | 9db308d | 2016-11-26 18:43:27 -0500 | [diff] [blame] | 23 | daemon|--daemon) |
| 24 | DAEMON_ONLY=1 |
| 25 | ;; |
Romain Bertozzi | 32692de | 2016-10-27 15:16:46 -0400 | [diff] [blame] | 26 | *) |
| 27 | ;; |
| 28 | esac |
| 29 | done |
| 30 | export RELEASE |
| 31 | |
Adrien Béraud | 86759bb | 2016-09-28 13:54:54 -0400 | [diff] [blame] | 32 | ANDROID_ABI_LIST="${ANDROID_ABI}" |
| 33 | echo "Building ABIs: ${ANDROID_ABI_LIST}" |
| 34 | for i in ${ANDROID_ABI_LIST}; do |
| 35 | echo "$i starts building" |
| 36 | ANDROID_NDK=$ANDROID_NDK ANDROID_SDK=$ANDROID_SDK ANDROID_ABI=$i \ |
Romain Bertozzi | 32692de | 2016-10-27 15:16:46 -0400 | [diff] [blame] | 37 | ./build-daemon.sh $* || { echo "$i build KO"; exit 1; } |
Adrien Béraud | 86759bb | 2016-09-28 13:54:54 -0400 | [diff] [blame] | 38 | echo "$i build OK" |
Alexandre Lision | 7d5df5d | 2014-10-27 13:10:01 -0400 | [diff] [blame] | 39 | done |
Alexandre Lision | 9db308d | 2016-11-26 18:43:27 -0500 | [diff] [blame] | 40 | |
Adrien Béraud | bc741f5 | 2020-09-25 14:51:16 -0400 | [diff] [blame] | 41 | if [[ $RELEASE -eq 1 ]]; then |
| 42 | echo "Archiving native debug symbols" |
Adrien Béraud | 645da10 | 2020-09-28 10:17:11 -0400 | [diff] [blame] | 43 | cd $TOP/unstripped |
Adrien Béraud | bc741f5 | 2020-09-25 14:51:16 -0400 | [diff] [blame] | 44 | zip -r $TOP/app/symbols.zip . |
| 45 | fi |
| 46 | |
Adrien Béraud | 471facd | 2020-09-14 12:58:54 -0400 | [diff] [blame] | 47 | if [[ $DAEMON_ONLY -eq 0 ]]; then |
Marcus Hoffmann | a9cf009 | 2018-04-23 18:26:24 +0200 | [diff] [blame] | 48 | if [ -z "$RING_BUILD_FIREBASE" ]; then |
| 49 | echo "Building without Firebase support" |
Alexandre Lision | 6b792f0 | 2017-08-05 14:06:56 -0400 | [diff] [blame] | 50 | else |
Marcus Hoffmann | a9cf009 | 2018-04-23 18:26:24 +0200 | [diff] [blame] | 51 | GRADLE_PROPERTIES="-PbuildFirebase" |
| 52 | echo "Building with Firebase support" |
Alexandre Lision | 6b792f0 | 2017-08-05 14:06:56 -0400 | [diff] [blame] | 53 | fi |
Adrien Béraud | 471facd | 2020-09-14 12:58:54 -0400 | [diff] [blame] | 54 | if [[ $RELEASE -eq 1 ]]; then |
Adrien Béraud | 471facd | 2020-09-14 12:58:54 -0400 | [diff] [blame] | 55 | cd $TOP && gradle $GRADLE_PROPERTIES assembleRelease |
| 56 | else |
| 57 | cd $TOP && gradle $GRADLE_PROPERTIES assembleDebug |
Marcus Hoffmann | a9cf009 | 2018-04-23 18:26:24 +0200 | [diff] [blame] | 58 | fi |
Alexandre Lision | 9db308d | 2016-11-26 18:43:27 -0500 | [diff] [blame] | 59 | fi |