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

Add i586-unknown-linux-gnu rustc binaries #35045

Closed
goertzenator opened this issue Jul 26, 2016 · 10 comments
Closed

Add i586-unknown-linux-gnu rustc binaries #35045

goertzenator opened this issue Jul 26, 2016 · 10 comments

Comments

@goertzenator
Copy link

Filing this issue as recommended here.

rust-std binaries are provided for i586-unknown-linux-gnu, but not rustc. Can we have rustc binaries too?

I am working on an embedded Vortex86 CPU(not quite i686). I would like to have a rustc that targets i586 by default because...

  • I was unable to build my own rustc that targets i586 by default.
  • It is awkward to integrate --target and the resulting target path changes into my build system.
@ranma42
Copy link
Contributor

ranma42 commented Jul 26, 2016

Be aware that even the i586-unknown-linux-gnu target for rust actually requires some features that might not be available on i586-compatible processors, as it basically means i686 (for example it might use CMOV).

@goertzenator
Copy link
Author

Can you tell me more about this? I assumed I could use Rust on i586 but maybe that's not the case. I've got a "hello world" test program running on i586 but it would be very frustrating to hit a brick wall as I write more complex code.

@MagaTailor
Copy link

@goertzenator
I already verified almost a year ago (before that target was officially available) a locally bootstrapped i586 target was fully compatible with pentium-class processors.

Can't vouch for the official distribution, of course, but if you were to correctly cross-bootstrap it yourself, you'll be absolutely fine. (otherwise it's a recent bug)

@ranma42
Copy link
Contributor

ranma42 commented Jul 26, 2016

@goertzenator sorry, my bad, I was remembering incorrectly, the unusual target is i686 (which actually targets pentium4, as per Clang's defaults). The i586 target requires only a pentium-compatible processors (as per @petevine's PR), thus it should work just fine.

@goertzenator
Copy link
Author

Thanks for clearing that up. Panic attack averted.

@japaric
Copy link
Member

japaric commented Jul 26, 2016

cc @alexcrichton

@alexcrichton
Copy link
Member

Most of the changes necessary here will be done in https://github.com/rust-lang/rust-buildbot rather than this repository. The changes may not be super easy to do as our 32/64 musl situation is a bit hectic, but master.cfg is the place to look, namely this array of targets.

We have an existing entry for this target and it'll need to get host: True somehow to get picked up later when we configure the builders. That may just work dropping that configuration in (and enabling rustbuild), but it'd probably want to get tested out locally just to confirm.

@Mark-Simulacrum
Copy link
Member

Judging by https://forge.rust-lang.org/platform-support.html, I believe that this is a tier 3 target today. @alexcrichton Are we interested in tracking "we want X target"? It feels like the kind of thing where tracking it isn't all that helpful, though I could be wrong.

@alexcrichton
Copy link
Member

Nah we typically haven't tracked this in the past, although it would be good to know what are the "most popular" candidates for promotion/demotion among tiers

@Mark-Simulacrum
Copy link
Member

Okay, I'm going to close in that case. If author is still interested, I'd recommend starting a thread on internals.rust-lang.org to gather interest and then propose changes in an issue here with a link.

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

No branches or pull requests

6 participants