[roll] Roll fuchsia [bazel_migration][backoff] //src/lib/backoff

Migrate //src/lib/backoff from GN to Bazel.

- Convert the `backoff` C++ `source_set` to a `cc_library` in
  `BUILD.bazel`, with visibility scoped to its current reverse
  dependencies, and sync it back to `BUILD.gn` via `bazel2gn` because
  its reverse dependencies still build in GN.
- Convert the `backoff_unittests` test executable to an `fx_cc_binary`
  (marked `@bazel2gn:skip`) and the `backoff_tests`
  `fuchsia_unittest_package` to an `fx_unittest_package`, which
  `bazel2gn` never syncs to GN. The manifest is generated as in GN,
  with the gtest runner resolved from the googletest dependency. The
  package and component keep the GN name, so the test URL is
  unchanged:
  fuchsia-pkg://fuchsia.com/backoff_tests#meta/backoff_tests.cm
- Add an area-level `test_suite(name = "target_tests")` in a new
  //src/lib/BUILD.bazel listing `backoff_tests`, and export it to GN
  via `bazel_test_suite("bazel_tests")` in //src/lib/BUILD.gn, added to
  `group("tests")` (used by the buildbot bundles). Remove the GN test
  package and `group("tests")` from //src/lib/backoff, and drop
  `backoff:tests` from //src/lib:tests.

Original-Original-Bug: 571845839
Test: fx bazel build --config=fuchsia_platform //src/lib:target_tests //src/lib/backoff:all
Test: fx test backoff_tests
Test: fx host-tool shac check --only verify_bazel2gn
Bazel-Migration-Target: //src/lib/backoff:backoff
Bazel-Migration-Target: //src/lib/backoff:backoff_tests
TAG: planter planter-20261008-633b8b4b94a-local
Original-Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1878990
Original-Original-Revision: 66ed412bc7b3aeb8a7088a6f55f73cb54f54262b
GitOrigin-RevId: 7688651920dfb76909d56128d73920f5da5eda01
Change-Id: I8eb581643d8f02b4f38c5f509531cb9d387a00db
Reviewed-on: https://fuchsia-review.googlesource.com/c/integration/+/1894293
Cr-Commit-Position: refs/heads/main@{#206269}
1 file changed
tree: 20490d0d32c7f088a9abfd012caff0e4d193d7c4
  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.