Reland "Adding absl includes and defines to rtc_* templates."

This reverts commit 8436a699a998e4fa30d97786142baad08f110d2a.

Reason for revert: 
New absl roll -> https://chromium-review.googlesource.com/1071468

Original change's description:
> Revert "Reland "Adding absl includes and defines to rtc_* templates.""
> 
> This reverts commit bdb0fe42bc46d190ca45fc5a6658eddbfa5eead5.
> 
> Reason for revert: https://ci.chromium.org/buildbot/chromium.fyi/Jumbo%20Win%20x64/11502
> 
> Original change's description:
> > Reland "Adding absl includes and defines to rtc_* templates."
> > 
> > This reverts commit 85cb19fec7caf558dee7a09aafabe01c5ac78f3f.
> > 
> > Reason for revert: The new version of Abseil should fix the previous
> > issue.
> > 
> > Original change's description:
> > > Revert "Reland "Adding absl includes and defines to rtc_* templates.""
> > > 
> > > This reverts commit 9632112a16d70a146e917db4de761e6253dfc364.
> > > 
> > > Reason for revert: It breaks the WebRTC roll into Chromium.
> > > https://chromium-review.googlesource.com/c/chromium/src/+/1061476
> > > 
> > > Original change's description:
> > > > Reland "Adding absl includes and defines to rtc_* templates."
> > > > 
> > > > This reverts commit d161eda477491b2b97fb3f26d229c625a2a0e9b8.
> > > > 
> > > > Reason for revert: The problem with iOS trybots should be fixed.
> > > > 
> > > > Original change's description:
> > > > > Revert "Adding absl includes and defines to rtc_* templates."
> > > > >
> > > > > This reverts commit 9d8f3850f4c4faad5dc5ab32ab6f2c9c43df7b6c.
> > > > >
> > > > > Reason for revert: Breaks some trybots: https://build.chromium.org/p/client.webrtc/builders/iOS64%20Release/builds/12793.
> > > > >
> > > > > Original change's description:
> > > > > > Adding absl includes and defines to rtc_* templates.
> > > > > >
> > > > > > This CL implicitly adds the -I compiler flag and absl macros to WebRTC
> > > > > > templates. In order to include absl headers using relative paths, WebRTC
> > > > > > needs to ensure that all its build targets are able to see absl headers.
> > > > > >
> > > > > > This can also be done with public_deps, but WebRTC is trying to avoid
> > > > > > it because it creates problems with other build systems. Given this
> > > > > > constraint, using rtc_* templates is the most reliable solution.
> > > > > >
> > > > > > Please note that rtc_* templates are adding absl includes and defines
> > > > > > as public_configs, this means that build targets with WebRTC targets
> > > > > > in their public_deps will propagate these configs following the GN
> > > > > > guideline.
> > > > > >
> > > > > > Bug: webrtc:8821
> > > > > > Change-Id: I4aa594a524f4bd045bcb3e80d76cc27f06fe01d7
> > > > > > Reviewed-on: https://webrtc-review.googlesource.com/70367
> > > > > > Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
> > > > > > Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> > > > > > Cr-Commit-Position: refs/heads/master@{#22927}
> > > > >
> > > > > TBR=phoglund@webrtc.org,mbonadei@webrtc.org
> > > > >
> > > > > Change-Id: Id8e1f881c57553386566eb1970f6b9f8632cab37
> > > > > No-Presubmit: true
> > > > > No-Tree-Checks: true
> > > > > No-Try: true
> > > > > Bug: webrtc:8821
> > > > > Reviewed-on: https://webrtc-review.googlesource.com/71000
> > > > > Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> > > > > Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> > > > > Cr-Commit-Position: refs/heads/master@{#22928}
> > > > 
> > > > TBR=phoglund@webrtc.org,mbonadei@webrtc.org
> > > > 
> > > > Bug: webrtc:8821
> > > > Change-Id: I6ee2eda97bbcd4c9be25c9c4073272192b0373f8
> > > > Reviewed-on: https://webrtc-review.googlesource.com/71700
> > > > Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
> > > > Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> > > > Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> > > > Cr-Commit-Position: refs/heads/master@{#23251}
> > > 
> > > TBR=phoglund@webrtc.org,mbonadei@webrtc.org
> > > 
> > > Change-Id: I61fb749797314ca514691b341c66f7f39ef45491
> > > No-Presubmit: true
> > > No-Tree-Checks: true
> > > No-Try: true
> > > Bug: webrtc:8821
> > > Reviewed-on: https://webrtc-review.googlesource.com/77220
> > > Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> > > Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> > > Cr-Commit-Position: refs/heads/master@{#23264}
> > 
> > TBR=phoglund@webrtc.org,mbonadei@webrtc.org
> > 
> > # Not skipping CQ checks because original CL landed > 1 day ago.
> > 
> > Bug: webrtc:8821
> > Change-Id: I71dea953a002a0d526949c627653bcad0c6518fc
> > Reviewed-on: https://webrtc-review.googlesource.com/77781
> > Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> > Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#23317}
> 
> TBR=phoglund@webrtc.org,mbonadei@webrtc.org
> 
> Change-Id: I6010f9264dba7bcc4e82c4f4bbfb2eca561e500e
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: webrtc:8821, chromium:845158
> Reviewed-on: https://webrtc-review.googlesource.com/78061
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#23328}

TBR=phoglund@webrtc.org,mbonadei@webrtc.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: webrtc:8821, chromium:845158
Change-Id: Iebe0958012c39e1321487e5425f43904eaf5fe91
Reviewed-on: https://webrtc-review.googlesource.com/78705
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23403}
diff --git a/webrtc.gni b/webrtc.gni
index 95c24d4..123e2c2 100644
--- a/webrtc.gni
+++ b/webrtc.gni
@@ -313,6 +313,9 @@
   "software_video_codecs",
 ]
 
+absl_include_config = "//third_party/abseil-cpp:absl_include_config"
+absl_define_config = "//third_party/abseil-cpp:absl_define_config"
+
 template("rtc_test") {
   test(target_name) {
     forward_variables_from(invoker,
@@ -331,7 +334,11 @@
     configs += invoker.configs
     configs -= rtc_remove_configs
     configs -= invoker.suppressed_configs
-    public_configs = [ rtc_common_inherited_config ]
+    public_configs = [
+      rtc_common_inherited_config,
+      absl_include_config,
+      absl_define_config,
+    ]
     if (defined(invoker.public_configs)) {
       public_configs += invoker.public_configs
     }
@@ -398,7 +405,11 @@
     configs += invoker.configs
     configs -= rtc_remove_configs
     configs -= invoker.suppressed_configs
-    public_configs = [ rtc_common_inherited_config ]
+    public_configs = [
+      rtc_common_inherited_config,
+      absl_include_config,
+      absl_define_config,
+    ]
     if (defined(invoker.public_configs)) {
       public_configs += invoker.public_configs
     }
@@ -428,7 +439,11 @@
     ]
     deps += invoker.deps
 
-    public_configs = [ rtc_common_inherited_config ]
+    public_configs = [
+      rtc_common_inherited_config,
+      absl_include_config,
+      absl_define_config,
+    ]
     if (defined(invoker.public_configs)) {
       public_configs += invoker.public_configs
     }
@@ -491,7 +506,11 @@
     configs += invoker.configs
     configs -= rtc_remove_configs
     configs -= invoker.suppressed_configs
-    public_configs = [ rtc_common_inherited_config ]
+    public_configs = [
+      rtc_common_inherited_config,
+      absl_include_config,
+      absl_define_config,
+    ]
     if (defined(invoker.public_configs)) {
       public_configs += invoker.public_configs
     }
@@ -554,7 +573,11 @@
     configs += invoker.configs
     configs -= rtc_remove_configs
     configs -= invoker.suppressed_configs
-    public_configs = [ rtc_common_inherited_config ]
+    public_configs = [
+      rtc_common_inherited_config,
+      absl_include_config,
+      absl_define_config,
+    ]
     if (defined(invoker.public_configs)) {
       public_configs += invoker.public_configs
     }