From 0073225549222d99dc8a0449de9f25732fc0e064 Mon Sep 17 00:00:00 2001 From: Velaron Date: Fri, 3 Nov 2023 16:36:55 +0300 Subject: [PATCH] scripts: gha: Android deps and build scripts --- scripts/gha/build_android.sh | 27 +++++++++------------ scripts/gha/deps_android.sh | 47 ++++++++++++++++++++---------------- 2 files changed, 38 insertions(+), 36 deletions(-) diff --git a/scripts/gha/build_android.sh b/scripts/gha/build_android.sh index a5f4df5c..db3bed28 100755 --- a/scripts/gha/build_android.sh +++ b/scripts/gha/build_android.sh @@ -1,25 +1,22 @@ #!/bin/bash -export ANDROID_SDK_HOME=$GITHUB_WORKSPACE/sdk -export ANDROID_NDK_HOME=$ANDROID_SDK_HOME/ndk-bundle +unset ANDROID_SDK_ROOT +export JAVA_HOME=$GITHUB_WORKSPACE/jdk-17.0.7+7 +export ANDROID_HOME=$GITHUB_WORKSPACE/sdk +export PATH=$PATH:$JAVA_HOME/bin:$ANDROID_HOME/tools:$ANDROID_HOME/tools/bin:$ANDROID_HOME/platform-tools:$ANDROID_HOME/cmdline-tools/tools/bin pushd android -if [[ "$GH_CPU_ARCH" == "32" ]]; then - export ARCHS="armeabi armeabi-v7a x86" -elif [[ "$GH_CPU_ARCH" == "64" ]]; then - export ARCHS="aarch64 x86_64" -elif [[ "$GH_CPU_ARCH" == "32&64" ]]; then - export ARCHS="armeabi armeabi-v7a x86 aarch64 x86_64" -fi -sh compile.sh release +./gradlew assembleContinuous +pushd app/build/outputs/apk/continuous + +$ANDROID_HOME/build-tools/34.0.0/apksigner sign --ks $GITHUB_WORKSPACE/android/debug.keystore --ks-key-alias androiddebugkey \ + --ks-pass pass:android --key-pass pass:android --out app-continuous-signed.apk app-continuous-unsigned.apk + +popd popd mkdir -p artifacts/ -if [[ "$GH_CPU_ARCH" == "64" ]]; then - mv android/xashdroid.apk artifacts/xashdroid-64.apk -else - mv android/xashdroid.apk artifacts/xashdroid-32.apk -fi +mv android/app/build/outputs/apk/continuous/app-continuous-signed.apk artifacts/xash3d-fwgs-android.apk diff --git a/scripts/gha/deps_android.sh b/scripts/gha/deps_android.sh index 59b5c549..9d49c6d0 100755 --- a/scripts/gha/deps_android.sh +++ b/scripts/gha/deps_android.sh @@ -1,38 +1,43 @@ #!/bin/bash -echo "Download HLSDK" - cd $GITHUB_WORKSPACE -git clone --depth 1 --recursive https://github.com/FWGS/hlsdk-xash3d -b mobile_hacks hlsdk || exit 1 -echo "Download and unpack Android SDK" +echo "Download JDK 17" +wget https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.7%2B7/OpenJDK17U-jdk_x64_linux_hotspot_17.0.7_7.tar.gz -qO jdk.tar.gz || exit 1 +tar -xzf jdk.tar.gz +export JAVA_HOME=$GITHUB_WORKSPACE/jdk-17.0.7+7 +export PATH=$PATH:$JAVA_HOME/bin + +echo "Download hlsdk-portable" +git clone --depth 1 --recursive https://github.com/FWGS/hlsdk-portable -b mobile_hacks hlsdk || exit 1 + +echo "Download Android SDK" mkdir -p sdk || exit 1 pushd sdk -wget https://dl.google.com/android/repository/sdk-tools-linux-4333796.zip -qO sdk.zip > /dev/null || exit 1 +wget https://dl.google.com/android/repository/commandlinetools-linux-9477386_latest.zip -qO sdk.zip || exit 1 unzip -q sdk.zip || exit 1 +mv cmdline-tools tools +mkdir -p cmdline-tools +mv tools cmdline-tools/tools +unset ANDROID_SDK_ROOT +export ANDROID_HOME=$GITHUB_WORKSPACE/sdk +export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/tools/bin:$ANDROID_HOME/platform-tools:$ANDROID_HOME/cmdline-tools/tools/bin popd -echo "Download all needed tools and NDK" -yes | sdk/tools/bin/sdkmanager --licenses > /dev/null 2>/dev/null # who even reads licenses? :) -sdk/tools/bin/sdkmanager --install build-tools\;29.0.1 platform-tools platforms\;android-29 > /dev/null 2>/dev/null -wget https://dl.google.com/android/repository/android-ndk-r25-linux.zip -qO ndk.zip > /dev/null || exit 1 -unzip -q ndk.zip || exit 1 -mv android-ndk-r25 sdk/ndk-bundle || exit 1 +echo "Download all needed tools and Android NDK" +yes | sdkmanager --licenses > /dev/null 2>/dev/null # who even reads licenses? :) +sdkmanager --install build-tools\;34.0.0 platform-tools platforms\;android-34 ndk\;26.0.10792818 -echo "Download Xash3D FWGS Android source" -git clone --depth 1 https://github.com/FWGS/xash3d-android-project -b waf android || exit 1 -pushd android +echo "Download Xash3D FWGS Android source code" +git clone --depth 1 --recursive https://github.com/Velaron/xash3d-android-project -b gradle android || exit 1 +pushd android/app/src/main/cpp mv xash3d-fwgs xash3d-fwgs-sub ln -s $GITHUB_WORKSPACE xash3d-fwgs echo "Installed Xash3D FWGS source symlink" -mv hlsdk-xash3d hlsdk-xash3d-sub -ln -s $GITHUB_WORKSPACE/hlsdk hlsdk-xash3d -echo "Installed HLSDK source symlink" - -mv xash-extras xash-extras-sub -ln -s $GITHUB_WORKSPACE/xash-extras xash-extras -echo "Installed xash-extras symlink" +mv hlsdk-portable hlsdk-portable-sub +ln -s $GITHUB_WORKSPACE/hlsdk hlsdk-portable +echo "Installed hlsdk-portable source symlink" popd