[roll] Roll fuchsia [plasa] sdk_* targets generate Plasa artifacts

This change adds the build templates that generate API stub
files for sdk_shared_library and sdk_static_library, thus
completing the set of supported SDK artifacts.

During the work on this, I had to add more information into the sdk_*
targets to be able to generate API stubs.  Some of our SDK libraries
require an informal contract from the user to include or not include
some headers and dependencies.  This is codified nowhere, and you only
get to see it if you happen to tickle this particular error.  You then
rinse and repeat.  See fxbug.dev/3156 for an example.

But automated API stub generation code needs instructions on what to do
in such a case, which led me to introduce the `non_public_headers`
parameter to the sdk_* rules.  This change is for now enough to make API
stub generation work.

Further, to make the stub files compile, I needed to add a few other
dependencies which I guess were not detected because these targets were
never before built in tree.

The following error required adding `//src/lib/ddk` to deps of
`//src/devices/lib/dev-operation`.

```
gen/src/devices/lib/dev-operation/../../../../../../../src/devices/lib/dev-operation/include/lib/operation/operation.h:8:10: fatal error: 'lib/ddk/debug.h' file not found
```

Re-including a dependency that should have been included back with the
fixing of fxbug.dev/3156 in `//src/lib/ddk/BUILD.gn` required adding
another dependency for the package to compile, in turn affecting the
overall API exposed by the DDK - which needed an API update in its own
right.

Original-Fixed: 82517
Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/582210
Original-Revision: 2180d9df1464a15cd54ba1ff6f36654d9ce62a26
GitOrigin-RevId: 90bea27feb5f1cb1b2bca6cc44099c730aac4984
Change-Id: I3110b4a854bf739d88fc7394120aac9119ec1556
1 file changed
tree: dc57a7fc06f4fd6237a637224e57de3c1e0a186d
  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.