-
Notifications
You must be signed in to change notification settings - Fork 12.7k
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
Add aarch64-unknown-switch-libnx target #74567
Conversation
r? @dtolnay (rust_highfive has picked a reviewer for you, use r? to override) |
|
This is going to require review from the compiler team. r? @pnkfelix |
Going through the Tier 3 target policy RFC:
|
(I have a shallow clone of this repo, but GitHub doesn't support force pushes from shallow clones. However, GitHub does support doing a |
After thinking about it, I've decided that this is a better solution than emulating it using |
This comment has been minimized.
This comment has been minimized.
I'm switching over to |
Due to rust-lang/libc#1829 (comment), I'm marking this as ready for review. |
This comment has been minimized.
This comment has been minimized.
Rebased. Note that libbacktrace will likely break very badly on this platform, but backtraces should Just Work\™ once #74682 is merged. |
This reverts commit cf82394a65b0ba08aaaf682910b4972618c03e61. pthreads TLS works fine for now, and has less of a maintenance burden.
This reverts commit 775ccbb6a855aef4a1b755e3ead85d60bd6e6ed8.
@JohnCSimon Done. |
Is there any update on review of this PR? |
☔ The latest upstream changes (presumably #75110) made this pull request unmergeable. Please resolve the merge conflicts. |
@leo60228 if you can resolve the conflicts, I will get this reviewed as soon as possible |
Sorry, I've been kind of procrastinating working on Rust recently. I'll start working on rebasing in the next few days (I'm getting back to my desktop on Sunday). |
Triage: @leo60228 - Thanks for your contribution, but this has sat idle for a few weeks, I'm closing this as inactive, please feel free to reopen if you want to continue this PR. |
…ch, r=wesleywiser Add Nintendo Switch as tier 3 target [Relevant Zulip Discussion](https://rust-lang.zulipchat.com/#narrow/stream/219381-t-libs/topic/Upstreaming.20Nintendo.20Switch.20Support/near/253445503) This is the first step towards working on incrementally adding support for the Nintendo Switch. After this lands `@leo60228` and I will work on ensuring further work is cleared from a legal perspective before continuing on to work on an allocator and porting libstd. The plan is to keep these changes small and incremental enough so as to not cause unneeded burden on reviewers by submitting a single large patch, as was felt to be the case last attempt at upstreaming (rust-lang#74567). All this specific patch does is add the target itself without and std support, which has been tested on-device and is working as expected. Designated Target Maintainers: * `@leo60228` * `@jam1garner`
This adds a target for Nintendo Switch homebrew using the devkitA64 toolchain. It can be built using the (disabled) CI Docker image.
Needs to be done before merge:
Upstream- Support Linkle's DWARF implementation for target_env = "devkita64" backtrace-rs#361, devkitA64 -> libnx backtrace-rs#362backtrace-rs
changeslibc
changes - Add bindings for target_env = "libnx" libc#1829Upstream LLVM changes (these are only necessary for ELF TLS, which might not be needed)- 5e14dfe48843b5860d1ab3e350b97658bd087b72Find a way to avoid depending on GCC-version-specific paths- c94e84fcb508bb70ad58b57e72c708396fa31484Non-blocking issues:
I have an example program for this target at https://github.com/leo60228/libnx.rs.
Some discussion on this target can be found at https://rust-lang.zulipchat.com/#narrow/stream/122651-general/topic/homebrew.20target.20bikeshedding.