godot-build-scripts icon indicating copy to clipboard operation
godot-build-scripts copied to clipboard

Apple: add visionOS build support; unify build container

Open stuartcarnie opened this issue 7 months ago • 2 comments

Depends:

  • https://github.com/godotengine/build-containers/pull/154

Adds support for building visionOS and tvOS templates

stuartcarnie avatar Jun 05 '25 20:06 stuartcarnie

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-appleembedded too, and we drop the ios container
  • 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.

akien-mga avatar Jun 13 '25 21:06 akien-mga

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:

akien-mga avatar Jun 13 '25 22:06 akien-mga

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 avatar Jun 14 '25 22:06 akien-mga

@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.

stuartcarnie avatar Jun 15 '25 02:06 stuartcarnie

I had a look in modules/mono, and I saw APPLE_EMBEDDED_ENABLED, so perhaps it does Just Work™? The architectures are both arm64.

stuartcarnie avatar Jun 15 '25 02:06 stuartcarnie

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.

akien-mga avatar Jun 16 '25 00:06 akien-mga

Thanks! Amazing work :tada:

akien-mga avatar Jun 16 '25 00:06 akien-mga