Marius Bakke writes: > Pierre Langlois writes: > >> Hello Guix! >> >> Pierre Langlois writes: >> >>> Hi Jakub, >>> >>> Jakub Kądziołka writes: >>> >> >> (snip) >> >>>> Pierre, >>>> >>>> thanks for your patch! I was working on a similar change before, but >>>> when I tried it, it failed even earlier in the bootstrap chain. It >>>> might've been QEMU weirdness, though, a la #42448. >>>> >>>>> @@ -612,9 +613,10 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\" >>>>> (cargo-out (assoc-ref outputs "cargo"))) >>>>> (for-each >>>>> (lambda (file) (delete-manifest-file out file)) >>>>> - '("install.log" >>>>> + `("install.log" >>>>> "manifest-rust-docs" >>>>> - "manifest-rust-std-x86_64-unknown-linux-gnu" >>>>> + ,,(string-append "manifest-rust-std-" >>>>> + (nix-system->gnu-triplet-for-rust)) >>>>> "manifest-rustc")) >>>>> (for-each >>>>> (lambda (file) (delete-manifest-file cargo-out file)) >>>> >>>> If I understand the code correctly, this quasiquote is unnecessary, as >>>> the host-side code will evaluate to a string that can be inserted as-is, >>>> without another unquote on the build side. >>>> >>>> Fixing this would mean that the patch can go on master, since it would >>>> now only trigger rebuilds on architectures that are already broken. >>> >>> Ooooh yeah, that'll be much better, I've attached a patch that does just >>> that. I can confirm it doesn't trigger a full rebuild, nice! >>> >> >> I've just rebased this patch and fixed a little formatting issue. I've >> made sure, it doesn't trigger any rust rebuilds on x86. >> >> Is this OK to commit? > > LGTM! Thanks a lot for tackling this long-standing issue. Thanks! Pushed as 2bab532fdfaa54a085abc0ac7fc2c859ee31f640. > > Were you able to build all the way to the latest Rust? No not yet :-/, I got it building up to 1.26, having to fix most steps with tests failing here and there. In the end I ran out of steam trying to build 1.27 and thought we'd be better off waiting until we can bootstrap from 1.29. I don't remember exactly what issues I had with 1.27, I've attacked my WIP patch in case somebody is interested actually! After that, I gave the patches on https://issues.guix.gnu.org/38110 a go, however as Danny mentions on the thread, linking consumes too much memory. I'm using a RockPro64 and it only has 4G of RAM. Somebody on github https://github.com/thepowersgang/mrustc/issues/138 mentioned we could try building with LLD so I tried that as well (patch attached) but memory consumption was still too much. That being said, I might not have had any swap file at the time, I'll try again :-). Soooo, yeah I don't know what the best approach is. We can try and get the current chain building and start upstreaming bits of my WIP patch or try and find a solution for the mrustc memory issue. Anyway, I haven't given up! :-) I'd really like to see IceCat on aarch64 eventually for the PineBook Pro. Although there are quite a few other things to fix on that platform first. Thanks, Pierre