[roll] Roll fuchsia [build][sdk] Add coverage_sdk_source_sets build argument.

This build argument can be set to true when the "profile" variant
is selected in order to restrict profiling to the sdk_source_set()
instances reachable from //sdk:sdk (as well as anything listed
optionally through 'profile_source_files' and
'profile_source_files_list_files').

This will speed up coverage analysis for SDK source libraries
tremendously on infra, since the CTS tests, and the rest of the
platform can be built uninstrumented and run normally.

IMPORTANT: This CL introduces an non-trivial behaviour change in
our build system: everytime the list of sources used for all
sdk_source_set() in our source tree changes, the
//sdk/sdk_source_set.profile_list will need to be updated.

This list should change rarely over time, and a mechanism is
introduced to check when this is needed and print a human
friendly error message that explains how to fix the situation
easily.

For more details, read the comments in //sdk/config/profile/sdk.gni
which explains the implementation and how this is supposed to be
used!

For testing:

  fx set core.x64 --with //sdk --args 'coverage_sdk_source_sets = true'
  fx build

Alternatively, remove one line from //sdk/sdk_source_set.profile_list
and re-run 'fx build' to see the error message that instruct you to
copy the generated file to the right location. Follow the instructions
then run 'fx build' again (which will be fast).

Original-Bug: 68618

Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/497938
Original-Revision: b46b6c9543ab5e161e458d9f9e38dd31d49a3e03
GitOrigin-RevId: 512c2d2ee94c71806dc0aaa51d54dae93e9149e6
Change-Id: I07fae80bb1891ffae7a1de6758337287d0d8a2fd
1 file changed
tree: 4ef43347e775eb55874567cdd8605f9f799d81ef
  1. garnet/
  2. infra/
  3. peridot/
  4. third_party/
  5. topaz/
  6. zircon/
  7. firmware
  8. flower
  9. jiri.lock
  10. minimal
  11. prebuilts
  12. README.md
  13. stem
  14. 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 via the IRC channel #fuchsia on Freenode.

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.