pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[mrustc] progress on binary-less rust bootstrap (on NetBSD-9 amd64)



For source purists: it appears to be possible now to boostrap rustc
1.39.0 on NetBSD-9 amd64 completely from source code--without
having to download any binaries nor rely on cross-compilation from
another platform.  A project I stumbled on called "mrustc"
[https://github.com/thepowersgang/mrustc#readme] (with some
adjustments to make it work under NetBSD) is what made this doable
for me.  mrustc support for rust 1.54 is under way as well, IIUC.

Without going into too much detail (yet), I eventually reached a
point where the rustc & cargo binaries I built using mrustc could
then be called from a bootstrap invocation of rust's "x.py test",
under a stock rustc-1.39.0-src distribution: and pass 9028 out of
9030 rust unit tests.  I didn't understand the 2 failures though.

I'm very excited about the promise of mrustc and the gap it could
fill; however, I'm a newcomer to it (and to rust as well...).  Does
someone here have more experience with mrustc by any chance?  Has
anyone else been working on porting it to NetBSD?  I did searches
for the latter, but didn't get any hits.  Or is this an extremely
niche topic in which I'm the only one (or one of only very few)
with interest?

The difference between stock mrustc+rustc src and what I had to
arrive at to get my build to work is pretty tiny compared to the
sizes of mrustc src & rustc src themselves, but it took many spare
hours over the course of weeks to figure out; so it might be worth
contributing--if no one else has already done it--as maybe a pkgsrc
entry or two.  Assuming that's a feasible way to package it.

Unfortunately, I'm afraid my work so far is fragile, is probably
not up to standards of NetBSD correctness, is somewhat environment-
dependent (i.e., on my environment) and is generally probably in
need of peer verification.  In short, I could use some mentorship
or collaboration from someone with strengths in pkgsrc, security &
"trusting trust" or whatever that's called, and ideally rust itself
(plus, compilers overall) to produce a viable, contributable
version.  If you are interested in advising or discussing, please
let me know!

Best, -Dave


Home | Main Index | Thread Index | Old Index