Repository navigation
Conversation
Add a Darwin POSIX and WebGPU/Metal build path targeting x86-64 under Rosetta, with an Apple Silicon CI smoke check and focused tests. Also retry Builder downloads when a successful HTTP response has a truncated body. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
…rt-slice # Conflicts: # builder/setup/setup.c
Enable Darwin ucontext declarations and make the relative sleep helper available on all POSIX targets. Generate the a64 runtime header for the macOS smoke compile and verify the runner can link an x86-64 executable. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Pass the binary before the architecture flag to lipo. Use the same valid argument order in the macOS builder preflight and CI executable check. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
The host translation units do not require generated suyu helpers. Use a minimal generated-header placeholder so the smoke check does not need to build the C++ translator or require game data. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Define Darwin's feature-test macro alongside X/Open for ucontext and the BSD/POSIX declarations used by the macOS host. Complete the generated-header placeholders in the host compile check. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Include the temporary generated-header directory when syntax-checking the SDL display shim, which also includes the runtime header. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
The Metal display path does not define the Vulkan window descriptor; keep its initialization Linux-only. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Cover the production lipo invocation order so dependency architecture checks remain valid on macOS. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Add initial macOS build support
|
Fix conflicts please, Honestly, macos would be hard to implement considering the fact that macos has integrated graphics, not a gpu, meaning that the fps you would probably experience in game would be less then ideal. What are you averaging in game on macOS? |
|
i am currently testing it so ii changed it to a drafft |
|
Looks cool, yet I'm curious why this is even needed in the first place. I believe there are projects like Macnative that have this done already. |
Fix host compiler selection for native helpers and give ZBIC its macOS dynamic-library build path. Make the regression runner distinguish Windows, Linux, and macOS, guard platform-specific packaging scripts, and remove an undefined stale Windows preflight branch. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
|
As I thought it would be cool to just have a version of hookshot for mac as I believe it's great. |
|
And I also have another Mac computer and I want to just try to port something to mac for once |
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Package the standalone HookshotBuilder.app with its tools inside Resources and publish an app-only zip asset for version tags. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
|
I have an M4 so would be happy to test this too |
|
https://github.com/NotRexed/Hookshot/actions/runs/42512541321/artifacts/13630345902 this should have the zip of the app |
|
tell me if somethings wrong as i haven't had the chance to test it yet as my laptop died and i am editing it from a pc |
|
Could you check if it support sdl3 ? there's a new stub for swapping between 2 and 3. And could you check for cross-compilation from linux (most generic builder in CI's), its mostly a recommendation to be able to do 3 builds from the same type of machine |
|
Could you check to combine work on this ? |
|
I'll try |
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
|
https://github.com/NotRexed/Hookshot/actions/runs/42517523284/artifacts/13632390784 The newest one if someone wants to try It should work and has the other ones in it too |
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
|
Tested the latest build (run 42517523284) on an M4 Pro, macOS 27.0.1, with Xcode installed. It didn't work as downloaded. I hit two bugs: 1. Reading the
2. It looks like the app is ad-hoc signed before With both fixed locally, the app opens to the builder window. I'll report back after a full build. |
|
Update: after a few local fixes the build finishes, but the game crashes on startup. Fixed locally (please add to the PR):
Still broken:
Tested on an M4 Pro, macOS 27.0.1. |
|
Last update from me. I'm on Windows and only tested this on my Mac as a favour, so I'm handing it back to you. With the fixes below the game boots to the title screen on an M4 Pro at about 30 fps. More fixes needed (on top of my last comment):
Still broken (not fixed):
I didn't get past the title screen. |
|
Closing to keep the queue clear — please rebase on current main and reopen; thanks! |
|
Ok Thanks for all the help I'll try to fix it just as you also said |
macOS builder app
Adds an Apple Silicon macOS builder package that uses the existing Hookshot Builder interface. The generated
HookshotBuilder.applaunches the same Tk-based builder used by the Linux package, with macOS-specific config and Finder-folder handling. A command-line launcher is included as well.The builder runs its x86-64 game toolchain under Rosetta 2 and uses WebGPU's Metal backend. CI packages Python, SDL2, static FFmpeg and wgpu-native with the source. It does not receive a game dump or build a game; users supply their own
.nupfile.The first package attempt took about 15 minutes and failed after dependency compilation because the wgpu-native license URL used hyphens instead of the upstream filenames' periods. This update fixes those URLs, runs dependency builds natively on Apple Silicon (only the x86 Python runtime uses Rosetta), skips the separate dav1d build in favor of FFmpeg's AV1 decoder, and caches built dependencies. The macOS builder job compiles the app, checks the packaged launcher, and uploads `HookshotBuilder-macos-arm64"
Validation