]> git.ipfire.org Git - thirdparty/bacula.git/commitdiff
BEE Backport bacula/src/qt-console/tray-monitor/android/build-depkgs-android.sh
authorHenrique <henrique.faria@baculasystems.com>
Tue, 21 Jul 2020 07:55:34 +0000 (09:55 +0200)
committerEric Bollengier <eric@baculasystems.com>
Tue, 1 Mar 2022 14:36:16 +0000 (15:36 +0100)
This commit is the result of the squash of the following main commits:

Author: Henrique <henrique.faria@baculasystems.com>
Date:   Thu Jun 20 18:50:03 2019 -0300

    android: Added FD Background Service to project. Updated Gradle and SDK

Author: Henrique <henrique.faria@baculasystems.com>
Date:   Thu Jun 13 22:27:20 2019 -0300

    android: added openssl to build-depkgs / make scripts

Author: Henrique <henrique.faria@baculasystems.com>
Date:   Sat May 11 19:35:06 2019 -0300

    android: created build-depkgs and make_release scripts. Removed keystore from git. tweak on setenvs script

bacula/src/qt-console/tray-monitor/android/build-depkgs-android.sh [new file with mode: 0644]

diff --git a/bacula/src/qt-console/tray-monitor/android/build-depkgs-android.sh b/bacula/src/qt-console/tray-monitor/android/build-depkgs-android.sh
new file mode 100644 (file)
index 0000000..ab9262d
--- /dev/null
@@ -0,0 +1,152 @@
+#!/bin/sh
+#
+#  This script builds the dependency packages that
+#  are needed to cross compile the android version of the Bacula
+#  Tray Monitor.
+#  
+#  Dependencies will be installed on ~/android-depkgs
+#
+
+get_source()
+{
+   URL=$1
+   HTTP_HEADERS=$2
+
+   if [ ! -e "$SRC_DIR" ]; then 
+      mkdir ${SRC_DIR}
+   fi
+
+   cd ${SRC_DIR}
+   echo "Downloading ${URL} into ${SRC_DIR}"
+   ARCHIVE=`basename ${URL}`
+   case ${ARCHIVE} in
+   *.tar.gz)      
+      ARCHIVER="tar xzf"
+      [ -z "${SRC_DIR}" ] && SRC_DIR=`expr "${ARCHIVE}" : '\(.*\)\.tar\.gz'`
+      ;;
+   *.tar.bz2)
+      ARCHIVER="tar xjf"
+      [ -z "${SRC_DIR}" ] && SRC_DIR=`expr "${ARCHIVE}" : '\(.*\)\.tar\.bz2'`
+      ;;
+   *.zip)
+      ARCHIVER="unzip -d ."
+      [ -z "${SRC_DIR}" ] && SRC_DIR=`expr "${ARCHIVE}" : '\(.*\)\.zip'`
+      ;;
+   *.xz)
+      ARCHIVER="tar xf"
+      [ -z "${SRC_DIR}" ] && SRC_DIR=`expr "${ARCHIVE}" : '\(.*\)\.tar\.xz'`
+      ;;
+   *)
+      echo "Unsupported archive type - ${ARCHIVE}"
+      exit 1
+      ;;
+   esac
+
+   if [ ! -e "${ARCHIVE}" ]; then 
+      echo Downloading "${URL}"
+      if wget --passive-ftp --header "${HTTP_HEADERS}" "${URL}"
+      then
+         :
+      else
+         echo "Unable to download ${ARCHIVE}"
+         exit 1
+      fi
+   fi
+
+   echo Extracting ${ARCHIVE}
+   ${ARCHIVER} ${ARCHIVE} > ${ARCHIVE}.log 2>&1
+   return 1
+}
+
+process_jdk()
+{
+   HTTP_HEADERS="Cookie: oraclelicense=accept-securebackup-cookie"
+   JDK_URL="http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.tar.gz"
+   JDK_SRC_DIR=${SRC_DIR}/jdk1.8.0_131
+   JDK_TARGET_DIR="${DEPKGS_DIR}/java" 
+   
+   rm -rf ${JDK_SRC_DIR} 
+   get_source "${JDK_URL}" "${HTTP_HEADERS}"
+   rm -rf ${JDK_TARGET_DIR}
+   mkdir ${JDK_TARGET_DIR}
+   mv ${JDK_SRC_DIR}/* ${JDK_TARGET_DIR}
+   rm -rf ${JDK_SRC_DIR} 
+}
+
+process_android_sdk()  
+{
+   SDK_URL="https://dl.google.com/android/repository/sdk-tools-linux-3859397.zip"
+   SDK_SRC_DIR=${SRC_DIR}/tools
+   SDK_TARGET_DIR="${DEPKGS_DIR}/sdk" 
+   
+   rm -rf ${SDK_SRC_DIR} 
+   get_source "${SDK_URL}"
+   rm -rf ${SDK_TARGET_DIR}
+   mkdir ${SDK_TARGET_DIR}
+   mv ${SDK_SRC_DIR} ${SDK_TARGET_DIR}
+   rm -rf ${SDK_SRC_DIR} 
+
+   export ANDROID_HOME=${SDK_TARGET_DIR}
+   export PATH="$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$PATH"
+
+   yes | ${SDK_TARGET_DIR}/tools/bin/sdkmanager --licenses 
+   ${SDK_TARGET_DIR}/tools/bin/sdkmanager "tools" "build-tools;28.0.0" "extras;android;m2repository" "extras;google;google_play_services" "platforms;android-28" "platform-tools" 
+}
+
+process_android_ndk()
+{
+   NDK_URL="https://dl.google.com/android/repository/android-ndk-r10e-linux-x86_64.zip"
+   NDK_SRC_DIR=${SRC_DIR}/android-ndk-r10e
+   NDK_TARGET_DIR="${DEPKGS_DIR}/ndk" 
+   
+   rm -rf ${NDK_SRC_DIR} 
+   get_source "${NDK_URL}"
+   rm -rf ${NDK_TARGET_DIR}
+   mkdir ${NDK_TARGET_DIR}
+   mv ${NDK_SRC_DIR}/* ${NDK_TARGET_DIR}
+   rm -rf ${NDK_SRC_DIR} 
+}
+
+process_openssl()
+{
+   OPENSSL_URL="https://www.openssl.org/source/openssl-1.0.2r.tar.gz"
+   OPENSSL_SRC_DIR=${SRC_DIR}/openssl-1.0.2r
+   OPENSSL_TARGET_DIR="${SRC_DIR}/openssl" 
+   
+   rm -rf ${OPENSSL_SRC_DIR} 
+   get_source "${OPENSSL_URL}"
+   rm -rf ${OPENSSL_TARGET_DIR}
+   mkdir ${OPENSSL_TARGET_DIR}
+   mv ${OPENSSL_SRC_DIR}/* ${OPENSSL_TARGET_DIR}
+   rm -rf ${OPENSSL_SRC_DIR}
+}
+
+process_qt()
+{
+   QT_TARGET_DIR="${DEPKGS_DIR}/qt"
+
+   if [ ! -e "${QT_TARGET_DIR}" ]; then 
+      mkdir ${QT_TARGET_DIR}
+   fi
+}
+
+DEPKGS_DIR=$HOME/android-depkgs
+ANDROID_CFG_DIR=$HOME/.android
+SRC_DIR=$DEPKGS_DIR/src
+
+if [ ! -e "${DEPKGS_DIR}" ]; then 
+   mkdir ${DEPKGS_DIR}
+fi    
+
+if [ ! -e "${ANDROID_CFG_DIR}" ]; then 
+   mkdir ${ANDROID_CFG_DIR}
+fi
+
+touch ${ANDROID_CFG_DIR}/repositories.cfg
+
+process_android_sdk
+process_android_ndk
+process_jdk
+process_openssl
+process_qt