Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CI: Add macOS arm build #588

Open
shinra-electric opened this issue Aug 27, 2024 · 1 comment
Open

CI: Add macOS arm build #588

shinra-electric opened this issue Aug 27, 2024 · 1 comment

Comments

@shinra-electric
Copy link
Contributor

I tried building Panda3DS locally for Arm, and the results were better than the official x86 build.

So I took a look at the CI and I think that the only thing to do to create an arm64 artifact is just to change runs-on: macos-13 to either runs-on: macos-14 or runs-on: macos-latest, as these are both arm64 runners.

Of course this would replace the Intel build, leaving no build for x86 users, which is probably not desirable.

Duplicating the job and appending the architecture type to the artifact name would be a good solution, but then this would require changes to the downloads page of the website (and likely more changes elsewhere).

Having two builds is the simpler solution, but the ideal solution would be to create a universal app bundle. However, I'm not too familiar with that process (I could learn though...)

What do the devs think?

@wheremyfoodat
Copy link
Owner

wheremyfoodat commented Aug 27, 2024

Of course this would replace the Intel build, leaving no build for x86 users, which is probably not desirable.

Indeed

Having two builds is the simpler solution

Given that people have tried to open the executable with a text editor before, the problem here is that they absolutely can't be trusted with downloading the correct build.

but the ideal solution would be to create a universal app bundle

Which is fairly non-trivial to do here due to the way CMake handles cross-compilation on MacOS (CMAKE_OSX_ARCHITECTURES) being fairly awful and unintuitive to plug into an existing codebase.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants