Hi David! David Craven <da...@craven.ch> skribis:
>> Given the work that has gone into these Rust patches, I think it would >> be nice to apply them and possibly document any shortcoming or future >> work items. > > I went over all your previous emails and fixed your previous comments. > Those aren't part of the new patch series yet... > > In summary those changes are: > * add (supported-systems '("x86_64-linux") > * Improve rustc-bootstrap, cargo-bootstrap and rust-bootstrap synopsis > and description > * add crate updater to table in guix.texi > * add Eric to the rust.scm file OK. > Some unanswered questions: > > guix size of rust-bootstrap shows a size of zero. Are propagated > inputs not part of this measurement? No they’re not; it’s only the things that show in in ‘guix gc -R rust-bootstrap’. > Now there are two different gcc:lib's in the dependency graph of > rustc-bootstrap. Can I use the system gcc:lib? Does gcc "lib" need to > be added to %final-inputs in commencement.scm? Hmm why is there a second one? ‘gnu-build-system’ already provides gcc and gcc:lib as implicit inputs, so maybe it’s just a matter of removing ‘gcc’ from Rust’s ‘inputs’? > To build rustc i686 and x86_64 with the same binary, rustc-bootstrap > needs to find the 32bit glibc dynamic linker. How do I get a 32bit > glibc for that? When you do ‘guix build rust -s i686-linux’, you get 32-bit packages. Is that enough or am I missing something? :-) > What needs to be done: > > * the updater patch needs to be looked at. it fixed the packages not > updating, I need to find out why that was and/or if it still is the > case. > > * Crate names need to be saved as a property and propagated to the > build system when the crate name contains underscores. > > * Put crate source in OUT/share/rust-source/PACKAGE-VERSION > > * Cargo build system should not do anything if there isn't a > Cargo.lock file except copy the source to out. > > * Finish the recursive importer. The recursive importer should use the > Cargo.lock file to get the right package versions as > rust-PACKAGENAME-VERSION. If a crate doesn't have a Cargo.lock only > import the latest version non-recursively as rust-PACKAGENAME. > > * Get cargo to build > > * Make the updater update package versions recursively > > * Improve cargo bootstrapping story. OK, thanks for the detailed update! Ludo’.