CI: Backport GitHub Actions setup from master
Removes AppVeyor and all Travis jobs but the iOS one, which hasn't been ported to GitHub Actions yet (should be done soon). Backports new style scripts from `master` branch too to do the same checks.
This commit is contained in:
108
misc/ci/android-tools-linux.sh
Executable file
108
misc/ci/android-tools-linux.sh
Executable file
@ -0,0 +1,108 @@
|
||||
#!/bin/bash
|
||||
|
||||
# SDK
|
||||
# https://dl.google.com/android/repository/sdk-tools-linux-3859397.zip
|
||||
# SHA-256 444e22ce8ca0f67353bda4b85175ed3731cae3ffa695ca18119cbacef1c1bea0
|
||||
# latest version available here: https://developer.android.com/studio/index.html
|
||||
|
||||
# NDK
|
||||
# https://dl.google.com/android/repository/android-ndk-r15c-linux-x86_64.zip
|
||||
# SHA-1 0bf02d4e8b85fd770fd7b9b2cdec57f9441f27a2
|
||||
# latest version available here: https://developer.android.com/ndk/downloads/index.html
|
||||
|
||||
BASH_RC=~/.bashrc
|
||||
GODOT_BUILD_TOOLS_PATH=./godot-dev/build-tools
|
||||
mkdir -p $GODOT_BUILD_TOOLS_PATH
|
||||
cd $GODOT_BUILD_TOOLS_PATH
|
||||
|
||||
ANDROID_BASE_URL=http://dl.google.com/android/repository
|
||||
|
||||
ANDROID_SDK_RELEASE=4333796
|
||||
ANDROID_SDK_DIR=android-sdk
|
||||
ANDROID_SDK_FILENAME=sdk-tools-linux-$ANDROID_SDK_RELEASE.zip
|
||||
ANDROID_SDK_URL=$ANDROID_BASE_URL/$ANDROID_SDK_FILENAME
|
||||
ANDROID_SDK_PATH=$GODOT_BUILD_TOOLS_PATH/$ANDROID_SDK_DIR
|
||||
ANDROID_SDK_SHA256=92ffee5a1d98d856634e8b71132e8a95d96c83a63fde1099be3d86df3106def9
|
||||
|
||||
ANDROID_NDK_RELEASE=r21
|
||||
ANDROID_NDK_DIR=android-ndk
|
||||
ANDROID_NDK_FILENAME=android-ndk-$ANDROID_NDK_RELEASE-linux-x86_64.zip
|
||||
ANDROID_NDK_URL=$ANDROID_BASE_URL/$ANDROID_NDK_FILENAME
|
||||
ANDROID_NDK_PATH=$GODOT_BUILD_TOOLS_PATH/$ANDROID_NDK_DIR
|
||||
ANDROID_NDK_SHA1=afc9c0b9faad222898ac8168c78ad4ccac8a1b5c
|
||||
|
||||
echo
|
||||
echo "Download and install Android development tools ..."
|
||||
echo
|
||||
|
||||
if [ ! -e $ANDROID_SDK_FILENAME ]; then
|
||||
echo "Downloading: Android SDK ..."
|
||||
curl -L -O $ANDROID_SDK_URL
|
||||
else
|
||||
echo $ANDROID_SDK_SHA1 $ANDROID_SDK_FILENAME > $ANDROID_SDK_FILENAME.sha1
|
||||
if [ $(shasum -a 256 < $ANDROID_SDK_FILENAME | awk '{print $1;}') != $ANDROID_SDK_SHA1 ]; then
|
||||
echo "Downloading: Android SDK ..."
|
||||
curl -L -O $ANDROID_SDK_URL
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ ! -d $ANDROID_SDK_DIR ]; then
|
||||
echo "Extracting: Android SDK ..."
|
||||
unzip -qq $ANDROID_SDK_FILENAME -d $ANDROID_SDK_DIR
|
||||
echo
|
||||
fi
|
||||
|
||||
if [ ! -e $ANDROID_NDK_FILENAME ]; then
|
||||
echo "Downloading: Android NDK ..."
|
||||
curl -L -O $ANDROID_NDK_URL
|
||||
else
|
||||
echo $ANDROID_NDK_MD5 $ANDROID_NDK_FILENAME > $ANDROID_NDK_FILENAME.md5
|
||||
if [ $(shasum -a 1 < $ANDROID_NDK_FILENAME | awk '{print $1;}') != $ANDROID_NDK_SHA1 ]; then
|
||||
echo "Downloading: Android NDK ..."
|
||||
curl -L -O $ANDROID_NDK_URL
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ ! -d $ANDROID_NDK_DIR ]; then
|
||||
echo "Extracting: Android NDK ..."
|
||||
unzip -qq $ANDROID_NDK_FILENAME
|
||||
mv android-ndk-$ANDROID_NDK_RELEASE $ANDROID_NDK_DIR
|
||||
echo
|
||||
fi
|
||||
|
||||
mkdir -p ~/.android && echo "count=0" > ~/.android/repositories.cfg
|
||||
echo "Installing: Accepting Licenses ..."
|
||||
yes | $ANDROID_SDK_DIR/tools/bin/sdkmanager --licenses > /dev/null
|
||||
echo "Installing: Android Build and Platform Tools ..."
|
||||
yes | $ANDROID_SDK_DIR/tools/bin/sdkmanager 'tools' > /dev/null
|
||||
yes | $ANDROID_SDK_DIR/tools/bin/sdkmanager 'platform-tools' > /dev/null
|
||||
yes | $ANDROID_SDK_DIR/tools/bin/sdkmanager 'build-tools;29.0.3' > /dev/null
|
||||
echo
|
||||
|
||||
EXPORT_VAL="export ANDROID_HOME=$ANDROID_SDK_PATH"
|
||||
if ! grep -q "^$EXPORT_VAL" $BASH_RC; then
|
||||
echo $EXPORT_VAL >> $BASH_RC
|
||||
fi
|
||||
#eval $EXPORT_VAL
|
||||
|
||||
EXPORT_VAL="export ANDROID_NDK_ROOT=$ANDROID_NDK_PATH"
|
||||
if ! grep -q "^$EXPORT_VAL" $BASH_RC; then
|
||||
echo $EXPORT_VAL >> $BASH_RC
|
||||
fi
|
||||
#eval $EXPORT_VAL
|
||||
|
||||
EXPORT_VAL="export PATH=$PATH:$ANDROID_SDK_PATH/tools"
|
||||
if ! grep -q "^export PATH=.*$ANDROID_SDK_PATH/tools.*" $BASH_RC; then
|
||||
echo $EXPORT_VAL >> $BASH_RC
|
||||
fi
|
||||
#eval $EXPORT_VAL
|
||||
|
||||
EXPORT_VAL="export PATH=$PATH:$ANDROID_SDK_PATH/tools/bin"
|
||||
if ! grep -q "^export PATH=.*$ANDROID_SDK_PATH/tools/bin.*" $BASH_RC; then
|
||||
echo $EXPORT_VAL >> $BASH_RC
|
||||
fi
|
||||
#eval $EXPORT_VAL
|
||||
|
||||
echo
|
||||
echo "Done!"
|
||||
echo
|
||||
Reference in New Issue
Block a user