File indexing completed on 2023-05-30 10:41:17

0001 #!/bin/sh
0002 # Automate the android builds
0003 # This script creates the different apk for arm
0004 #
0005 # SPDX-FileCopyrightText: 2016 Bruno Coudoin <bruno.coudoin@gcompris.net>
0006 #
0007 #   SPDX-License-Identifier: GPL-3.0-or-later
0008 
0009 # Uncomment if this is not already done
0010 # make getSvnTranslations
0011 
0012 Qt5_BaseDIR=~/Qt/5.12.6
0013 export ANDROID_NDK_ROOT=$ANDROID_NDK
0014 
0015 # The current version
0016 version=$(sed -n -e 's/set(GCOMPRIS_MINOR_VERSION \([0-9]\+\)).*/\1/p' CMakeLists.txt)
0017 
0018 # The prefix of the build dir, will be suffixed by the arch target
0019 buildprefix=bb-$version
0020 
0021 #
0022 if [ ! -f org.kde.gcompris.appdata.xml ]
0023 then
0024     echo "ERROR: Run me from the top level GCompris source dir"
0025     exit 1
0026 fi
0027 
0028 # Param: ANDROID_ABI DOWNLOAD KIOSK_MODE
0029 f_cmake()
0030 {
0031     if [ $# != 3 ]
0032     then
0033         echo "f_cmake missing parameter"
0034         return
0035     fi
0036 
0037     if [ -f CMakeCache.txt ]
0038     then
0039         make clean
0040         rm CMakeCache.txt
0041         rm cmake_install.cmake
0042         rm Makefile
0043         rm -rf CMakeFiles
0044     fi
0045 
0046     cmake -DCMAKE_TOOLCHAIN_FILE=/usr/share/ECM/toolchain/Android.cmake \
0047           -DCMAKE_ANDROID_API=21 \
0048           -DCMAKE_BUILD_TYPE=Release \
0049           -DANDROID_ABI=$1 \
0050           -DCMAKE_FIND_ROOT_PATH=${Qt5_BaseDIR}/${QtTarget}/lib/ \
0051           -DQt5_DIR=${Qt5_BaseDIR}/${QtTarget}/lib/cmake/Qt5 \
0052           -Wno-dev \
0053           -DQML_BOX2D_MODULE=submodule \
0054           -DWITH_DOWNLOAD=$2 \
0055           -DWITH_KIOSK_MODE=$3 \
0056           ..
0057 
0058 }
0059 
0060 # ARM
0061 QtTarget=android_arm64_v8a
0062 builddir=${buildprefix}-${QtTarget}
0063 mkdir -p ${builddir}
0064 cd ${builddir}
0065 
0066 f_cmake arm64-v8a ON OFF
0067 make -j 4
0068 make BuildTranslations
0069 make apk_aligned_signed
0070 
0071 
0072 # Remove extra apk
0073 rm -f android/bin/*release-arm64*
0074 rm -f android/bin/*release-signed-arm64*