This took so long since there was a failed attempt in unloading and reloading JVM to support Forge 1.17.x. Next attempt would be rewrite everything to Objective-C and move the JVM entry point to the start of the game.
77 lines
2.7 KiB
YAML
77 lines
2.7 KiB
YAML
name: Development build
|
|
|
|
on:
|
|
[push, workflow_dispatch]
|
|
|
|
jobs:
|
|
build:
|
|
name: The guts
|
|
runs-on: macOS-11
|
|
steps:
|
|
- name: Set up cache
|
|
uses: actions/cache@v2
|
|
id: procache
|
|
with:
|
|
path: |
|
|
~/__cache
|
|
key: ${{ runner.os }}-procursus
|
|
|
|
- name: Set up build environment
|
|
uses: maxim-lobanov/setup-xcode@v1
|
|
with:
|
|
xcode-version: '12.5.1'
|
|
|
|
- name: Set up build environment pt. II
|
|
uses: actions/checkout@v2
|
|
|
|
- name: Set up build environment pt. III
|
|
run: git submodule update --init --recursive
|
|
|
|
- name: Set up build environment pt. IV (Install)
|
|
if: steps.procache.outputs.cache-hit != 'true'
|
|
run: |
|
|
wget https://apt.procurs.us/bootstrap_darwin-amd64.tar.zst
|
|
sudo gtar --preserve-permissions -xkf ./bootstrap_darwin-amd64.tar.zst -C /
|
|
echo '/opt/procursus/sbin:/opt/procursus/bin' >> $GITHUB_PATH
|
|
PATH=/opt/procursus/sbin:/opt/procursus/bin:$PATH sudo /opt/procursus/bin/apt-get update
|
|
sudo /opt/procursus/bin/apt-get -V dist-upgrade -y || :
|
|
sudo /opt/procursus/bin/apt-get -V dist-upgrade -y
|
|
sudo /opt/procursus/bin/apt-get install ldid make sed fakeroot -y
|
|
|
|
- name: Set up build environment pt. V
|
|
run: |
|
|
echo '/opt/procursus/sbin:/opt/procursus/bin' >> $GITHUB_PATH
|
|
|
|
- name: Set up build environment pt. IV (cache)
|
|
if: steps.procache.outputs.cache-hit == 'true'
|
|
run: |
|
|
sudo mkdir -p ~/__cache/procursus/var/cache/apt/archives/partial ~/__cache/procursus/var/lib/apt/lists/partial
|
|
sudo rsync -aP ~/__cache/procursus /opt
|
|
sudo /opt/procursus/bin/apt-get update
|
|
sudo /opt/procursus/bin/apt-get -V dist-upgrade -y
|
|
sudo /opt/procursus/bin/apt-get -V dist-upgrade -y
|
|
|
|
- name: Build the Debian package
|
|
run: gmake -j$(sysctl -n hw.ncpu) package
|
|
|
|
- name: Generate dSYM for PojavLauncher
|
|
run: dsymutil --arch arm64 Natives/build/PojavLauncher.app/PojavLauncher
|
|
|
|
- name: Upload build artifact
|
|
uses: actions/upload-artifact@v2
|
|
with:
|
|
name: pojavlauncher_iphoneos-arm.deb
|
|
path: packages/pojavlauncher_iphoneos-arm.deb
|
|
|
|
- name: Upload PojavLauncher.dSYM
|
|
uses: actions/upload-artifact@v2
|
|
with:
|
|
name: PojavLauncher.dSYM
|
|
path: Natives/build/PojavLauncher.app/PojavLauncher.dSYM
|
|
|
|
- name: Copy Procursus to Cache Location
|
|
run: |
|
|
sudo mkdir -p ~/__cache
|
|
sudo rsync -aP /opt/procursus ~/__cache
|
|
sudo rm -rf ~/__cache/procursus/var/cache/apt/archives/partial ~/__cache/procursus/var/lib/apt/lists/partial ~/__cache/procursus/Library/dpkg/triggers/Lock
|