These builds do not work outside of the tvOS simulator, UI rewrite is required. For now, disable the builds.
172 lines
6.1 KiB
YAML
172 lines
6.1 KiB
YAML
name: Development build
|
|
|
|
on:
|
|
pull_request:
|
|
branches-ignore:
|
|
- 'l10n_main'
|
|
types: [opened, reopened]
|
|
push:
|
|
branches-ignore:
|
|
- 'l10n_main'
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
build:
|
|
name: Development build
|
|
strategy:
|
|
matrix:
|
|
include:
|
|
- platform: 2
|
|
platform_name: ios
|
|
- platform: 7
|
|
platform_name: iossimulator
|
|
- platform: 8
|
|
platform_name: tvossimulator
|
|
|
|
runs-on: MacStadium
|
|
steps:
|
|
- name: Remove work folders
|
|
env:
|
|
password: ${{ secrets.ELLIE_MINI_SECRET }}
|
|
run: |
|
|
echo "before"
|
|
ls -lah ./
|
|
echo $password | sudo -S rm -rf ./* || true
|
|
echo $password | sudo -S rm -rf ./.??* || true
|
|
echo "after"
|
|
ls -lah ./
|
|
|
|
- name: Checkout repository
|
|
uses: actions/checkout@main
|
|
|
|
- name: Checkout repository submodules
|
|
run: git submodule update --init --recursive
|
|
|
|
- name: Get gl4es latest commit hash
|
|
id: gl4es-sha
|
|
run: echo "::set-output name=sha::$(echo $(git ls-remote https://github.com/PojavLauncherTeam/gl4es-114-extra refs/heads/master | grep -io '^\S*'))"
|
|
shell: bash
|
|
|
|
- name: Cache gl4es
|
|
uses: actions/cache@main
|
|
if: false # use gl4es 1.1.5
|
|
id: gl4es-cache
|
|
with:
|
|
path: gl4es/libs
|
|
key: gl4es-holy-ios-shared-2-${{ steps.gl4es-sha.outputs.sha }}
|
|
|
|
- name: Get gl4es
|
|
if: false && steps.gl4es-cache.outputs.cache-hit != 'true'
|
|
uses: actions/checkout@main
|
|
with:
|
|
repository: 'PojavLauncherTeam/gl4es-114-extra'
|
|
path: 'gl4es'
|
|
|
|
- name: Build gl4es
|
|
if: false && steps.gl4es-cache.outputs.cache-hit != 'true'
|
|
continue-on-error: true
|
|
run: |
|
|
cd gl4es
|
|
git config --global user.email "[email protected]"
|
|
git config --global user.name "github-actions"
|
|
export PATH=/opt/procursus/bin:$PATH
|
|
wget https://github.com/leetal/ios-cmake/raw/master/ios.toolchain.cmake
|
|
cmake -B build -DCMAKE_TOOLCHAIN_FILE=ios.toolchain.cmake -DDEFAULT_ES=2 \
|
|
-DNOX11=ON -DNOEGL=OFF -DSTATICLIB=OFF -DPLATFORM=OS64 \
|
|
-DCMAKE_C_FLAGS=-Wno-error=implicit-function-declaration
|
|
cmake --build build --config RelWithDebInfo --target GL
|
|
cp -R lib/libGL.dylib ../Natives/resources/Frameworks/libgl4es_114.dylib
|
|
|
|
- name: Push gl4es
|
|
if: false && github.event != 'pull_request' && github.ref_name == 'main' && steps.gl4es-cache.outputs.cache-hit != 'true'
|
|
continue-on-error: true
|
|
run: |
|
|
git add Natives/resources/Frameworks/libgl4es_114.dylib
|
|
git commit -am "CI: Update gl4es"
|
|
git push
|
|
|
|
- name: Get JRE8
|
|
uses: dawidd6/action-download-artifact@v2
|
|
with:
|
|
github_token: ${{secrets.GITHUB_TOKEN}}
|
|
workflow: build.yml
|
|
path: depends
|
|
workflow_conclusion: success
|
|
allow_forks: false
|
|
repo: PojavLauncherTeam/android-openjdk-build-multiarch
|
|
branch: buildjre8
|
|
name: jre8-ios-aarch64
|
|
|
|
- name: Get JRE17
|
|
uses: dawidd6/action-download-artifact@v2
|
|
with:
|
|
github_token: ${{secrets.GITHUB_TOKEN}}
|
|
workflow: build.yml
|
|
path: depends
|
|
workflow_conclusion: completed
|
|
allow_forks: false
|
|
repo: PojavLauncherTeam/android-openjdk-build-multiarch
|
|
branch: buildjre17-21
|
|
name: jre17-ios-aarch64
|
|
|
|
- name: Get JRE21
|
|
uses: dawidd6/action-download-artifact@v2
|
|
with:
|
|
github_token: ${{secrets.GITHUB_TOKEN}}
|
|
workflow: build.yml
|
|
path: depends
|
|
workflow_conclusion: completed
|
|
allow_forks: false
|
|
repo: PojavLauncherTeam/android-openjdk-build-multiarch
|
|
branch: buildjre17-21
|
|
name: jre21-ios-aarch64
|
|
|
|
- name: Build for ${{ matrix.platform_name }}
|
|
env:
|
|
password: ${{ secrets.ELLIE_MINI_SECRET }}
|
|
run: |
|
|
export PATH=/opt/procursus/bin:/opt/homebrew/bin:$PATH
|
|
export RUNNER=1 SLIMMED=1
|
|
if [ "${{ matrix.platform_name }}" == "ios" ]; then
|
|
# Build ipa and tipa for iOS
|
|
gmake -j$(sysctl -n hw.ncpu) dsym package PLATFORM=${{ matrix.platform }}
|
|
gmake -j$(sysctl -n hw.ncpu) dsym package PLATFORM=${{ matrix.platform }} TROLLSTORE_JIT_ENT=1
|
|
elif [ "${{ matrix.platform_name }}" == "tvos" ]; then
|
|
# Build tipa only for tvOS
|
|
gmake -j$(sysctl -n hw.ncpu) dsym package PLATFORM=${{ matrix.platform }} TROLLSTORE_JIT_ENT=1
|
|
else
|
|
# Build ipa only for everything else
|
|
gmake -j$(sysctl -n hw.ncpu) dsym package PLATFORM=${{ matrix.platform }}
|
|
fi
|
|
|
|
- name: Upload regular ipa
|
|
uses: actions/upload-artifact@main
|
|
with:
|
|
name: net.kdt.pojavlauncher-${{ matrix.platform_name }}.ipa
|
|
path: artifacts/net.kdt.pojavlauncher-*-${{ matrix.platform_name }}.ipa
|
|
|
|
- name: Upload regular tipa
|
|
uses: actions/upload-artifact@main
|
|
with:
|
|
name: net.kdt.pojavlauncher-${{ matrix.platform_name }}-trollstore.tipa
|
|
path: artifacts/net.kdt.pojavlauncher-*-${{ matrix.platform_name }}-trollstore.tipa
|
|
|
|
- name: Upload slimmed ipa
|
|
uses: actions/upload-artifact@main
|
|
with:
|
|
name: net.kdt.pojavlauncher.slimmed-${{ matrix.platform_name }}.ipa
|
|
path: artifacts/net.kdt.pojavlauncher.slimmed-*-${{ matrix.platform_name }}.ipa
|
|
|
|
- name: Upload slimmed tipa
|
|
uses: actions/upload-artifact@main
|
|
with:
|
|
name: net.kdt.pojavlauncher.slimmed-${{ matrix.platform_name }}-trollstore.tipa
|
|
path: artifacts/net.kdt.pojavlauncher.slimmed-*-${{ matrix.platform_name }}-trollstore.tipa
|
|
|
|
- name: Upload PojavLauncher.dSYM
|
|
uses: actions/upload-artifact@main
|
|
if: matrix.platform_name == 'ios'
|
|
with:
|
|
name: PojavLauncher.dSYM
|
|
path: artifacts/PojavLauncher.dSYM
|