diff --git a/.github/workflows/development.yml b/.github/workflows/development.yml index 0c2c86b8ba..c9e5e61d89 100644 --- a/.github/workflows/development.yml +++ b/.github/workflows/development.yml @@ -19,16 +19,12 @@ 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 @@ -36,63 +32,43 @@ jobs: - 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 ' | 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 diff --git a/Natives/JavaLauncher.m b/Natives/JavaLauncher.m index 6e22c7f46a..de2644ce80 100644 --- a/Natives/JavaLauncher.m +++ b/Natives/JavaLauncher.m @@ -1,4 +1,4 @@ -#include +include #include #include #include diff --git a/Natives/resources/Frameworks/libMoltenVK.dylib b/Natives/resources/Frameworks/libMoltenVK.dylib index 30477a5bad..24e3aa0651 100644 Binary files a/Natives/resources/Frameworks/libMoltenVK.dylib and b/Natives/resources/Frameworks/libMoltenVK.dylib differ diff --git a/Natives/resources/Frameworks/libfreetype.dylib b/Natives/resources/Frameworks/libfreetype.dylib index bdeb0324e9..8471bb99cc 100644 Binary files a/Natives/resources/Frameworks/libfreetype.dylib and b/Natives/resources/Frameworks/libfreetype.dylib differ diff --git a/Natives/resources/Frameworks/libglfw.dylib b/Natives/resources/Frameworks/libglfw.dylib new file mode 100644 index 0000000000..099021176e Binary files /dev/null and b/Natives/resources/Frameworks/libglfw.dylib differ diff --git a/Natives/resources/Frameworks/liblwjgl.dylib b/Natives/resources/Frameworks/liblwjgl.dylib index 80ea3f92ba..1512e48309 100644 Binary files a/Natives/resources/Frameworks/liblwjgl.dylib and b/Natives/resources/Frameworks/liblwjgl.dylib differ diff --git a/Natives/resources/Frameworks/liblwjgl_nanovg.dylib b/Natives/resources/Frameworks/liblwjgl_nanovg.dylib index 32904b8351..ccda2d651a 100644 Binary files a/Natives/resources/Frameworks/liblwjgl_nanovg.dylib and b/Natives/resources/Frameworks/liblwjgl_nanovg.dylib differ diff --git a/Natives/resources/Frameworks/liblwjgl_opengl.dylib b/Natives/resources/Frameworks/liblwjgl_opengl.dylib index a2815a1204..2faab6bbbc 100644 Binary files a/Natives/resources/Frameworks/liblwjgl_opengl.dylib and b/Natives/resources/Frameworks/liblwjgl_opengl.dylib differ diff --git a/Natives/resources/Frameworks/liblwjgl_stb.dylib b/Natives/resources/Frameworks/liblwjgl_stb.dylib index cd3a0015dc..fafe26350e 100644 Binary files a/Natives/resources/Frameworks/liblwjgl_stb.dylib and b/Natives/resources/Frameworks/liblwjgl_stb.dylib differ diff --git a/Natives/resources/Frameworks/liblwjgl_tinyfd.dylib b/Natives/resources/Frameworks/liblwjgl_tinyfd.dylib index f63c964a3e..700e4c81e2 100644 Binary files a/Natives/resources/Frameworks/liblwjgl_tinyfd.dylib and b/Natives/resources/Frameworks/liblwjgl_tinyfd.dylib differ diff --git a/Natives/resources/Frameworks/liblwjgl_vma.dylib b/Natives/resources/Frameworks/liblwjgl_vma.dylib index dc1f8832d2..50cf6343d9 100755 Binary files a/Natives/resources/Frameworks/liblwjgl_vma.dylib and b/Natives/resources/Frameworks/liblwjgl_vma.dylib differ diff --git a/Natives/resources/Frameworks/libopenal.dylib b/Natives/resources/Frameworks/libopenal.dylib index a5f799c18e..2e8f9f4744 100644 Binary files a/Natives/resources/Frameworks/libopenal.dylib and b/Natives/resources/Frameworks/libopenal.dylib differ diff --git a/Natives/resources/Frameworks/libshaderc.dylib b/Natives/resources/Frameworks/libshaderc.dylib index dd57b8069b..1974664569 100644 Binary files a/Natives/resources/Frameworks/libshaderc.dylib and b/Natives/resources/Frameworks/libshaderc.dylib differ