-
-
Notifications
You must be signed in to change notification settings - Fork 376
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
Fix lime.ndll build for Apple Silicon #1642
Conversation
On Apple Silicon it still builds the x86_64 ndll by default unless |
That's odd. I thought that was set in the platform class, but |
MacPlatform seems like the right place to me. What are you referring to when you mention multiple architectures? "Universal" apps that support both Apple Silicon and Intel? |
I was looking at LinuxPlatform a bit today in relation to Raspberry Pi stuff. I realized that hxp's |
Me? I was responding to the fact that it's building multiple ndlls. I think it chooses which ndll to build based on which architectures are specified, so I was looking those up. But since it only specifies one architecture, I'd expect it to only build one ndll. |
With 55ca39d, it would be good to double check that the pixman/openal changes here won't break anything for raspberry pi.
Created an issue here to keep track of the hxp changes: openfl/hxp#29 |
Sorry for the noise. I didn’t see any discussion about multiple ndlls being built. I guess I mistakenly thought the issue was that it built the wrong architecture by default, but still built only a single ndll. |
This is correct, on the m1 machine, by default it built |
I've opened a PR to add this: openfl/hxp#30. I assume we'll have to wait for a new hxp release to make use of this? |
Yeah. |
iOS, Android and other platform targets use multiple architectures in a single build. If this is needed or desired for future macOS builds, that functionality could easily be copied and modified from those targets. |
and i used the fix/m1-build-ndll |
and my machine is a x86_64 but i have xcode |
I recall that this one is caused by using the no-inline option with Haxe 4.3. You may need to temporarily downgrade to Haxe 4.2. I don't think our Haxe 4.3 fixes have been merged into the 8.2.0-Dev branch yet, which is what the PR is based on. |
oh ok |
2419e7e
to
7b5055b
Compare
Actually, it looks like 8.2.0-Dev does have most of these patches now but my branch was still out of date. I've updated it now, hopefully this should solve those 4.3 errors. |
it builds good now thank you |
i used the branch fix/m1-build-dll |
@JonnycatMeow Did you manage to resolve this? It's possible that your submodules were not updated after checking out to this branch. The location of the header files is different in the version of pixman used in this branch (because it is based on 8.2.0-Dev rather than develop). See: https://github.com/openfl/lime/blob/8.2.0-Dev/project/README.md#build-troubleshooting |
This PR just fixes compilation issues with the submodules, the rest of the apple silicon related changes are handled in #1642. This won't affect rosetta. Would it be possible to merge this? |
Applies the patch from openfl/libopenal#1, along with some other fixes to get the openal config up to date with the version used in
8.2.0-Dev
. Also applies fixes for pixman build.These patches allow for successful building of the lime ndll on arm64 Mac systems.
See #1640.