-
Notifications
You must be signed in to change notification settings - Fork 152
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
Build the stdlib from rust-src sources. #645
Conversation
rust-lang/cargo#8073 landed, so we shouldn't need the "fake version" trick anymore. |
This took 5h09m to finish on a 24-core/48-thread server. Somehow I don't think we can do it this way :). |
Tried the same run but without |
1h23 with the new approach. Also, for fun, I looked inside the 00000000: 7275 7374 0000 0005 0047 bd06 2b72 7573 rust.....G..+rus
00000010: 7463 2031 2e34 342e 302d 6e69 6768 746c tc 1.44.0-nightl
-00000020: 7920 2838 3335 3432 3863 3335 2032 3032 y (835428c35 202
+00000020: 7920 2864 6637 3638 6335 6338 2032 3032 y (df768c5c8 202
00000030: 302d 3034 2d31 3529 0463 6f72 65da 81b4 0-04-15).core... (this is expected, since What's nice is that there are no other differences remaining. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks! I want to take another look in the morning and merge and deploy then.
So the tests I did locally are with a recent noop change for which we now have official results too. For "
So I believe this PR should remove the problem (but we should keep an eye on results for a while). |
Oddly enough, this had a beneficial perf effect. |
See rust-lang/rust#69060 (comment) for background.
I definitely feels slower than previous. We might want to build libstd only once and place it in the sysroot (and I believe that would mean we can skip downloadingrust-std
altogether).EDIT I moved from
-Zbuild-std
to a customcargo build
of the stdlib sources, no slowdown left.However, we only need this for a couple weeks, until rust-lang/cargo#8073 (hopefully) reaches beta.
Then all of the hacks here will be unnecessary, since Rust itself will be built fully deterministically.