-
Notifications
You must be signed in to change notification settings - Fork 92
WIP Added Vision Pro build support #502
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
base: main
Are you sure you want to change the base?
Conversation
…de project after to xros
…be copied to xcode Libraries folder
…ode build - likely will cause issues
Thanks for the PR @handzlikchris!
Hmm it kind of seems like vcpkg doesn't understand visionOS as a system name. Information on this seems to be really sparse in my attempts to search so far. Worst case, it'll be necessary to define a custom toolchain. A stupid question first, though... is visionOS really different from iOS? What I mean is, for fairly low-level code like cesium-native and its dependencies, is it possible to target a "least common denominator" of iOS and visionOS such that we don't need separate binaries for each? Or are they really such different operating systems? |
@kring That's good question. To be honest I don't know how different VisionOS is from IOS. I don't have much experience with cmake, though that it may be a low-hanging fruit to change target to VisionOS for someone with more knowledge there. If not - it may well be that building for IOS is good enough |
@@ -349,7 +377,7 @@ public static LibraryToBuild GetLibraryToBuild(PlatformToBuild platform, Library | |||
library.ExtraConfigureArgs.Add("-DCMAKE_ANDROID_ARCH_ABI=arm64-v8a"); | |||
} | |||
|
|||
if (platform.platformGroup == BuildTargetGroup.iOS) | |||
if (platform.platformGroup == BuildTargetGroup.iOS || platform.platformGroup == BuildTargetGroup.VisionOS) | |||
{ | |||
library.Toolchain = "extern/ios-toolchain.cmake"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We suppose that using same toolchain as iOS will work. However CMAKE_SYSTEM_NAME are not the same:
iOS vs visionOS
https://cmake.org/cmake/help/latest/manual/cmake-toolchains.7.html#cross-compiling-for-ios-tvos-visionos-or-watchos
We are also trying to run Cesium for Unity on Vision OS. I'm not in the office today, but I will investigate this tomorrow.
Added Vision Pro build support, this is done by:
Generated-VisionOS
Still work in progress but should be good starting place for anyone looking to use Cesium for Unity on Vision Pro / Polyspatial.
Approach taken here contains some workarounds - happy to continue on this one but would need some guidance.
extern/xros-toolchain.cmake
when I tried to build that it'd fail when resolving tripletsCould resolve that properly to build for VisionOS from start.
As they fail to compile (duplicated symbols) - not 100% sure if that exclusion will cause issues.
Also looks like native project for this PR installs into Plugins folder quite a lot of libraries that I've not seen built in other forum threads, notably 86 libs build for
libabsl_XXX.a
eglibabsl_bad_any_cast_impl.a
,libabsl_string_view.a
,libabsl_throw_delegate.a