Fabrice de Gans-Riberi | e17abf54b | 2020-01-28 00:29:54 | [diff] [blame] | 1 | This directory contains an implementation of the |
| 2 | [Open Screen](../../third_party/openscreen) platform API along with utility |
| 3 | functions, using the `//base` and `//net` directories in Chromium. |
David Dorwin | 95a7a72 | 2022-08-22 20:46:34 | [diff] [blame] | 4 | |
| 5 | Any Chromium target that (indirectly) depends on |
| 6 | `//third_party/openscreen/src/platform:api` must also (indirectly) depend on one |
| 7 | of two components provided by this component. In nearly all cases, the dependency |
| 8 | should be in the same `deps` as `//third_party/openscreen/src/platform:api`. |
| 9 | Most external targets should depend on `//components/openscreen_platform`. |
| 10 | Targets that cannot use the Network Service should instead depend on |
| 11 | `//components/openscreen_platform:openscreen_platform_using_net_sockets`, which |
| 12 | uses a `//net`-based implementation of `UdpSocket`. These two targets are |
| 13 | incompatible with each other. |
| 14 | |
| 15 | A very small set of intermediary targets that are used by both types of targets |
| 16 | above depend directly on |
| 17 | `//components/openscreen_platform:openscreen_platform_without_sockets` and |
| 18 | push the requirement to depend on one of the two public targets up to the |
| 19 | dependency chain. |