Subject: Re: Clarification on why cargo-build-system should propagate inputs and native-inputs.

From: Jaeme Sifat <[email-masked]>
Date: Mon, 25 Dec 2023 15:02:22 -0500

The culprit to your problem is `rust-ffmpeg-sys-the-third-1', which 
requires all the packages you just mentioned for building. 
`rust-av1an-core` requires `rust-ffmpeg-the-third-1' which in turn 
requires the sys libraries as well.

--8<---------------cut here---------------start------------->8---

rust-ffmpeg-sys-the-third-1 -> Requires vapoursynth ffmpeg clang nasm 
pkg-config

rust-ffmpeg-the-third-1 -> Requires rust-ffmpeg-sys-the-third-1

rust-av1an-core -> Requires rust-ffmpeg-the-third-1

rust-av1an -> Requires rust-av1an-core

--8<---------------cut here---------------end--------------->8---

Thus, the native-inputs and inputs of rust-ffmpeg-sys-the-third are 
required for any packages that depend on it in #:cargo-inputs.

I see your point now, it would be very helpful if cargo-build-system 
could grab the inputs and native-inputs of dependent packages in the 
case of crates like `rust-ffmpeg-sys-the-third-1.' That way the 
dependencies wouldn't have to be duplicated across packages.

This sounds like a good suggestion, I can bring this up to Efraim, who 
is on the Rust team, about this who is much more knowledgeable about the 
implementation of the cargo-build-system than me.

--

Jaeme