mirror of
https://github.com/Nexoniarz/Fry3DX.git
synced 2026-11-03 12:34:27 +00:00
macOS (Apple silicon and Intel): Fry3DX.app with its content in Resources and MoltenVK in Frameworks, OpenGL 4.1 when there's no Vulkan; the program's own path, memory, OS and CPU names on a Mac; files dropped on the window (and opened from the Finder) open; presets macos-arm64/macos-x64, a CI job, tools/package.py macos makes one universal app
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
5c28e3da4e
commit
e22cd2e3e6
15 changed files with 273 additions and 40 deletions
30
.github/workflows/build.yml
vendored
30
.github/workflows/build.yml
vendored
|
|
@ -1,4 +1,5 @@
|
|||
# Builds Fry3DX for Linux (a portable .tar.gz and an AppImage), Windows (.zip) and Android (.apk).
|
||||
# Builds Fry3DX for Linux (a portable .tar.gz and an AppImage), Windows (.zip), macOS (.zip with one
|
||||
# app for Apple silicon and Intel) and Android (.apk).
|
||||
# A tag v* (git tag v0.4.0 && git push --tags) also makes a GitHub release with them;
|
||||
# otherwise they're the run's artifacts (Actions tab).
|
||||
# Android signing: secrets FRY_KEYSTORE_B64 (the keystore, base64) and FRY_KEYSTORE_PASS. Keep
|
||||
|
|
@ -53,6 +54,31 @@ jobs:
|
|||
- uses: actions/upload-artifact@v4
|
||||
with: { name: windows, path: "dist/*" }
|
||||
|
||||
macos:
|
||||
# Built twice (Apple silicon, and Intel cross-built on the same Mac), then joined into one app.
|
||||
runs-on: macos-15
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Tools
|
||||
run: |
|
||||
brew install ninja shaderc
|
||||
# MoltenVK (Vulkan on Metal), for both kinds of Mac, carried inside the app.
|
||||
curl -sfL https://github.com/KhronosGroup/MoltenVK/releases/download/v1.3.0/MoltenVK-macos.tar | tar -x -C "$RUNNER_TEMP"
|
||||
MVK=$(find "$RUNNER_TEMP" -name libMoltenVK.dylib -path '*macOS*' | head -1)
|
||||
lipo -info "$MVK"
|
||||
echo "MVK=$MVK" >> "$GITHUB_ENV"
|
||||
- name: Build
|
||||
run: |
|
||||
for arch in arm64 x64; do
|
||||
cmake --preset macos-$arch -DFRY_MOLTENVK="$MVK"
|
||||
cmake --build build/macos-$arch
|
||||
done
|
||||
cmake --build build/macos-arm64 --target check
|
||||
- name: Package
|
||||
run: python3 tools/package.py macos
|
||||
- uses: actions/upload-artifact@v4
|
||||
with: { name: macos, path: "dist/*" }
|
||||
|
||||
android:
|
||||
runs-on: ubuntu-24.04
|
||||
steps:
|
||||
|
|
@ -77,7 +103,7 @@ jobs:
|
|||
|
||||
release:
|
||||
if: startsWith(github.ref, 'refs/tags/v')
|
||||
needs: [linux, windows, android]
|
||||
needs: [linux, windows, macos, android]
|
||||
runs-on: ubuntu-latest
|
||||
permissions: { contents: write }
|
||||
steps:
|
||||
|
|
|
|||
Loading…
Reference in a new issue