[roll] Roll fuchsia [bazel][rust] Link fdio into Fuchsia Rust executables

The Fuchsia Rust toolchain links the Rust standard library dynamically,
and libstd has an implicit link attribute on libfdio.so. GN handles this
by adding //src/lib/fdio/rust:fdio_for_rust_stdlib to every Rust target
that links libstd dynamically in BUILDCONFIG.gn, but Bazel did not, so
every Fuchsia Rust executable and test had to depend on fdio manually,
directly or transitively.

Add //build/bazel/rules/rust:fdio_for_rust_stdlib and have rustc_binary,
rustc_test, rustc_dylib and the unit tests generated by rustc_*() macros
add it to `link_deps` on Fuchsia. A separate alias label is used so it
does not clash with targets that list //sdk/lib/fdio themselves.

Remove the manual fdio dependencies that are now redundant.

Original-Original-Fixed: 42065890
Original-Original-Bug: 569300447
Test: fx build
Test: fx bazel build --config=fuchsia_platform on affected Rust targets
Original-Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1864976
Original-Original-Revision: ed339d90b09043d280b2d3e9346bb8f6ebc09009
GitOrigin-RevId: d8c0716218de9b6b1e82f7ae456c1ee8c6a7558e
Change-Id: I5de9f4a1b9a910bbc86af04b78a77c9a11d7fb59
Reviewed-on: https://fuchsia-review.googlesource.com/c/integration/+/1869786
Cr-Commit-Position: refs/heads/main@{#204369}
1 file changed
tree: 43c2e97a2a9740b2aaefdbc9323072c30826c6fb
  1. ctf/
  2. git-hooks/
  3. infra/
  4. third_party/
  5. cobalt
  6. flower
  7. jiri.lock
  8. MILESTONE
  9. minimal
  10. prebuilts
  11. README.md
  12. stem
  13. test_durations
README.md

Integration

This repository contains Fuchsia's Global Integration manifest files.

Making changes

All changes should be made to the internal version of this repository. Our infrastructure automatically updates this version when the internal one changes.

Currently all changes must be made by a Google employee. Non-Google employees wishing to make a change can ask for assistance in one of the communication channels documented at get involved.

Obtaining the source

First install Jiri.

Next run:

$ jiri init
$ jiri import minimal https://fuchsia.googlesource.com/integration
$ jiri update

Third party

Third party projects should have their own subdirectory in ./third_party.