Revert "Reland "Clean up libjingle API dependencies.""
This reverts commit 5117b047875970cf61f2403b590c44c37bfa8272.
Reason for revert: Still breaks downstream projects that include too much stuff.
Original change's description:
> Reland "Clean up libjingle API dependencies."
>
> This is a reland of 57fb3154b5411934b80051ad827db4e54d00f381
> Original change's description:
> > Clean up libjingle API dependencies.
> >
> > This CL moves candidate.h into the public API, since it has
> > been implicitly included before.
> >
> > This is a straightforward way of solving the circular
> > dependencies involving that file. For instance,
> > libjingle_peerconnection_api includes candidate.h from
> > jsepicecandidate.h, but _api can't depend on rtc_p2p, which
> > depends on _api. In fact, _api can't depend on much at all
> > since it's a very high level abstraction; instead, things
> > should depend on it.
> >
> > Furthermore, we have the case where deprecated headers
> > include headers in internal modules. I just have to turn
> > off include checking for those, but that's not a big deal.
> >
> > This CL punts the problem of callfactoryinterface.h being
> > implicitly included, and pulling in most of the call
> > module with it. This should be addressed in a follow-up
> > CL.
> >
> > Bug: webrtc:7504
> > Change-Id: I1b1729408158418333ccdf702bf529386090f0d7
> > Reviewed-on: https://webrtc-review.googlesource.com/2020
> > Commit-Queue: Patrik Höglund <phoglund@webrtc.org>
> > Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
> > Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#20034}
>
> Bug: webrtc:7504
> Change-Id: I74aeeff678a4ce6482d2f402493ae13e698f1390
> Reviewed-on: https://webrtc-review.googlesource.com/4703
> Commit-Queue: Patrik Höglund <phoglund@webrtc.org>
> Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
> Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
> Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20062}
TBR=phoglund@webrtc.org,deadbeef@webrtc.org,solenberg@webrtc.org
Change-Id: I19068df5f3ee8145c5ff13c86a42b6860e9cc834
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:7504
Reviewed-on: https://webrtc-review.googlesource.com/5460
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Commit-Queue: Patrik Höglund <phoglund@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20065}
diff --git a/api/BUILD.gn b/api/BUILD.gn
index 6c0c6fd..86a63e4 100644
--- a/api/BUILD.gn
+++ b/api/BUILD.gn
@@ -34,9 +34,12 @@
}
rtc_static_library("libjingle_peerconnection_api") {
+ # Cannot have GN check enabled since that would introduce dependency cycles
+ # TODO(kjellander): Remove (bugs.webrtc.org/7504)
+ check_includes = false
cflags = []
sources = [
- "candidate.h",
+ "datachannel.h",
"datachannelinterface.h",
"dtmfsenderinterface.h",
"jsep.h",
@@ -44,14 +47,17 @@
"jsepsessiondescription.h",
"mediaconstraintsinterface.cc",
"mediaconstraintsinterface.h",
+ "mediastream.h",
"mediastreaminterface.cc",
"mediastreaminterface.h",
"mediastreamproxy.h",
+ "mediastreamtrack.h",
"mediastreamtrackproxy.h",
"mediatypes.cc",
"mediatypes.h",
"notifier.h",
"peerconnectionfactoryproxy.h",
+ "peerconnectioninterface.h",
"peerconnectionproxy.h",
"proxy.h",
"rtcerror.cc",
@@ -59,11 +65,15 @@
"rtpparameters.cc",
"rtpparameters.h",
"rtpreceiverinterface.h",
+ "rtpsender.h",
"rtpsenderinterface.h",
"statstypes.cc",
"statstypes.h",
+ "streamcollection.h",
"umametrics.h",
"videosourceproxy.h",
+ "videotracksource.h",
+ "webrtcsdp.h",
]
if (!build_with_chromium && is_clang) {
@@ -71,15 +81,8 @@
suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
}
- public_deps = [
- ":libjingle_api_deprecated_headers",
- ":peerconnection_and_implicit_call_api",
- ]
-
deps = [
- ":optional",
":rtc_stats_api",
- ":video_frame_api",
"..:webrtc_common",
"../rtc_base:rtc_base",
"../rtc_base:rtc_base_approved",
@@ -94,34 +97,6 @@
}
}
-rtc_source_set("peerconnection_and_implicit_call_api") {
- # The peerconnectioninterface.h file pulls in call/callfactoryinterface.h
- # and the entire call module with it. We need to either get rid of this
- # dependency or pull most of call/ into the API. For now, silence the warnings
- # this creates since it creates a circular dependency (call very much depends
- # on API). See bugs.webrtc.org/7504.
- check_includes = false
- sources = [
- "peerconnectioninterface.h",
- ]
-}
-
-rtc_source_set("libjingle_api_deprecated_headers") {
- # We need to include headers from undeclared targets here, since they cause
- # circular dependencies. These deprecated headers are going away anyway.
- # See http://bugs.webrtc.org/5883.
- check_includes = false
- sources = [
- "datachannel.h",
- "mediastream.h",
- "mediastreamtrack.h",
- "rtpsender.h",
- "streamcollection.h",
- "videotracksource.h",
- "webrtcsdp.h",
- ]
-}
-
rtc_source_set("ortc_api") {
check_includes = false # TODO(deadbeef): Remove (bugs.webrtc.org/6828)
sources = [