quickjs-tart

quickjs-based runtime for wallet-core logic
Log | Files | Refs | README | LICENSE

package-android.sh (2046B)


      1 #!/bin/env bash
      2 set -e
      3 
      4 if [[ $# -ne 1 ]]; then
      5     echo "Usage: $0 [x86|x86_64|arm64|armeabi]"
      6     echo "Usage: $0 all"
      7     echo "Usage: $0 gradle"
      8     exit 1
      9 fi
     10 
     11 ANDROID_DIR=./QuickJS-android
     12 NDK_VERSION=29.0.14206865
     13 
     14 if [[ "$OSTYPE" =~ ^linux-gnu* ]]; then
     15     export ANDROID_HOME="${ANDROID_HOME:-${HOME}/Android/Sdk}"
     16     export PATH="${PATH}:${ANDROID_HOME}/ndk/${NDK_VERSION}/toolchains/llvm/prebuilt/linux-x86_64/bin"
     17 elif [[ "$OSTYPE" =~ ^darwin* ]]; then
     18     export ANDROID_HOME="${ANDROID_HOME:-${HOME}/Library/Android/Sdk}"
     19     export PATH="${PATH}:${ANDROID_HOME}/ndk/${NDK_VERSION}/toolchains/llvm/prebuilt/darwin-x86_64/bin/"
     20 else
     21     echo "unsupported platform $OSTYPE"
     22     exit -1
     23 fi
     24 
     25 export PATH="${PATH}:${ANDROID_HOME}/cmdline-tools/latest/bin"
     26 export ANDROID_SDK_ROOT="${ANDROID_HOME}"
     27 export ANDROID_NDK_HOME="${ANDROID_HOME}/ndk/${NDK_VERSION}"
     28 
     29 # Install NDK version if it doesn't exist
     30 if [ ! -d "$ANDROID_SDK_ROOT/ndk/$NDK_VERSION" ]; then
     31     sdkmanager "ndk;$NDK_VERSION"
     32 fi
     33 
     34 JNILIBS_DIR=$ANDROID_DIR/qtart/src/main/jniLibs
     35 
     36 if [ "$1" = "all" ] || [ "$1" = "x86" ]; then
     37     ./cross/build-android.sh x86
     38     cp ./build-android/x86/libtalerwalletcore.so $JNILIBS_DIR/x86
     39 fi
     40 
     41 if [ "$1" = "all" ] || [ "$1" = "x86_64" ]; then
     42     ./cross/build-android.sh x86_64
     43     cp ./build-android/x86_64/libtalerwalletcore.so $JNILIBS_DIR/x86_64
     44 fi
     45 
     46 if [ "$1" = "all" ] || [ "$1" = "arm64" ]; then
     47     ./cross/build-android.sh arm64-v8a
     48     cp ./build-android/arm64-v8a/libtalerwalletcore.so $JNILIBS_DIR/arm64-v8a
     49 fi
     50 
     51 if [ "$1" = "all" ] || [ "$1" = "armeabi" ]; then
     52     ./cross/build-android.sh armeabi-v7a
     53     cp ./build-android/armeabi-v7a/libtalerwalletcore.so $JNILIBS_DIR/armeabi-v7a
     54 fi
     55 
     56 pushd $ANDROID_DIR
     57 if [ "${MAVEN_PUBLISH:-0}" = 0 ]; then
     58     ./gradlew --build-cache \
     59               --console=plain \
     60               publishToMavenLocal
     61 elif [ "${MAVEN_PUBLISH:-0}" = 1 ]; then
     62     ./gradlew --build-cache \
     63               --console=plain \
     64               publishAllPublicationsToMavenCentralRepository
     65 fi
     66 popd
     67 
     68 tput bel