mirror of
https://github.com/AngelAuraMC/Amethyst-Android.git
synced 2026-04-19 09:07:06 -04:00
136 lines
4.6 KiB
YAML
136 lines
4.6 KiB
YAML
name: Android CI
|
|
|
|
on:
|
|
pull_request:
|
|
branches-ignore:
|
|
- 'l10n_v3_openjdk2'
|
|
push:
|
|
branches-ignore:
|
|
- 'l10n_v3_openjdk2'
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-20.04
|
|
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
|
|
- uses: actions/checkout@v2
|
|
with:
|
|
repository: PojavLauncherTeam/gl4es
|
|
path: gl4es
|
|
|
|
- name: set up JDK 1.8
|
|
uses: actions/setup-java@v1
|
|
with:
|
|
java-version: 1.8
|
|
|
|
# - name: Build latest GL4ES
|
|
# continue-on-error: true
|
|
# run: |
|
|
# cd gl4es
|
|
# git remote add upstream https://github.com/ptitSeb/gl4es
|
|
# git fetch upstream
|
|
# git checkout master
|
|
# git merge upstream/main || echo "Merge exit code $?"
|
|
# export ANDROID_NDK_HOME="$ANDROID_SDK_ROOT/ndk-bundle"
|
|
# $ANDROID_NDK_HOME/ndk-build NDK_PROJECT_PATH=. APP_BUILD_SCRIPT=./Android.mk NDK_DEBUG=1
|
|
# cp -R libs/* ../app_pojavlauncher/src/main/jniLibs/
|
|
|
|
- name: Get jre8-aarch32
|
|
uses: dawidd6/action-download-artifact@v2
|
|
with:
|
|
github_token: ${{secrets.GITHUB_TOKEN}}
|
|
workflow: build.yml
|
|
path: jre
|
|
workflow_conclusion: success
|
|
repo: PojavLauncherTeam/android-openjdk-build-multiarch
|
|
name: jre8-aarch32
|
|
|
|
- name: Get jre8-aarch64
|
|
uses: dawidd6/action-download-artifact@v2
|
|
with:
|
|
github_token: ${{secrets.GITHUB_TOKEN}}
|
|
workflow: build.yml
|
|
path: jre
|
|
workflow_conclusion: success
|
|
repo: PojavLauncherTeam/android-openjdk-build-multiarch
|
|
name: jre8-aarch64
|
|
|
|
- name: Get jre8-x86
|
|
uses: dawidd6/action-download-artifact@v2
|
|
with:
|
|
github_token: ${{secrets.GITHUB_TOKEN}}
|
|
workflow: build.yml
|
|
path: jre
|
|
workflow_conclusion: success
|
|
repo: PojavLauncherTeam/android-openjdk-build-multiarch
|
|
name: jre8-x86
|
|
|
|
- name: Get jre8-x86_64
|
|
uses: dawidd6/action-download-artifact@v2
|
|
with:
|
|
github_token: ${{secrets.GITHUB_TOKEN}}
|
|
workflow: build.yml
|
|
path: jre
|
|
workflow_conclusion: success
|
|
repo: PojavLauncherTeam/android-openjdk-build-multiarch
|
|
name: jre8-x86_64
|
|
|
|
- name: Repack JRE
|
|
run: |
|
|
cd jre
|
|
mkdir work
|
|
mkdir work1
|
|
cd work
|
|
jrepath=$GITHUB_WORKSPACE/app_pojavlauncher/src/main/assets/components/jre
|
|
mkdir -p $jrepath
|
|
work=$GITHUB_WORKSPACE/work
|
|
work1=$GITHUB_WORKSPACE/work1
|
|
makearch () { cd $work; tar xf $(ls ../jre8-$2-*release.tar.xz); mv bin $work1/; mkdir -p $work1/lib; mv lib/$1 $work1/lib/; mv release $work1/; tar cJf bin-$2.tar.xz $work1/*; mv bin-$2.tar.xz $jrepath/;, rm -rf $work/*; rm -rf $work1/*; }
|
|
makeuni () { cd $work; tar xf $(ls ../jre8-arm64-*release.tar.xz); rm -rf bin; rm -rf lib/aarch64; rm release; tar cJf universal.tar.xz *; mv universal.tar.xz $jrepath/;, rm -rf $work/*; }
|
|
makeuni
|
|
makearch aarch32 arm
|
|
makearch aarch64 arm64
|
|
makearch x86 x86
|
|
makearch x86_64 x86_64
|
|
- name: Build APK with Gradle
|
|
run: |
|
|
chmod +x scripts/languagelist_updater.sh
|
|
bash scripts/languagelist_updater.sh
|
|
|
|
mkdir -p out
|
|
chmod +x gradlew
|
|
./gradlew clean
|
|
|
|
# Build JRE JAR files (security manager, etc...)
|
|
./gradlew :jre_lwjgl3glfw:build
|
|
# mkdir app_pojavlauncher/src/main/assets/components/internal_libs
|
|
rm app_pojavlauncher/src/main/assets/components/lwjgl3/lwjgl-glfw-classes.jar
|
|
cp jre_lwjgl3glfw/build/libs/jre_lwjgl3glfw-3.2.3.jar app_pojavlauncher/src/main/assets/components/lwjgl3/lwjgl-glfw-classes.jar
|
|
|
|
# Build the launcher
|
|
./gradlew :app_pojavlauncher:assembleDebug
|
|
mv app_pojavlauncher/build/outputs/apk/debug/app_pojavlauncher-debug.apk out/app-debug.apk
|
|
# mv app_pojavlauncher/build/intermediates/merged_native_libs/debug/out/lib out/debug_lib
|
|
|
|
- name: Build APK without runtime
|
|
run: |
|
|
rm -r app_pojavlauncher/src/main/assets/components/jre
|
|
./gradlew assembleDebug
|
|
mv app_pojavlauncher/build/outputs/apk/debug/app_pojavlauncher-debug.apk out/app-debug-noruntime.apk
|
|
|
|
- name: Upload APK
|
|
uses: actions/upload-artifact@v2
|
|
with:
|
|
name: app-debug
|
|
path: out/app-debug.apk
|
|
|
|
- name: Upload APK (without runtime)
|
|
uses: actions/upload-artifact@v2
|
|
with:
|
|
name: app-debug-noruntime
|
|
path: out/app-debug-noruntime.apk
|
|
|