tree 789104e24ab02e35eeb08bb8b2d3122857612f24
parent 9a45b61238317b09b778c47555527c9926700e0c
author David 'Digit' Turner <digit@google.com> 1699526739 +0100
committer GN LUCI <gn-scoped@luci-project-accounts.iam.gserviceaccount.com> 1700035350 +0000

Fix --as=buildfile `gn desc deps` output.

Before this CL, `--as=buildfile` would report the location
of the parse tree node used to instantiate a Target, in practice
this meant that:

- For builtin target types like `action()` or `static_library()`,
  this would be the location of the BUILD.gn where these are called.

- For targets defined through templates (e.g. `java_library()`
  in Chromium), this would be the location of the .gni file where
  the underlying action() was invoked.

This CL ensures that the location of the BUILD.gn where the target
is defined is always returned. It does so by looking at the
build_dependency_files() set for the target, and extracting
the single BUILD.gn file location from it, falling back to
BUILDCONFIG.gn for targets that may be defined there instead.

NOTE: There is no unit-test because PrintAndFilterTargets()
relies on too much global state, including the command-line.
Writing a proper test would require a non-trivial refactor
of that code.

Manual testing can be done by comparing the outputs of:

```
gn desc . //base:base_java deps --all --as=buildfile
```

Before and after this CL.

Bug: chromium:1500273
Change-Id: I4393e98d21c56c86282a886cb595034c389cc31c
Reviewed-on: https://gn-review.googlesource.com/c/gn/+/16100
Reviewed-by: Takuto Ikuta <tikuta@google.com>
Commit-Queue: David Turner <digit@google.com>
