Mark built-in software video codecs as poisonous.

The goal is to make these injectable, and only VP8 and VP9 specific
targets should depend on them.

Bug: webrtc:7925
Change-Id: Ie9239a54d197fe70c93de0582797211fef6997a2
Reviewed-on: https://webrtc-review.googlesource.com/72082
Commit-Queue: Anders Carlsson <andersc@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23021}
diff --git a/sdk/BUILD.gn b/sdk/BUILD.gn
index 00f94a2..ec69c82 100644
--- a/sdk/BUILD.gn
+++ b/sdk/BUILD.gn
@@ -229,7 +229,10 @@
 
     rtc_static_library("ui_objc") {
       visibility = [ "*" ]
-      allow_poison = [ "audio_codecs" ]  # TODO(bugs.webrtc.org/8396): Remove.
+      allow_poison = [
+        "audio_codecs",  # TODO(bugs.webrtc.org/8396): Remove.
+        "software_video_codecs",  # TODO(bugs.webrtc.org/7925): Remove.
+      ]
       if (is_ios) {
         sources = [
           "objc/Framework/Classes/UI/RTCCameraPreviewView.m",
@@ -256,7 +259,10 @@
     if (rtc_use_metal_rendering) {
       rtc_static_library("metal_objc") {
         visibility = [ "*" ]
-        allow_poison = [ "audio_codecs" ]  # TODO(bugs.webrtc.org/8396): Remove.
+        allow_poison = [
+          "audio_codecs",  # TODO(bugs.webrtc.org/8396): Remove.
+          "software_video_codecs",  # TODO(bugs.webrtc.org/7925): Remove.
+        ]
         sources = [
           "objc/Framework/Classes/Metal/RTCMTLI420Renderer.h",
           "objc/Framework/Classes/Metal/RTCMTLI420Renderer.mm",
@@ -318,7 +324,10 @@
 
     rtc_static_library("videocapture_objc") {
       visibility = [ "*" ]
-      allow_poison = [ "audio_codecs" ]  # TODO(bugs.webrtc.org/8396): Remove.
+      allow_poison = [
+        "audio_codecs",  # TODO(bugs.webrtc.org/8396): Remove.
+        "software_video_codecs",  # TODO(bugs.webrtc.org/7925): Remove.
+      ]
       sources = [
         "objc/Framework/Classes/PeerConnection/RTCCameraVideoCapturer.m",
         "objc/Framework/Headers/WebRTC/RTCCameraVideoCapturer.h",
@@ -402,7 +411,10 @@
 
     rtc_static_library("vp8") {
       visibility = [ "*" ]
-      allow_poison = [ "audio_codecs" ]  # TODO(bugs.webrtc.org/8396): Remove.
+      allow_poison = [
+        "audio_codecs",  # TODO(bugs.webrtc.org/8396): Remove.
+        "software_video_codecs",
+      ]
       sources = [
         "objc/Framework/Classes/PeerConnection/RTCVideoCodecVP8.mm",
         "objc/Framework/Headers/WebRTC/RTCVideoDecoderVP8.h",
@@ -424,7 +436,10 @@
 
     rtc_static_library("vp9") {
       visibility = [ "*" ]
-      allow_poison = [ "audio_codecs" ]  # TODO(bugs.webrtc.org/8396): Remove.
+      allow_poison = [
+        "audio_codecs",  # TODO(bugs.webrtc.org/8396): Remove.
+        "software_video_codecs",
+      ]
       sources = [
         "objc/Framework/Classes/PeerConnection/RTCVideoCodecVP9.mm",
         "objc/Framework/Headers/WebRTC/RTCVideoDecoderVP9.h",
@@ -453,7 +468,10 @@
     # The applications which only use WebRTC DataChannel can depend on this.
     rtc_static_library("peerconnectionfactory_no_media_objc") {
       visibility = [ "*" ]
-      allow_poison = [ "audio_codecs" ]  # TODO(bugs.webrtc.org/8396): Remove.
+      allow_poison = [
+        "audio_codecs",  # TODO(bugs.webrtc.org/8396): Remove.
+        "software_video_codecs",  # TODO(bugs.webrtc.org/7925): Remove.
+      ]
       defines = [ "HAVE_NO_MEDIA" ]
 
       sources = [
@@ -508,7 +526,10 @@
 
     rtc_static_library("videorendereradapter_objc") {
       visibility = [ "*" ]
-      allow_poison = [ "audio_codecs" ]  # TODO(bugs.webrtc.org/8396): Remove.
+      allow_poison = [
+        "audio_codecs",  # TODO(bugs.webrtc.org/8396): Remove.
+        "software_video_codecs",  # TODO(bugs.webrtc.org/7925): Remove.
+      ]
       sources = [
         "objc/Framework/Classes/PeerConnection/RTCVideoRendererAdapter+Private.h",
         "objc/Framework/Classes/PeerConnection/RTCVideoRendererAdapter.h",
@@ -546,7 +567,10 @@
 
     rtc_static_library("peerconnectionfactory_base_objc") {
       visibility = [ "*" ]
-      allow_poison = [ "audio_codecs" ]  # TODO(bugs.webrtc.org/8396): Remove.
+      allow_poison = [
+        "audio_codecs",  # TODO(bugs.webrtc.org/8396): Remove.
+        "software_video_codecs",  # TODO(bugs.webrtc.org/7925): Remove.
+      ]
       sources = [
         "objc/Framework/Classes/PeerConnection/RTCAudioSource+Private.h",
         "objc/Framework/Classes/PeerConnection/RTCAudioSource.mm",
@@ -967,7 +991,10 @@
     # The native API is currently experimental and may change without notice.
     rtc_static_library("native_api") {
       visibility = [ "*" ]
-      allow_poison = [ "audio_codecs" ]  # TODO(bugs.webrtc.org/8396): Remove.
+      allow_poison = [
+        "audio_codecs",  # TODO(bugs.webrtc.org/8396): Remove.
+        "software_video_codecs",  # TODO(bugs.webrtc.org/7925): Remove.
+      ]
       sources = [
         "objc/Framework/Native/api/video_capturer.h",
         "objc/Framework/Native/api/video_capturer.mm",
@@ -1077,7 +1104,10 @@
 
     rtc_static_library("videotoolbox_objc") {
       visibility = [ "*" ]
-      allow_poison = [ "audio_codecs" ]  # TODO(bugs.webrtc.org/8396): Remove.
+      allow_poison = [
+        "audio_codecs",  # TODO(bugs.webrtc.org/8396): Remove.
+        "software_video_codecs",  # TODO(bugs.webrtc.org/7925): Remove.
+      ]
       sources = [
         "objc/Framework/Classes/VideoToolbox/RTCVideoDecoderH264.mm",
         "objc/Framework/Classes/VideoToolbox/RTCVideoEncoderH264.mm",