Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
ef8a3fd
bump: moltenvk 1.2.9 to 1.4.2
taylenwells2026-blip May 10, 2026
3be17bc
fix: add MoltenVK 1.4.2 to frameworks
taylenwells2026-blip May 10, 2026
d2d844b
Add files via upload
taylenwells2026-blip May 12, 2026
f17bbf1
Refactor CI workflow to inject custom dylibs
taylenwells2026-blip May 12, 2026
f765ffc
Switch to GitHub Mac runner and install dependencies
taylenwells2026-blip May 12, 2026
e9b7162
Refactor GitHub Actions workflow for iOS build
taylenwells2026-blip May 12, 2026
588fe49
Add JDK 8 setup step in workflow
taylenwells2026-blip May 12, 2026
a25eb09
Modify JDK setup and build process in workflow
taylenwells2026-blip May 12, 2026
3d3ec83
Update development.yml
taylenwells2026-blip May 12, 2026
7c0e512
Fix JAVA_HOME path in development workflow
taylenwells2026-blip May 12, 2026
d64ef31
Update development.yml
taylenwells2026-blip May 12, 2026
8926dc7
Update build step to suppress implicit function errors
taylenwells2026-blip May 12, 2026
8ae5ee2
Refactor compiler flags in development.yml
taylenwells2026-blip May 12, 2026
26961f2
Fix compile error and clean up unused code in JavaLauncher
taylenwells2026-blip May 12, 2026
4916d9a
Fix compile errors and enhance Java setup in JavaLauncher
taylenwells2026-blip May 12, 2026
08fbdff
Add patch step for JavaLauncher header and clean up gmake
taylenwells2026-blip May 12, 2026
3da7cd1
Re-engineer patch step for JavaLauncher header
taylenwells2026-blip May 12, 2026
17134a9
Update patch step for JavaLauncher header handling
taylenwells2026-blip May 12, 2026
1d7f57f
Modify JavaLauncher patching for CMake build options
taylenwells2026-blip May 12, 2026
b957fe2
Update development.yml
taylenwells2026-blip May 12, 2026
bd3b826
Update development workflow by removing JavaLauncher reset
taylenwells2026-blip May 12, 2026
90eb867
Update development.yml
taylenwells2026-blip May 12, 2026
2132f2f
Streamline setup in development workflow
taylenwells2026-blip May 12, 2026
7f5639e
It’s getting to a point bro🫩
taylenwells2026-blip May 12, 2026
bd924ab
Update development workflow to fix header and flags
taylenwells2026-blip May 12, 2026
0245655
Remove comment from development.yml
taylenwells2026-blip May 12, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
76 changes: 26 additions & 50 deletions .github/workflows/development.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,80 +19,56 @@ jobs:
- platform: 2
platform_name: ios

runs-on: J316sAP
runs-on: macos-latest
steps:
- name: Remove work folders
run: |
echo "before"
ls -lah ./
rm -rf ./* || true
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
# --- INJECT HEADER VIA WORKFLOW ---
# This inserts the required system header directly into line 1 of JavaLauncher.m
- name: Fix Missing Mach Header
run: |
echo '#import <mach/task.h>' | cat - Natives/JavaLauncher.m > temp && mv temp Natives/JavaLauncher.m
echo "Successfully injected header into JavaLauncher.m"

- 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 }}
# --- FORCE COMPILER TO DOWNGRADE WARNINGS ---
# Appends flag directly to CMakeLists configurations inside the Natives module
- name: Patch Native Build Flags
run: |
if [ -f "Natives/CMakeLists.txt" ]; then
echo 'add_compile_options("-Wno-error=implicit-function-declaration")' | cat - Natives/CMakeLists.txt > temp && mv temp Natives/CMakeLists.txt
fi

- name: Get gl4es
if: false && steps.gl4es-cache.outputs.cache-hit != 'true'
uses: actions/checkout@main
- name: Set up JDK 8
uses: actions/setup-java@v4
with:
repository: 'PojavLauncherTeam/gl4es-114-extra'
path: 'gl4es'
distribution: 'zulu'
java-version: '8'

- name: Build gl4es
if: false && steps.gl4es-cache.outputs.cache-hit != 'true'
continue-on-error: true
run: |
cd gl4es
git config user.email "github-actions@users.noreply.github.com"
git config 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
- name: Install dependencies
run: |
git add Natives/resources/Frameworks/libgl4es_114.dylib
git commit -am "CI: Update gl4es"
git push
brew install make ldid

- name: Build for ${{ matrix.platform_name }}
run: |
export PATH=/opt/homebrew/bin:$PATH
export PATH="/opt/homebrew/bin:/usr/local/bin:$PATH"
export 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
gmake -j$(sysctl -n hw.ncpu) dsym package PLATFORM=${{ matrix.platform }} BOOTJDK=$JAVA_HOME/bin
gmake -j$(sysctl -n hw.ncpu) dsym package PLATFORM=${{ matrix.platform }} TROLLSTORE_JIT_ENT=1 BOOTJDK=$JAVA_HOME/bin
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
gmake -j$(sysctl -n hw.ncpu) dsym package PLATFORM=${{ matrix.platform }} TROLLSTORE_JIT_ENT=1 BOOTJDK=$JAVA_HOME/bin
else
# Build ipa only for everything else
gmake -j$(sysctl -n hw.ncpu) dsym package PLATFORM=${{ matrix.platform }}
gmake -j$(sysctl -n hw.ncpu) dsym package PLATFORM=${{ matrix.platform }} BOOTJDK=$JAVA_HOME/bin
fi

- name: Upload regular ipa
Expand Down
2 changes: 1 addition & 1 deletion Natives/JavaLauncher.m
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#include <dirent.h>
include <dirent.h>
#include <dlfcn.h>
#include <errno.h>
#include <libgen.h>
Expand Down
Binary file modified Natives/resources/Frameworks/libMoltenVK.dylib
Binary file not shown.
Binary file modified Natives/resources/Frameworks/libfreetype.dylib
Binary file not shown.
Binary file added Natives/resources/Frameworks/libglfw.dylib
Binary file not shown.
Binary file modified Natives/resources/Frameworks/liblwjgl.dylib
Binary file not shown.
Binary file modified Natives/resources/Frameworks/liblwjgl_nanovg.dylib
Binary file not shown.
Binary file modified Natives/resources/Frameworks/liblwjgl_opengl.dylib
Binary file not shown.
Binary file modified Natives/resources/Frameworks/liblwjgl_stb.dylib
Binary file not shown.
Binary file modified Natives/resources/Frameworks/liblwjgl_tinyfd.dylib
Binary file not shown.
Binary file modified Natives/resources/Frameworks/liblwjgl_vma.dylib
Binary file not shown.
Binary file modified Natives/resources/Frameworks/libopenal.dylib
Binary file not shown.
Binary file modified Natives/resources/Frameworks/libshaderc.dylib
Binary file not shown.