commit | 47faf322872f2ae9535470eb8fb3ce8bb59dad4a | [log] [tgz] |
---|---|---|
author | Arthur Sonzogni <arthursonzogni@chromium.org> | Tue Aug 22 09:55:36 2023 |
committer | WebRTC LUCI CQ <webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com> | Tue Aug 22 11:32:06 2023 |
tree | e95525e519740af85f4abe1ba01ba4ccfd7014ab | |
parent | 5f3b3db1056aa40e8c0a6a46337b67e6db29b6dd [diff] |
Add rtc_common_public_deps When built for chromium, some webrtc implementations are overridden and are implemented by chrome's "//base". For instance webrtc::Location is implemented by base::Location. So far so good, the affected targets are correctly defined in GN to depend on base. The problem: Most targets in webrtc do not declare correctly their public_deps. When a public header of a target includes one from its dependency, the dependency must be a public_deps. The public_deps instruct GN to forward the capability to use code from the dependency toward the dependent. Unfortunately, it is not possible to fix the `public_deps` in webrtc, because its is disallowed via a presubmit. See: https://webrtc-review.googlesource.com/c/src/+/30262 WebRTC developers decided not to use `public_deps`, because GN config are "translated" toward different kind of downstream build system who do not really support the `public` dependencies concept. Instead WebRTC is using some "common" configuration applied to all of its targets. This patch add `rtc_common_public_deps` argument, to let embedders add the dependencies WebRTC depends on. Bug: chromium:1467773 Change-Id: I7de43372414a09886fcb07905451e6339c8ecc64 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/316660 Commit-Queue: Arthur Sonzogni <arthursonzogni@chromium.org> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org> Cr-Commit-Position: refs/heads/main@{#40595}
WebRTC is a free, open software project that provides browsers and mobile applications with Real-Time Communications (RTC) capabilities via simple APIs. The WebRTC components have been optimized to best serve this purpose.
Our mission: To enable rich, high-quality RTC applications to be developed for the browser, mobile platforms, and IoT devices, and allow them all to communicate via a common set of protocols.
The WebRTC initiative is a project supported by Google, Mozilla and Opera, amongst others.
See here for instructions on how to get started developing with the native code.
Authoritative list of directories that contain the native API header files.