mirror of
https://github.com/ddnet/ddnet.git
synced 2024-11-18 05:58:19 +00:00
ad9b44bfed
This file is not supposed to be added to version control and will be regenerated whenever the Gradle build is run.
86 lines
3.2 KiB
Bash
86 lines
3.2 KiB
Bash
#!/bin/bash
|
|
|
|
[ "$1" == "" ] && {
|
|
printf '\e[31mDid not pass ANDROID_SDK_ROOT to build script\e[30m\n'
|
|
exit 1
|
|
}
|
|
|
|
[ "$2" == "" ] && {
|
|
printf '\e[31mDid not pass APK name to build script\e[30m\n'
|
|
exit 1
|
|
}
|
|
|
|
[ "$3" == "" ] && {
|
|
printf '\e[31mDid not pass build type to build script\e[30m\n'
|
|
exit 1
|
|
}
|
|
|
|
_APK_BASENAME="$2"
|
|
|
|
sed -i "s/DDNet/${2}/g" settings.gradle
|
|
|
|
_REPLACE_PACKAGE_NAME_STR="tw.${2,,}"
|
|
|
|
sed -i "s/tw.DDNet/${_REPLACE_PACKAGE_NAME_STR}/g" build.gradle
|
|
|
|
TW_KEY_NAME_ESCAPED=$(echo "$TW_KEY_NAME"|sed 's/\//\\\//g')
|
|
TW_KEY_PW_ESCAPED=$(echo "$TW_KEY_PW"|sed 's/\//\\\//g')
|
|
TW_KEY_ALIAS_ESCAPED=$(echo "$TW_KEY_ALIAS"|sed 's/\//\\\//g')
|
|
|
|
sed -i "s/TW_KEY_NAME/${TW_KEY_NAME_ESCAPED}/g" build.gradle
|
|
sed -i "s/TW_KEY_PW/${TW_KEY_PW_ESCAPED}/g" build.gradle
|
|
sed -i "s/TW_KEY_ALIAS/${TW_KEY_ALIAS_ESCAPED}/g" build.gradle
|
|
|
|
sed -i "s/DDNet/${2}/g" src/main/res/values/strings.xml
|
|
|
|
sed -i "s/\"DDNet\"/\"${2}\"/g" src/main/AndroidManifest.xml
|
|
sed -i "s/tw.DDNet/${_REPLACE_PACKAGE_NAME_STR}/g" src/main/AndroidManifest.xml
|
|
|
|
sed -i "s/TW_NDK_VERSION/${ANDROID_NDK_VERSION}/g" build.gradle
|
|
sed -i "s/TW_VERSION_CODE/${TW_VERSION_CODE}/g" build.gradle
|
|
sed -i "s/TW_VERSION_NAME/${TW_VERSION_NAME}/g" build.gradle
|
|
|
|
mv src/main/java/tw/DDNet src/main/java/tw/"${2}"
|
|
|
|
sed -i "s/tw.DDNet/${_REPLACE_PACKAGE_NAME_STR}/g" src/main/java/tw/"${2}"/NativeMain.java
|
|
sed -i "s/tw.DDNet/${_REPLACE_PACKAGE_NAME_STR}/g" proguard-rules.pro
|
|
|
|
# disable hid manager for now
|
|
sed -i "s/mHIDDeviceManager = HIDDeviceManager.acquire(this);/mHIDDeviceManager=null;/g" src/main/java/org/libsdl/app/SDLActivity.java
|
|
|
|
if [[ "${3}" == "Debug" ]]; then
|
|
sed -i "s/android.enableR8.fullMode=true/android.enableR8.fullMode=false/g" gradle.properties
|
|
fi
|
|
|
|
if [[ -z ${GE_NO_APK_BUILD} || "${GE_NO_APK_BUILD}" != "1" ]]; then
|
|
_RELEASE_TYPE_NAME=debug
|
|
_RELEASE_TYPE_APK_NAME=
|
|
if [[ "${3}" == "Debug" ]]; then
|
|
_RELEASE_TYPE_NAME=debug
|
|
fi
|
|
|
|
if [[ "${3}" == "Release" ]]; then
|
|
_RELEASE_TYPE_NAME=release
|
|
_RELEASE_TYPE_APK_NAME=
|
|
fi
|
|
|
|
APP_BASE_NAME=Gradle
|
|
CLASSPATH=gradle-wrapper.jar
|
|
java "-Dorg.gradle.appname=${APP_BASE_NAME}" -classpath "${CLASSPATH}" org.gradle.wrapper.GradleWrapperMain --warning-mode all
|
|
if [[ "${3}" == "Debug" ]]; then
|
|
java "-Dorg.gradle.appname=${APP_BASE_NAME}" -classpath "${CLASSPATH}" org.gradle.wrapper.GradleWrapperMain --warning-mode all builddebug
|
|
java "-Dorg.gradle.appname=${APP_BASE_NAME}" -classpath "${CLASSPATH}" org.gradle.wrapper.GradleWrapperMain --warning-mode all assembleDebug
|
|
else
|
|
java "-Dorg.gradle.appname=${APP_BASE_NAME}" -classpath "${CLASSPATH}" org.gradle.wrapper.GradleWrapperMain --warning-mode all buildrelease
|
|
java "-Dorg.gradle.appname=${APP_BASE_NAME}" -classpath "${CLASSPATH}" org.gradle.wrapper.GradleWrapperMain --warning-mode all assembleRelease
|
|
fi
|
|
cp build/outputs/apk/"$_RELEASE_TYPE_NAME"/"$_APK_BASENAME"-"$_RELEASE_TYPE_NAME""$_RELEASE_TYPE_APK_NAME".apk "$_APK_BASENAME".apk
|
|
|
|
|
|
if [[ "${3}" == "Release" ]]; then
|
|
java "-Dorg.gradle.appname=${APP_BASE_NAME}" -classpath "${CLASSPATH}" org.gradle.wrapper.GradleWrapperMain --warning-mode all bundleRelease
|
|
|
|
cp build/outputs/bundle/"$_RELEASE_TYPE_NAME"/"$_APK_BASENAME"-"$_RELEASE_TYPE_NAME""$_RELEASE_TYPE_APK_NAME".aab "$_APK_BASENAME".aab
|
|
fi
|
|
fi
|