Apple: add visionOS build support; unify build container
Depends:
- https://github.com/godotengine/build-containers/pull/154
Adds support for building visionOS and tvOS templates
I updated the commit with the following changes:
- Refactored iOS build script to be easier to maintain and less error prone
- Build iOS with
godot-appleembeddedtoo, and we drop theioscontainer - Fix some errors in visionOS build script sometimes still using "IOS" and thus the wrong SDK (notably Mono builds were broken)
- Remove tvOS build script as it was incomplete, and we don't have tvOS support upstream yet. It's easy enough to recreate (by adapting what will be the then-state of
build-ios) once we have support for tvOS upstream.
I made a test build and everything seems to be working.
I'm doing another full build test with the latest versions of both https://github.com/godotengine/build-containers/pull/154 and this PR to confirm I didn't introduce bugs with my last tweaks.
Then we should be good to merge and ready for 4.5 beta 1 with visionOS templates! :tada:
Tested all the build process successfully!
What's missing now is just confirming that the builds are actually usable to export to visionOS (and iOS as we changed the setup a bit so we should validate it).
- Standard:
- macOS editor: https://github.com/akien-mga/godot/releases/download/_tmp/Godot_v4.5-dev-f42_macos.universal.zip
- Export templates (iOS, visionOS, macOS): https://github.com/akien-mga/godot/releases/download/_tmp/Godot_v4.5-dev-f42_export_templates.tpz
- Mono (C#):
- macOS editor: https://github.com/akien-mga/godot/releases/download/_tmp/Godot_v4.5-dev-f42_mono_macos.universal.zip
- Export templates: https://github.com/akien-mga/godot/releases/download/_tmp/Godot_v4.5-dev-f42_mono_export_templates.tpz
I'm curious to also get test reports for the C# support for visionOS. We haven't done any bespoke setup for it, does it Just Work™? (I doubt it, and I see we have quite a bit of iOS references in modules/mono but no visionOS, so this likely needs to be added.)
So we should probably disable the Mono builds for visionOS for now.
@akien-mga I have not tested C#, but I suspect you are right, so disabling for now is probably a good idea. I can explore that next.
I had a look in modules/mono, and I saw APPLE_EMBEDDED_ENABLED, so perhaps it does Just Work™? The architectures are both arm64.
I'm pretty sure the C# support won't work as is, but let's include it anyway and we'll iterate upon it later.
Thanks! Amazing work :tada: