[roll] Roll fuchsia [ffx][config] Fix host tool resolution for subtools

When ffx_build_dual_mode_plugins_as_subtools = true is set, the emu
plugin is executed as an independent external subtool binary
(host-tools/ffx-emu). Under this configuration, the sdk.get_host_tool
lookup fails because in-tree builds do not generate a standard
meta/manifest.json directly in the build output directory.

When this fails, the engine falls back to locating host tools relative
to the running executable. However, binaries under host-tools/ are
hard links to the corresponding host_x64/ or host_arm64/ files.
Because standard filesystems cannot trace back-links from hard-link paths,
canonicalizing the executable returns host-tools/ffx-emu. The stopgap then
joins "zbi" to the parent (host-tools/), which fails because zbi is only present
in the host_x64/ or host_arm64/ directory.

This change fixes the root cause by correcting SdkRoot resolution in-tree. If
ffx is executing inside a Fuchsia source tree and has a build directory
configured, we resolve the SdkRoot directly to the host-architecture tools
directory (e.g., build_dir/host_x64 or build_dir/host_arm64) if it exists. This
ensures that sdk.get_host_tool resolves companion tools correctly in-tree for
both monolith and subtool executions.

Original-Original-Bug: 494668641
Test: fx test host_x64/ffx_emulator_start_lib_test
Test: fx test host_x64/ffx_config_lib_test
Original-Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1636179
Original-Original-Revision: f77da07000ea4d93cbef2106c9af9938af6359d3
GitOrigin-RevId: 2eb9371a466148ba54cf04e96f2c2ad330a5e493
Change-Id: I25b56c104927c18fd21addcd493164d63afd3dfe
Reviewed-on: https://fuchsia-review.googlesource.com/c/integration/+/1636795
Cr-Commit-Position: refs/heads/main@{#193940}
1 file changed
tree: 89e5969c57c7c229fb76b84a946b4f0387a90af8
  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.