Skip to content

Conversation

@johnnyshields
Copy link
Contributor

@johnnyshields johnnyshields commented Jan 2, 2025

Currently the logic for detecting mingw is too strict. It needs to be loosened to support upcoming aarch64-mingw-ucrt architecture. See this PR: oneclick/rubyinstaller2#399

See also: #8379

@johnnyshields johnnyshields changed the title Support "windows" as an OS platform Support "mingw" generically an OS platform Jan 2, 2025
@johnnyshields johnnyshields changed the title Support "mingw" generically an OS platform Support "mingw" generically as a Windows OS platform Jan 2, 2025
@johnnyshields johnnyshields changed the title Support "mingw" generically as a Windows OS platform Support "mingw" generically as a Windows OS platform (support for aarch64-mingw-ucrt) Jan 2, 2025
@johnnyshields johnnyshields changed the title Support "mingw" generically as a Windows OS platform (support for aarch64-mingw-ucrt) Support "mingw" generically as a Windows OS architecture (support for aarch64-mingw-ucrt) Jan 2, 2025
@johnnyshields johnnyshields force-pushed the add-windows-os-support branch from 8327321 to 3ba3fe1 Compare January 2, 2025 13:53
@johnnyshields
Copy link
Contributor Author

@deivid-rodriguez can you please take a look at this as well as PR #8379? I'm trying to figure out the direction I should go here... I'm thinking possibly we should make "windows" something more akin to how generic "ruby" platform works today (so basically "windows", "java" and "ruby" are the 3 generic platforms.)

@larskanis
Copy link
Contributor

Thank you @johnnyshields for working on this issue and notifying me! I can confirm it fixes platform mapping issue in oneclick/rubyinstaller2#399 . 👍

@deivid-rodriguez
Copy link
Contributor

I'll look into this @johnnyshields 👍, thanks!

@ntkme
Copy link
Contributor

ntkme commented Jan 15, 2025

In my opinion using universal-mingw, or universal-mingw-ucrt, or explictly arm64ec-mingw-ucrt & arm64x-mingw-ucrt would be better than mingw for precompiled ARM64EC or ARM64X windows binaries, similar to what universal-darwin does for Mac universal binaries. This gives us better consistency on the arch-os-variant pattern, with platform ruby and java being only exceptions.

I’d be happy to see that -ucrt become implicit for mingw, similar to how -gnu is implicit for linux. However, this is a potentially breaking change for older ruby versions built with MSVCRT, similar to how implicit linux has been a problem for *-linux-musl platform.

@johnnyshields
Copy link
Contributor Author

@deivid-rodriguez, the Ruby Installer for Windows ARM is now available 🎉 It would be great if you could help look at this soon so we can start using Windows on ARM?

@deivid-rodriguez
Copy link
Contributor

Yep, thanks for the ping. I was planning to start looking into this this week.

@deivid-rodriguez
Copy link
Contributor

deivid-rodriguez commented Jan 24, 2025

@johnnyshields I started looking into this, and I ended up introducing a fair amount of additional changes, so I created a separate PR to supersede this one. See #8428. I tried to implement the approach suggested by @ntkme. Please give it a try!

@deivid-rodriguez
Copy link
Contributor

Closing in favor of #8428.

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.

4 participants