tree 39b0e33c05ecb82f75e22051489d8f681da82bcd
parent c46f0d71c492e58b2c5d0f151d085065982b8430
author Eli Lipsitz <elipsitz@fb.com> 1626392271 -0700
committer Commit Bot <commit-bot@chromium.org> 1626475305 +0000

Link Rust binaries against transitive public_deps

An earlier commit, 646a62e, changed how Rust links against native
dependencies. Rather than a `-l...` argument to instruct rustc to
link against the specified library, GN uses `-Clink-arg=` to bypass
rustc and directly instruct the linker to link the native library.

One implication of this change is that Rust binaries no longer link
against native libraries that they transitively depend on through
a Rust library dependency's public dependency.

More concretely, say Rust binary A depends on Rust library B,
which depends on native library C, which also declares a public_dep
on D. B is therefore allowed to use D, and must link against it.
However, B isn't actually linked -- A is the binary that gets
linked. If A uses a method from B that uses a method from D, A
must link against D.

After the previously mentioned change, A no longer links against D.
If B were to explicitly depend on D (rather than depend on it through
C's public_deps), this would work.

This commit fixes the issue by ensuring that public dependencies on
shared libraries are propagated up through the list of Rust
transitive library dependencies, allowing the final Rust binary
to link against all necessary native libraries.

Change-Id: I374167db1b9338f42426f1cbd6f15dd535358d94
Reviewed-on: https://gn-review.googlesource.com/c/gn/+/12001
Reviewed-by: Tyler Mandry <tmandry@google.com>
Commit-Queue: Tyler Mandry <tmandry@google.com>
