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

WIP: Windows on Arm support #2397

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from
Draft

WIP: Windows on Arm support #2397

wants to merge 1 commit into from

Conversation

archanox
Copy link

@archanox archanox commented Jul 21, 2024

PR Details

This is a highly experimental WIP draft of getting the entire Stride suite to compile and run on Windows on Arm (WoA).
There has been a lot of broad stroke changes that change projects from win-x64 to win-arm64, just to test this proof of concept.
I have gone through every mention of x86/x64 through the repo to add in arm64 where appropriate, but there are some issues surrounding the native libraries. I feel that there's perhaps documentation somewhere on how to build these binaries that exist in the repo, maybe?

I am seeking any and all feedback and assistance with this PR where possible. I am on Discord in the Stride server as pierce @archanox

Milestone:

  1. Getting the solution to build for arm64 with everything working (tests, packaged, installer built, etc)
  2. Configure multiple targets for a win-x64 build and win-arm64

Current Issues checked in:

  • ClearScript was only bundled with x86/x64 binaries. Dependencies for the Metrics were erroneously upgraded for the entire project. Untested.
  • There are missing binaries for arm64 that do not exist in the repo
  • 32bit/64bit checks assume x86 platform
  • Native library build scripts appear to be pointing at an old version of visual studio
  • MSBuild paths for x86/x64 have been temporarily removed until successful build & test.
  • Preliminary ARM64 UWP changes were checked in, but will likely be reverted.

Goal of this PR:

  • To develop on a WoA device, with Visual Studio integration and to build for Windows and Linux platforms.

Outside the scope of this PR:

  • CI for automated builds of the arm64 version
  • NuGet publishing

Related Issue

#2018

Types of changes

  • Docs change / refactoring / dependency upgrade
  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)

Checklist

  • My change requires a change to the documentation.
  • I have added tests to cover my changes.
  • All new and existing tests passed.
  • I have built and run the editor to try this change out.

@archanox
Copy link
Author

@dotnet-policy-service agree

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

Successfully merging this pull request may close these issues.

1 participant