Hi On Wed, Sep 8, 2021 at 7:55 PM Ian Jackson <i...@xenproject.org> wrote:
> Marc-André Lureau writes ("Re: [RFC v3 13/32] rust: use vendored-sources"): > > Hmm, I do "cargo vendor --versioned-dirs ../rust/vendored" to vendor > crates. > > > > It seems cc was updated, and I didn't update the submodule accordingly. > For > > reference, this is the dependency tree that WFM: > > git submodules are just awful IMO. > Yes, but it's often (always?) the user fault. CI should help, when it will check Rust code. > > $ cargo tree -p qga > > qga v0.1.0 (/home/elmarco/src/qemu/qga) > > ├── common v0.1.0 (/home/elmarco/src/qemu/rust/common) > > │ ├── libc v0.2.101 > > │ └── nix v0.20.1 > > │ ├── bitflags v1.2.1 > > │ ├── cfg-if v1.0.0 > > │ ├── libc v0.2.101 > > │ └── memoffset v0.6.4 > > │ [build-dependencies] > > │ └── autocfg v1.0.1 > > ├── hostname v0.3.1 > > │ ├── libc v0.2.101 > > │ └── match_cfg v0.1.0 > > └── nix v0.20.1 (*) > > With the .config/cargo.toml "replace-with" commented out, I see this: > > rustcargo@zealot:~/Rustup/Qemu/qemu.pwt/build$ cargo tree -p qga > qga v0.1.0 (/volatile/rustcargo/Rustup/Qemu/qemu.pwt/qga) > ├── common v0.1.0 (/volatile/rustcargo/Rustup/Qemu/qemu.pwt/rust/common) > │ ├── libc v0.2.101 > │ └── nix v0.20.1 > │ ├── bitflags v1.2.1 > │ ├── cfg-if v1.0.0 > │ ├── libc v0.2.101 > │ └── memoffset v0.6.4 > │ [build-dependencies] > │ └── autocfg v1.0.1 > ├── hostname v0.3.1 > │ ├── libc v0.2.101 > │ └── match_cfg v0.1.0 > └── nix v0.20.1 (*) > rustcargo@zealot:~/Rustup/Qemu/qemu.pwt/build$ > > Which is the same as yours. Although "cargo build" doesn't work > build, guessed from the messagese that perhaps this was the automatic > codegen hadn't run. I'm now trying "make" and and it seems to be > running. > > With the "replace-with" uncommented, cargo tree bombs out. I'm afraid > I haven't used cargo vendor so I'm not sure if I am going in the right > direction with this workaround. Hopefully it will finish the build. > > Would it be possible to have a configure option to use unvendored > upstream Rust libraries from crates.io ? > Not easily, but we could have a --disable-rust-offline configure option. Whether this is desirable, I am not sure. -- Marc-André Lureau