rust-console / gba

A crate that helps you make GBA games
https://docs.rs/gba
Apache License 2.0
658 stars 50 forks source link

Get the GBA targets to Tier 2 #196

Open Lokathor opened 6 months ago

Lokathor commented 6 months ago

We use many nightly things, but most of them could be pulled out if necessary. However, build-std can't be worked around, and it also isn't likely to become stable any time soon.

But if we can get our GBA target promoted to Tier 2, then we won't need build-std.


Quoting https://doc.rust-lang.org/rustc/target-tier-policy.html#tier-2-target-policy:

Lokathor commented 6 months ago

Hey @QuinnPainter you're listed as the maintainer for armv5te-none-eabi, which the target docs mention as being for the DS. Would you want to team up so that you're added as a v4T maintainer, and I'm added as a v5TE maintainer, and then both our targets would qualify for being in Tier 2?

Lokathor commented 6 months ago

With no response, I'll ping @gwilymk and @corwinkuiper as well, since you two are the listed owners of the agb crate. Would either of you two care to be listed as a second maintainer for the two GBA targets so we can qualify for Tier 2?

corwinkuiper commented 6 months ago

What does being a maintainer entail? I'm no rust compiler expert / LLVM wrangler, so I'm not sure I could be much use.

Lokathor commented 6 months ago

Basically it's no work at all. Other than the time I initially added the target entry file I've basically never had to do an update. I got ping'd once to sign off on some documentation updates that affected several targets, but I didn't even have to actually wrangle code.

The ARMv4T targets are extremely old, which means that they're also basically "settled" at this point, and there's no updates to keep up with or anything like that like some other targets (eg: for WASM or MacOS or whatever).

corwinkuiper commented 6 months ago

I reckon I should be able to be a listed maintainer in that case.

Lokathor commented 6 months ago

Alright, I opened a PR to add you, https://github.com/rust-lang/rust/pull/126003, if you could leave a comment there.

Lokathor commented 5 months ago

updated the opening to be a checkbox list of our goals. the main thing to handle before we can open an MCP is to document how to do automated testing.

corwinkuiper commented 5 months ago

What is the test suite?

Lokathor commented 5 months ago

presumably some or all of the tests described here, https://rustc-dev-guide.rust-lang.org/tests/intro.html

The compiletest part, and the package test for core

corwinkuiper commented 5 months ago

From the name compiletest is hopefully not too bad, I'd need to look into how to run core's tests. I need to relook at test running in general considering the custom_test_framework feature's tracking issue is now closed.

Lokathor commented 5 months ago

I spoke to Josh T. and they said it's still the best we've got, so basically we should keep using it for now even though some day we'll have to switch to some new framework (once someone designs the next framework).