Merge "Ensure MTU is set for new interfaces."
diff --git a/Cronet/TEST_MAPPING b/Cronet/TEST_MAPPING
index 815d496..b1f3088 100644
--- a/Cronet/TEST_MAPPING
+++ b/Cronet/TEST_MAPPING
@@ -1,7 +1,7 @@
 {
-  "postsubmit": [
+  "presubmit": [
     {
-      "name": "CronetApiTest"
+      "name": "CtsCronetTestCases"
     }
   ]
 }
diff --git a/Cronet/tests/cts/Android.bp b/Cronet/tests/cts/Android.bp
index e71c707..56f3ddb 100644
--- a/Cronet/tests/cts/Android.bp
+++ b/Cronet/tests/cts/Android.bp
@@ -18,12 +18,16 @@
     default_applicable_licenses: ["Android-Apache-2.0"],
 }
 
-java_library {
-    name: "CronetApiCommonTests",
+android_test {
+    name: "CtsCronetTestCases",
+    compile_multilib: "both", // Include both the 32 and 64 bit versions
+    defaults: ["cts_defaults"],
+    sdk_version: "test_current",
     srcs: ["src/**/*.java"],
     static_libs: [
         "androidx.test.rules",
         "androidx.core_core",
+        "ctstestrunner-axt",
         "junit",
     ],
     libs: [
@@ -33,14 +37,11 @@
         "androidx.annotation_annotation",
         "framework-cronet",
     ],
-}
 
-android_test {
-    name: "CronetApiTest",
-    sdk_version: "test_current",
-    test_suites: ["device-tests"],
-    certificate: "platform",
-    static_libs: [
-        "CronetApiCommonTests",
+    // Tag this as a cts test artifact
+    test_suites: [
+        "cts",
+        "general-tests",
+        "mts-tethering"
     ],
 }
diff --git a/Cronet/tests/cts/AndroidManifest.xml b/Cronet/tests/cts/AndroidManifest.xml
index db0f0b3..6797586 100644
--- a/Cronet/tests/cts/AndroidManifest.xml
+++ b/Cronet/tests/cts/AndroidManifest.xml
@@ -18,18 +18,21 @@
 -->
 
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
-        package="org.chromium.net.test">
+          package="android.cronet.cts">
 
     <uses-permission android:name="android.permission.INTERNET"/>
-    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
+    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
 
-    <application>
-        <uses-library android:name="android.test.runner" />
-        <uses-library android:name="framework-cronet" />
+    <application android:usesCleartextTraffic="true">
+        <uses-library android:name="android.test.runner"/>
+        <uses-library android:name="framework-cronet"/>
     </application>
 
     <instrumentation
         android:name="androidx.test.runner.AndroidJUnitRunner"
-        android:targetPackage="org.chromium.net.test"
-        android:label="Cronet API Networking Tests" />
-</manifest>
\ No newline at end of file
+        android:targetPackage="android.cronet.cts"
+        android:label="CTS tests of android.cronet">
+        <meta-data android:name="listener"
+                   android:value="com.android.cts.runner.CtsTestRunListener"/>
+    </instrumentation>
+</manifest>
diff --git a/Cronet/tests/cts/AndroidTest.xml b/Cronet/tests/cts/AndroidTest.xml
new file mode 100644
index 0000000..3ab60e4
--- /dev/null
+++ b/Cronet/tests/cts/AndroidTest.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2019 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License.
+  -->
+<configuration description="Config for CTS Cronet test cases">
+    <option name="test-suite-tag" value="cts" />
+    <option name="config-descriptor:metadata" key="component" value="networking" />
+    <option name="config-descriptor:metadata" key="parameter" value="instant_app" />
+    <option name="config-descriptor:metadata" key="parameter" value="multi_abi" />
+    <option name="config-descriptor:metadata" key="parameter" value="secondary_user" />
+    <target_preparer class="com.android.tradefed.targetprep.suite.SuiteApkInstaller">
+        <option name="cleanup-apks" value="true" />
+        <option name="test-file-name" value="CtsCronetTestCases.apk" />
+    </target_preparer>
+    <test class="com.android.tradefed.testtype.AndroidJUnitTest" >
+        <option name="package" value="android.cronet.cts" />
+        <option name="runtime-hint" value="10s" />
+    </test>
+
+    <!-- Only run CtsCronetTestcasess in MTS if the Tethering Mainline module is installed. -->
+    <object type="module_controller"
+            class="com.android.tradefed.testtype.suite.module.MainlineTestModuleController">
+        <option name="mainline-module-package-name" value="com.google.android.tethering" />
+    </object>
+</configuration>
diff --git a/Cronet/tests/cts/OWNERS b/Cronet/tests/cts/OWNERS
new file mode 100644
index 0000000..acb6ee6
--- /dev/null
+++ b/Cronet/tests/cts/OWNERS
@@ -0,0 +1,8 @@
+# Bug component: 31808
+
+set noparent
+file:platform/packages/modules/Connectivity:master:/OWNERS_core_networking_xts
+
+# TODO: Temp ownership to develop cronet CTS
+colibie@google.com #{LAST_RESORT_SUGGESTION}
+prohr@google.com #{LAST_RESORT_SUGGESTION}
diff --git a/Tethering/Android.bp b/Tethering/Android.bp
index 829e66a..d2f6d15 100644
--- a/Tethering/Android.bp
+++ b/Tethering/Android.bp
@@ -34,6 +34,7 @@
     // Libraries not including Tethering's own framework-tethering (different flavors of that one
     // are needed depending on the build rule)
     libs: [
+        "connectivity-internal-api-util",
         "framework-configinfrastructure",
         "framework-connectivity.stubs.module_lib",
         "framework-connectivity-t.stubs.module_lib",
diff --git a/Tethering/apex/Android.bp b/Tethering/apex/Android.bp
index e59c8e4..8840394 100644
--- a/Tethering/apex/Android.bp
+++ b/Tethering/apex/Android.bp
@@ -199,6 +199,7 @@
             "android.net.connectivity",
             "android.net.netstats.provider",
             "android.net.nsd",
+            "android.net.wear",
         ],
     },
 }
diff --git a/Tethering/common/TetheringLib/Android.bp b/Tethering/common/TetheringLib/Android.bp
index 9ca3f14..481557b 100644
--- a/Tethering/common/TetheringLib/Android.bp
+++ b/Tethering/common/TetheringLib/Android.bp
@@ -22,6 +22,10 @@
     defaults: ["framework-module-defaults"],
     impl_library_visibility: [
         "//packages/modules/Connectivity/Tethering:__subpackages__",
+        "//packages/modules/Connectivity/framework",
+        "//packages/modules/Connectivity/framework-t",
+        "//packages/modules/Connectivity/service",
+        "//packages/modules/Connectivity/service-t",
 
         // Using for test only
         "//cts/tests/netlegacy22.api",
@@ -64,19 +68,8 @@
 filegroup {
     name: "framework-tethering-srcs",
     srcs: [
-        "src/android/net/TetheredClient.aidl",
-        "src/android/net/TetheredClient.java",
-        "src/android/net/TetheringManager.java",
-        "src/android/net/TetheringConstants.java",
-        "src/android/net/IIntResultListener.aidl",
-        "src/android/net/ITetheringEventCallback.aidl",
-        "src/android/net/ITetheringConnector.aidl",
-        "src/android/net/TetheringCallbackStartedParcel.aidl",
-        "src/android/net/TetheringConfigurationParcel.aidl",
-        "src/android/net/TetheringRequestParcel.aidl",
-        "src/android/net/TetherStatesParcel.aidl",
-        "src/android/net/TetheringInterface.aidl",
-        "src/android/net/TetheringInterface.java",
+        "src/**/*.aidl",
+        "src/**/*.java",
     ],
     path: "src"
 }
diff --git a/Tethering/common/TetheringLib/src/android/net/wear/ICompanionDeviceManagerProxy.aidl b/Tethering/common/TetheringLib/src/android/net/wear/ICompanionDeviceManagerProxy.aidl
new file mode 100644
index 0000000..f8c39bf
--- /dev/null
+++ b/Tethering/common/TetheringLib/src/android/net/wear/ICompanionDeviceManagerProxy.aidl
@@ -0,0 +1,24 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.net.wear;
+
+import android.companion.AssociationInfo;
+
+/** @hide */
+interface ICompanionDeviceManagerProxy {
+    List<AssociationInfo> getAllAssociations();
+}
diff --git a/Tethering/src/android/net/ip/IpServer.java b/Tethering/src/android/net/ip/IpServer.java
index 8cf13d3..65ea8e5 100644
--- a/Tethering/src/android/net/ip/IpServer.java
+++ b/Tethering/src/android/net/ip/IpServer.java
@@ -17,6 +17,13 @@
 package android.net.ip;
 
 import static android.net.RouteInfo.RTN_UNICAST;
+import static android.net.TetheringManager.TETHER_ERROR_DHCPSERVER_ERROR;
+import static android.net.TetheringManager.TETHER_ERROR_ENABLE_FORWARDING_ERROR;
+import static android.net.TetheringManager.TETHER_ERROR_IFACE_CFG_ERROR;
+import static android.net.TetheringManager.TETHER_ERROR_INTERNAL_ERROR;
+import static android.net.TetheringManager.TETHER_ERROR_NO_ERROR;
+import static android.net.TetheringManager.TETHER_ERROR_TETHER_IFACE_ERROR;
+import static android.net.TetheringManager.TETHER_ERROR_UNTETHER_IFACE_ERROR;
 import static android.net.TetheringManager.TetheringRequest.checkStaticAddressConfiguration;
 import static android.net.dhcp.IDhcpServer.STATUS_SUCCESS;
 import static android.net.util.NetworkConstants.RFC7421_PREFIX_LENGTH;
@@ -310,7 +317,7 @@
         mDeps = deps;
         mTetheringMetrics = tetheringMetrics;
         resetLinkProperties();
-        mLastError = TetheringManager.TETHER_ERROR_NO_ERROR;
+        mLastError = TETHER_ERROR_NO_ERROR;
         mServingMode = STATE_AVAILABLE;
 
         mIpNeighborMonitor = mDeps.getIpNeighborMonitor(getHandler(), mLog,
@@ -475,7 +482,7 @@
         }
 
         private void handleError() {
-            mLastError = TetheringManager.TETHER_ERROR_DHCPSERVER_ERROR;
+            mLastError = TETHER_ERROR_DHCPSERVER_ERROR;
             transitionTo(mInitialState);
         }
     }
@@ -583,7 +590,7 @@
                     public void callback(int statusCode) {
                         if (statusCode != STATUS_SUCCESS) {
                             mLog.e("Error stopping DHCP server: " + statusCode);
-                            mLastError = TetheringManager.TETHER_ERROR_DHCPSERVER_ERROR;
+                            mLastError = TETHER_ERROR_DHCPSERVER_ERROR;
                             // Not much more we can do here
                         }
                         mDhcpLeases.clear();
@@ -1134,7 +1141,7 @@
             maybeLogMessage(this, message.what);
             switch (message.what) {
                 case CMD_TETHER_REQUESTED:
-                    mLastError = TetheringManager.TETHER_ERROR_NO_ERROR;
+                    mLastError = TETHER_ERROR_NO_ERROR;
                     switch (message.arg1) {
                         case STATE_LOCAL_ONLY:
                             maybeConfigureStaticIp((TetheringRequestParcel) message.obj);
@@ -1172,7 +1179,7 @@
             startConntrackMonitoring();
 
             if (!startIPv4()) {
-                mLastError = TetheringManager.TETHER_ERROR_IFACE_CFG_ERROR;
+                mLastError = TETHER_ERROR_IFACE_CFG_ERROR;
                 return;
             }
 
@@ -1180,7 +1187,7 @@
                 NetdUtils.tetherInterface(mNetd, mIfaceName, asIpPrefix(mIpv4Address));
             } catch (RemoteException | ServiceSpecificException | IllegalStateException e) {
                 mLog.e("Error Tethering", e);
-                mLastError = TetheringManager.TETHER_ERROR_TETHER_IFACE_ERROR;
+                mLastError = TETHER_ERROR_TETHER_IFACE_ERROR;
                 return;
             }
 
@@ -1201,7 +1208,7 @@
             try {
                 NetdUtils.untetherInterface(mNetd, mIfaceName);
             } catch (RemoteException | ServiceSpecificException e) {
-                mLastError = TetheringManager.TETHER_ERROR_UNTETHER_IFACE_ERROR;
+                mLastError = TETHER_ERROR_UNTETHER_IFACE_ERROR;
                 mLog.e("Failed to untether interface: " + e);
             }
 
@@ -1234,7 +1241,7 @@
                 case CMD_START_TETHERING_ERROR:
                 case CMD_STOP_TETHERING_ERROR:
                 case CMD_SET_DNS_FORWARDERS_ERROR:
-                    mLastError = TetheringManager.TETHER_ERROR_INTERNAL_ERROR;
+                    mLastError = TETHER_ERROR_INTERNAL_ERROR;
                     transitionTo(mInitialState);
                     break;
                 case CMD_NEW_PREFIX_REQUEST:
@@ -1261,7 +1268,7 @@
         @Override
         public void enter() {
             super.enter();
-            if (mLastError != TetheringManager.TETHER_ERROR_NO_ERROR) {
+            if (mLastError != TETHER_ERROR_NO_ERROR) {
                 transitionTo(mInitialState);
             }
 
@@ -1297,7 +1304,7 @@
         @Override
         public void enter() {
             super.enter();
-            if (mLastError != TetheringManager.TETHER_ERROR_NO_ERROR) {
+            if (mLastError != TETHER_ERROR_NO_ERROR) {
                 transitionTo(mInitialState);
             }
 
@@ -1405,7 +1412,7 @@
                         } catch (RemoteException | ServiceSpecificException e) {
                             mLog.e("Exception enabling NAT: " + e.toString());
                             cleanupUpstream();
-                            mLastError = TetheringManager.TETHER_ERROR_ENABLE_FORWARDING_ERROR;
+                            mLastError = TETHER_ERROR_ENABLE_FORWARDING_ERROR;
                             transitionTo(mInitialState);
                             return true;
                         }
@@ -1454,7 +1461,7 @@
         @Override
         public void enter() {
             mIpNeighborMonitor.stop();
-            mLastError = TetheringManager.TETHER_ERROR_NO_ERROR;
+            mLastError = TETHER_ERROR_NO_ERROR;
             sendInterfaceState(STATE_UNAVAILABLE);
         }
     }
diff --git a/Tethering/src/android/net/ip/NeighborPacketForwarder.java b/Tethering/src/android/net/ip/NeighborPacketForwarder.java
index 8384562..04cb710 100644
--- a/Tethering/src/android/net/ip/NeighborPacketForwarder.java
+++ b/Tethering/src/android/net/ip/NeighborPacketForwarder.java
@@ -18,12 +18,14 @@
 
 import static android.system.OsConstants.AF_INET6;
 import static android.system.OsConstants.AF_PACKET;
+import static android.system.OsConstants.ENODEV;
 import static android.system.OsConstants.ETH_P_IPV6;
 import static android.system.OsConstants.IPPROTO_RAW;
 import static android.system.OsConstants.SOCK_DGRAM;
 import static android.system.OsConstants.SOCK_NONBLOCK;
 import static android.system.OsConstants.SOCK_RAW;
-import static android.system.OsConstants.ENODEV;
+
+import static com.android.net.module.util.SocketUtils.closeSocketQuietly;
 
 import android.net.util.SocketUtils;
 import android.os.Handler;
@@ -36,7 +38,6 @@
 import com.android.networkstack.tethering.util.TetheringUtils;
 
 import java.io.FileDescriptor;
-import java.io.IOException;
 import java.net.Inet6Address;
 import java.net.InetSocketAddress;
 import java.net.SocketAddress;
@@ -105,15 +106,6 @@
         }
     }
 
-    // TODO: move NetworkStackUtils.closeSocketQuietly to
-    // frameworks/libs/net/common/device/com/android/net/module/util/[someclass].
-    private void closeSocketQuietly(FileDescriptor fd) {
-        try {
-            SocketUtils.closeSocket(fd);
-        } catch (IOException ignored) {
-        }
-    }
-
     @Override
     protected FileDescriptor createFd() {
         try {
diff --git a/Tethering/src/com/android/networkstack/tethering/BpfCoordinator.java b/Tethering/src/com/android/networkstack/tethering/BpfCoordinator.java
index 51c7c9c..72f83fa 100644
--- a/Tethering/src/com/android/networkstack/tethering/BpfCoordinator.java
+++ b/Tethering/src/com/android/networkstack/tethering/BpfCoordinator.java
@@ -74,7 +74,7 @@
 import com.android.net.module.util.ip.ConntrackMonitor.ConntrackEventConsumer;
 import com.android.net.module.util.netlink.ConntrackMessage;
 import com.android.net.module.util.netlink.NetlinkConstants;
-import com.android.net.module.util.netlink.NetlinkSocket;
+import com.android.net.module.util.netlink.NetlinkUtils;
 import com.android.networkstack.tethering.apishim.common.BpfCoordinatorShim;
 import com.android.networkstack.tethering.util.TetheringUtils.ForwardedStats;
 
@@ -2075,7 +2075,7 @@
         final byte[] msg = ConntrackMessage.newIPv4TimeoutUpdateRequest(
                 proto, src4, (int) srcPort, dst4, (int) dstPort, timeoutSec);
         try {
-            NetlinkSocket.sendOneShotKernelMessage(OsConstants.NETLINK_NETFILTER, msg);
+            NetlinkUtils.sendOneShotKernelMessage(OsConstants.NETLINK_NETFILTER, msg);
         } catch (ErrnoException e) {
             // Lower the log level for the entry not existing. The conntrack entry may have been
             // deleted and not handled by the conntrack event monitor yet. In other words, the
diff --git a/Tethering/src/com/android/networkstack/tethering/OffloadController.java b/Tethering/src/com/android/networkstack/tethering/OffloadController.java
index 94684af..d2f177d 100644
--- a/Tethering/src/com/android/networkstack/tethering/OffloadController.java
+++ b/Tethering/src/com/android/networkstack/tethering/OffloadController.java
@@ -55,7 +55,7 @@
 import com.android.net.module.util.SharedLog;
 import com.android.net.module.util.netlink.ConntrackMessage;
 import com.android.net.module.util.netlink.NetlinkConstants;
-import com.android.net.module.util.netlink.NetlinkSocket;
+import com.android.net.module.util.netlink.NetlinkUtils;
 import com.android.networkstack.tethering.OffloadHardwareInterface.ForwardedStats;
 
 import java.net.Inet4Address;
@@ -825,7 +825,7 @@
                 proto, src, srcPort, dst, dstPort, timeoutSec);
 
         try {
-            NetlinkSocket.sendOneShotKernelMessage(OsConstants.NETLINK_NETFILTER, msg);
+            NetlinkUtils.sendOneShotKernelMessage(OsConstants.NETLINK_NETFILTER, msg);
         } catch (ErrnoException e) {
             mNatUpdateNetlinkErrors++;
             mLog.e("Error updating NAT conntrack entry >" + natDescription + "<: " + e
diff --git a/Tethering/src/com/android/networkstack/tethering/OffloadHardwareInterface.java b/Tethering/src/com/android/networkstack/tethering/OffloadHardwareInterface.java
index 846abcb..76ddfe5 100644
--- a/Tethering/src/com/android/networkstack/tethering/OffloadHardwareInterface.java
+++ b/Tethering/src/com/android/networkstack/tethering/OffloadHardwareInterface.java
@@ -40,7 +40,7 @@
 
 import com.android.internal.annotations.VisibleForTesting;
 import com.android.net.module.util.SharedLog;
-import com.android.net.module.util.netlink.NetlinkSocket;
+import com.android.net.module.util.netlink.NetlinkUtils;
 import com.android.net.module.util.netlink.StructNfGenMsg;
 import com.android.net.module.util.netlink.StructNlMsgHdr;
 
@@ -234,7 +234,7 @@
         public NativeHandle createConntrackSocket(final int groups) {
             final FileDescriptor fd;
             try {
-                fd = NetlinkSocket.forProto(OsConstants.NETLINK_NETFILTER);
+                fd = NetlinkUtils.netlinkSocketForProto(OsConstants.NETLINK_NETFILTER);
             } catch (ErrnoException e) {
                 mLog.e("Unable to create conntrack socket " + e);
                 return null;
@@ -342,7 +342,7 @@
         nfh.pack(byteBuffer);
 
         try {
-            NetlinkSocket.sendMessage(handle.getFileDescriptor(), msg, 0 /* offset */, length,
+            NetlinkUtils.sendMessage(handle.getFileDescriptor(), msg, 0 /* offset */, length,
                                       NETLINK_MESSAGE_TIMEOUT_MS);
         } catch (ErrnoException | InterruptedIOException e) {
             mLog.e("Unable to send netfilter message, error: " + e);
diff --git a/Tethering/src/com/android/networkstack/tethering/Tethering.java b/Tethering/src/com/android/networkstack/tethering/Tethering.java
index f0dd030..b3ec805 100644
--- a/Tethering/src/com/android/networkstack/tethering/Tethering.java
+++ b/Tethering/src/com/android/networkstack/tethering/Tethering.java
@@ -146,6 +146,7 @@
 import com.android.networkstack.tethering.util.PrefixUtils;
 import com.android.networkstack.tethering.util.TetheringUtils;
 import com.android.networkstack.tethering.util.VersionedBroadcastListener;
+import com.android.networkstack.tethering.wear.WearableConnectionManager;
 
 import java.io.FileDescriptor;
 import java.io.PrintWriter;
@@ -257,6 +258,7 @@
     private final BpfCoordinator mBpfCoordinator;
     private final PrivateAddressCoordinator mPrivateAddressCoordinator;
     private final TetheringMetrics mTetheringMetrics;
+    private final WearableConnectionManager mWearableConnectionManager;
     private int mActiveDataSubId = INVALID_SUBSCRIPTION_ID;
 
     private volatile TetheringConfiguration mConfig;
@@ -393,6 +395,12 @@
                     }
                 });
 
+        if (SdkLevel.isAtLeastT() && mConfig.isWearTetheringEnabled()) {
+            mWearableConnectionManager = mDeps.getWearableConnectionManager(mContext);
+        } else {
+            mWearableConnectionManager = null;
+        }
+
         startStateMachineUpdaters();
     }
 
@@ -2638,6 +2646,13 @@
         mPrivateAddressCoordinator.dump(pw);
         pw.decreaseIndent();
 
+        if (mWearableConnectionManager != null) {
+            pw.println("WearableConnectionManager:");
+            pw.increaseIndent();
+            mWearableConnectionManager.dump(pw);
+            pw.decreaseIndent();
+        }
+
         pw.println("Log:");
         pw.increaseIndent();
         if (CollectionUtils.contains(args, "--short")) {
diff --git a/Tethering/src/com/android/networkstack/tethering/TetheringConfiguration.java b/Tethering/src/com/android/networkstack/tethering/TetheringConfiguration.java
index 903de9d..b6591a9 100644
--- a/Tethering/src/com/android/networkstack/tethering/TetheringConfiguration.java
+++ b/Tethering/src/com/android/networkstack/tethering/TetheringConfiguration.java
@@ -123,6 +123,13 @@
      */
     public static final String TETHER_FORCE_USB_FUNCTIONS =
             "tether_force_usb_functions";
+
+    /**
+     * Experiment flag to enable TETHERING_WEAR.
+     */
+    public static final String TETHER_ENABLE_WEAR_TETHERING =
+            "tether_enable_wear_tethering";
+
     /**
      * Default value that used to periodic polls tether offload stats from tethering offload HAL
      * to make the data warnings work.
@@ -158,6 +165,8 @@
     private final boolean mEnableWifiP2pDedicatedIp;
     private final int mP2pLeasesSubnetPrefixLength;
 
+    private final boolean mEnableWearTethering;
+
     private final int mUsbTetheringFunction;
     protected final ContentResolver mContentResolver;
 
@@ -234,6 +243,8 @@
 
         mP2pLeasesSubnetPrefixLength = getP2pLeasesSubnetPrefixLengthFromRes(res, configLog);
 
+        mEnableWearTethering = shouldEnableWearTethering(ctx);
+
         configLog.log(toString());
     }
 
@@ -317,6 +328,11 @@
         return mP2pLeasesSubnetPrefixLength;
     }
 
+    /** Returns true if wearable device tethering is enabled. */
+    public boolean isWearTetheringEnabled() {
+        return mEnableWearTethering;
+    }
+
     /** Does the dumping.*/
     public void dump(PrintWriter pw) {
         pw.print("activeDataSubId: ");
@@ -362,6 +378,9 @@
         pw.print("p2pLeasesSubnetPrefixLength: ");
         pw.println(mP2pLeasesSubnetPrefixLength);
 
+        pw.print("enableWearTethering: ");
+        pw.println(mEnableWearTethering);
+
         pw.print("mUsbTetheringFunction: ");
         pw.println(isUsingNcm() ? "NCM" : "RNDIS");
     }
@@ -387,6 +406,7 @@
                 isCarrierConfigAffirmsEntitlementCheckRequired));
         sj.add(String.format("enableBpfOffload:%s", mEnableBpfOffload));
         sj.add(String.format("enableLegacyDhcpServer:%s", mEnableLegacyDhcpServer));
+        sj.add(String.format("enableWearTethering:%s", mEnableWearTethering));
         return String.format("TetheringConfiguration{%s}", sj.toString());
     }
 
@@ -557,6 +577,11 @@
                 TETHER_ENABLE_LEGACY_DHCP_SERVER, false /** defaultValue */);
     }
 
+    private boolean shouldEnableWearTethering(Context context) {
+        return SdkLevel.isAtLeastT()
+            && isTetheringFeatureEnabled(context, TETHER_ENABLE_WEAR_TETHERING);
+    }
+
     private boolean getDeviceConfigBoolean(final String name, final boolean defaultValue) {
         // Due to the limitation of static mock for testing, using #getDeviceConfigProperty instead
         // of DeviceConfig#getBoolean. If using #getBoolean here, the test can't know that the
diff --git a/Tethering/src/com/android/networkstack/tethering/TetheringDependencies.java b/Tethering/src/com/android/networkstack/tethering/TetheringDependencies.java
index 611d1cf..741a5c5 100644
--- a/Tethering/src/com/android/networkstack/tethering/TetheringDependencies.java
+++ b/Tethering/src/com/android/networkstack/tethering/TetheringDependencies.java
@@ -22,6 +22,7 @@
 import android.content.Context;
 import android.net.INetd;
 import android.net.ip.IpServer;
+import android.os.Build;
 import android.os.Handler;
 import android.os.IBinder;
 import android.os.Looper;
@@ -29,12 +30,14 @@
 import android.text.TextUtils;
 
 import androidx.annotation.NonNull;
+import androidx.annotation.RequiresApi;
 
 import com.android.internal.util.StateMachine;
 import com.android.net.module.util.SharedLog;
 import com.android.networkstack.apishim.BluetoothPanShimImpl;
 import com.android.networkstack.apishim.common.BluetoothPanShim;
 import com.android.networkstack.tethering.metrics.TetheringMetrics;
+import com.android.networkstack.tethering.wear.WearableConnectionManager;
 
 import java.util.ArrayList;
 
@@ -171,4 +174,12 @@
     public TetheringMetrics getTetheringMetrics() {
         return new TetheringMetrics();
     }
+
+    /**
+     * Returns the implementation of WearableConnectionManager.
+     */
+    @RequiresApi(Build.VERSION_CODES.TIRAMISU)
+    public WearableConnectionManager getWearableConnectionManager(Context ctx) {
+        return new WearableConnectionManager(ctx);
+    }
 }
diff --git a/Tethering/src/com/android/networkstack/tethering/wear/CompanionDeviceManagerProxy.java b/Tethering/src/com/android/networkstack/tethering/wear/CompanionDeviceManagerProxy.java
new file mode 100644
index 0000000..e94febb
--- /dev/null
+++ b/Tethering/src/com/android/networkstack/tethering/wear/CompanionDeviceManagerProxy.java
@@ -0,0 +1,55 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.networkstack.tethering.wear;
+
+import android.companion.AssociationInfo;
+import android.companion.CompanionDeviceManager;
+import android.content.Context;
+import android.net.connectivity.TiramisuConnectivityInternalApiUtil;
+import android.net.wear.ICompanionDeviceManagerProxy;
+import android.os.Build;
+import android.os.RemoteException;
+
+import androidx.annotation.RequiresApi;
+
+import java.util.List;
+
+/**
+ * A proxy for {@link android.companion.CompanionDeviceManager}, allowing Tethering to call it with
+ * a different set of permissions.
+ * @hide
+ */
+public class CompanionDeviceManagerProxy {
+    private final ICompanionDeviceManagerProxy mService;
+
+    @RequiresApi(Build.VERSION_CODES.TIRAMISU)
+    public CompanionDeviceManagerProxy(Context context) {
+        mService = ICompanionDeviceManagerProxy.Stub.asInterface(
+                TiramisuConnectivityInternalApiUtil.getCompanionDeviceManagerProxyService(context));
+    }
+
+    /**
+     * @see CompanionDeviceManager#getAllAssociations()
+     */
+    public List<AssociationInfo> getAllAssociations() {
+        try {
+            return mService.getAllAssociations();
+        } catch (RemoteException e) {
+            throw e.rethrowFromSystemServer();
+        }
+    }
+}
diff --git a/Tethering/src/com/android/networkstack/tethering/wear/WearableConnectionManager.java b/Tethering/src/com/android/networkstack/tethering/wear/WearableConnectionManager.java
new file mode 100644
index 0000000..a1b535a
--- /dev/null
+++ b/Tethering/src/com/android/networkstack/tethering/wear/WearableConnectionManager.java
@@ -0,0 +1,36 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.networkstack.tethering.wear;
+
+import android.content.Context;
+import android.os.Build;
+
+import androidx.annotation.RequiresApi;
+
+import com.android.internal.util.IndentingPrintWriter;
+
+/**
+ * Manages Bluetooth connections from Wearable devices.
+ */
+public class WearableConnectionManager {
+    @RequiresApi(Build.VERSION_CODES.TIRAMISU)
+    public WearableConnectionManager(Context context) {
+    }
+
+    public void dump(IndentingPrintWriter pw) {
+    }
+}
diff --git a/Tethering/tests/privileged/src/com/android/networkstack/tethering/ConntrackSocketTest.java b/Tethering/tests/privileged/src/com/android/networkstack/tethering/ConntrackSocketTest.java
index 23fb60c..706df4e 100644
--- a/Tethering/tests/privileged/src/com/android/networkstack/tethering/ConntrackSocketTest.java
+++ b/Tethering/tests/privileged/src/com/android/networkstack/tethering/ConntrackSocketTest.java
@@ -20,7 +20,7 @@
 import static android.system.OsConstants.IPPROTO_TCP;
 import static android.system.OsConstants.NETLINK_NETFILTER;
 
-import static com.android.net.module.util.netlink.NetlinkSocket.DEFAULT_RECV_BUFSIZE;
+import static com.android.net.module.util.netlink.NetlinkUtils.DEFAULT_RECV_BUFSIZE;
 import static com.android.networkstack.tethering.OffloadHardwareInterface.IPCTNL_MSG_CT_NEW;
 import static com.android.networkstack.tethering.OffloadHardwareInterface.NFNL_SUBSYS_CTNETLINK;
 import static com.android.networkstack.tethering.OffloadHardwareInterface.NF_NETLINK_CONNTRACK_DESTROY;
@@ -41,7 +41,7 @@
 import com.android.net.module.util.SharedLog;
 import com.android.net.module.util.netlink.ConntrackMessage;
 import com.android.net.module.util.netlink.NetlinkMessage;
-import com.android.net.module.util.netlink.NetlinkSocket;
+import com.android.net.module.util.netlink.NetlinkUtils;
 import com.android.net.module.util.netlink.StructNlMsgHdr;
 
 import org.junit.Before;
@@ -90,7 +90,7 @@
 
         // Loop until the socket is found (and return) or recvMessage throws an exception.
         while (true) {
-            final ByteBuffer buffer = NetlinkSocket.recvMessage(fd, DEFAULT_RECV_BUFSIZE, TIMEOUT);
+            final ByteBuffer buffer = NetlinkUtils.recvMessage(fd, DEFAULT_RECV_BUFSIZE, TIMEOUT);
 
             // Parse all the netlink messages in the dump.
             // NetlinkMessage#parse returns null if the message is truncated or invalid.
diff --git a/Tethering/tests/unit/src/com/android/networkstack/tethering/BpfCoordinatorTest.java b/Tethering/tests/unit/src/com/android/networkstack/tethering/BpfCoordinatorTest.java
index 53984a8..e5fe3f8 100644
--- a/Tethering/tests/unit/src/com/android/networkstack/tethering/BpfCoordinatorTest.java
+++ b/Tethering/tests/unit/src/com/android/networkstack/tethering/BpfCoordinatorTest.java
@@ -109,7 +109,7 @@
 import com.android.net.module.util.ip.ConntrackMonitor.ConntrackEventConsumer;
 import com.android.net.module.util.netlink.ConntrackMessage;
 import com.android.net.module.util.netlink.NetlinkConstants;
-import com.android.net.module.util.netlink.NetlinkSocket;
+import com.android.net.module.util.netlink.NetlinkUtils;
 import com.android.networkstack.tethering.BpfCoordinator.BpfConntrackEventConsumer;
 import com.android.networkstack.tethering.BpfCoordinator.ClientInfo;
 import com.android.networkstack.tethering.BpfCoordinator.Ipv6ForwardingRule;
@@ -1697,9 +1697,9 @@
         final long validTime = (CONNTRACK_TIMEOUT_UPDATE_INTERVAL_MS - 1) * 1_000_000L;
         final long expiredTime = (CONNTRACK_TIMEOUT_UPDATE_INTERVAL_MS + 1) * 1_000_000L;
 
-        // Static mocking for NetlinkSocket.
+        // Static mocking for NetlinkUtils.
         MockitoSession mockSession = ExtendedMockito.mockitoSession()
-                .mockStatic(NetlinkSocket.class)
+                .mockStatic(NetlinkUtils.class)
                 .startMocking();
         try {
             final BpfCoordinator coordinator = makeBpfCoordinator();
@@ -1711,8 +1711,8 @@
             setElapsedRealtimeNanos(expiredTime);
             mTestLooper.moveTimeForward(CONNTRACK_TIMEOUT_UPDATE_INTERVAL_MS);
             waitForIdle();
-            ExtendedMockito.verifyNoMoreInteractions(staticMockMarker(NetlinkSocket.class));
-            ExtendedMockito.clearInvocations(staticMockMarker(NetlinkSocket.class));
+            ExtendedMockito.verifyNoMoreInteractions(staticMockMarker(NetlinkUtils.class));
+            ExtendedMockito.clearInvocations(staticMockMarker(NetlinkUtils.class));
 
             // [2] Refresh conntrack timeout.
             setElapsedRealtimeNanos(validTime);
@@ -1724,19 +1724,19 @@
             final byte[] expectedNetlinkUdp = ConntrackMessage.newIPv4TimeoutUpdateRequest(
                     IPPROTO_UDP, PRIVATE_ADDR, (int) PRIVATE_PORT, REMOTE_ADDR,
                     (int) REMOTE_PORT, NF_CONNTRACK_UDP_TIMEOUT_STREAM);
-            ExtendedMockito.verify(() -> NetlinkSocket.sendOneShotKernelMessage(
+            ExtendedMockito.verify(() -> NetlinkUtils.sendOneShotKernelMessage(
                     eq(NETLINK_NETFILTER), eq(expectedNetlinkTcp)));
-            ExtendedMockito.verify(() -> NetlinkSocket.sendOneShotKernelMessage(
+            ExtendedMockito.verify(() -> NetlinkUtils.sendOneShotKernelMessage(
                     eq(NETLINK_NETFILTER), eq(expectedNetlinkUdp)));
-            ExtendedMockito.verifyNoMoreInteractions(staticMockMarker(NetlinkSocket.class));
-            ExtendedMockito.clearInvocations(staticMockMarker(NetlinkSocket.class));
+            ExtendedMockito.verifyNoMoreInteractions(staticMockMarker(NetlinkUtils.class));
+            ExtendedMockito.clearInvocations(staticMockMarker(NetlinkUtils.class));
 
             // [3] Don't refresh conntrack timeout if polling stopped.
             coordinator.stopPolling();
             mTestLooper.moveTimeForward(CONNTRACK_TIMEOUT_UPDATE_INTERVAL_MS);
             waitForIdle();
-            ExtendedMockito.verifyNoMoreInteractions(staticMockMarker(NetlinkSocket.class));
-            ExtendedMockito.clearInvocations(staticMockMarker(NetlinkSocket.class));
+            ExtendedMockito.verifyNoMoreInteractions(staticMockMarker(NetlinkUtils.class));
+            ExtendedMockito.clearInvocations(staticMockMarker(NetlinkUtils.class));
         } finally {
             mockSession.finishMocking();
         }
diff --git a/bpf_progs/Android.bp b/bpf_progs/Android.bp
index 8eb9cfd..229dce3 100644
--- a/bpf_progs/Android.bp
+++ b/bpf_progs/Android.bp
@@ -54,7 +54,6 @@
         "//packages/modules/Connectivity/tests/native/utilities",
         "//packages/modules/Connectivity/service-t/native/libs/libnetworkstats",
         "//packages/modules/Connectivity/tests/unit/jni",
-        "//system/netd/tests",
     ],
 }
 
diff --git a/bpf_progs/netd.c b/bpf_progs/netd.c
index 8e99b8d..3eb4e02 100644
--- a/bpf_progs/netd.c
+++ b/bpf_progs/netd.c
@@ -31,7 +31,7 @@
 #include <stdbool.h>
 #include <stdint.h>
 #include "bpf_net_helpers.h"
-#include "bpf_shared.h"
+#include "netd.h"
 
 // This is defined for cgroup bpf filter only.
 static const int DROP = 0;
diff --git a/bpf_progs/bpf_shared.h b/bpf_progs/netd.h
similarity index 100%
rename from bpf_progs/bpf_shared.h
rename to bpf_progs/netd.h
diff --git a/framework/Android.bp b/framework/Android.bp
index 485961c..3950dba 100644
--- a/framework/Android.bp
+++ b/framework/Android.bp
@@ -80,7 +80,9 @@
         "framework-connectivity-t.stubs.module_lib",
     ],
     impl_only_libs: [
-        "framework-tethering.stubs.module_lib",
+        // TODO: figure out why just using "framework-tethering" uses the stubs, even though both
+        // framework-connectivity and framework-tethering are in the same APEX.
+        "framework-tethering.impl",
         "framework-wifi.stubs.module_lib",
         "net-utils-device-common",
     ],
@@ -109,9 +111,9 @@
     libs: [
         // This cannot be in the defaults clause above because if it were, it would be used
         // to generate the connectivity stubs. That would create a circular dependency
-        // because the tethering stubs depend on the connectivity stubs (e.g.,
+        // because the tethering impl depend on the connectivity stubs (e.g.,
         // TetheringRequest depends on LinkAddress).
-        "framework-tethering.stubs.module_lib",
+        "framework-tethering.impl",
         "framework-wifi.stubs.module_lib",
     ],
     visibility: ["//packages/modules/Connectivity:__subpackages__"]
@@ -243,3 +245,24 @@
         "//packages/modules/Connectivity/service",
     ],
 }
+
+// Library providing limited APIs within the connectivity module, so that R+ components like
+// Tethering have a controlled way to depend on newer components like framework-connectivity that
+// are not loaded on R.
+java_library {
+    name: "connectivity-internal-api-util",
+    sdk_version: "module_current",
+    libs: [
+        "androidx.annotation_annotation",
+        "framework-connectivity.impl",
+    ],
+    jarjar_rules: ":framework-connectivity-jarjar-rules",
+    srcs: [
+        // Files listed here MUST all be annotated with @RequiresApi(Build.VERSION_CODES.TIRAMISU),
+        // so that API checks are enforced for R+ users of this library
+        "src/android/net/connectivity/TiramisuConnectivityInternalApiUtil.java",
+    ],
+    visibility: [
+        "//packages/modules/Connectivity/Tethering:__subpackages__",
+    ],
+}
diff --git a/framework/api/system-current.txt b/framework/api/system-current.txt
index c7872a0..dd3404c 100644
--- a/framework/api/system-current.txt
+++ b/framework/api/system-current.txt
@@ -512,10 +512,11 @@
   }
 
   public final class VpnTransportInfo implements android.os.Parcelable android.net.TransportInfo {
-    ctor public VpnTransportInfo(int, @Nullable String, boolean);
+    ctor public VpnTransportInfo(int, @Nullable String, boolean, boolean);
+    method public boolean areLongLivedTcpConnectionsExpensive();
     method public int describeContents();
-    method public boolean getBypassable();
     method public int getType();
+    method public boolean isBypassable();
     method public void writeToParcel(@NonNull android.os.Parcel, int);
     field @NonNull public static final android.os.Parcelable.Creator<android.net.VpnTransportInfo> CREATOR;
   }
diff --git a/framework/src/android/net/ConnectivityManager.java b/framework/src/android/net/ConnectivityManager.java
index 39c5af2..1b4b42f 100644
--- a/framework/src/android/net/ConnectivityManager.java
+++ b/framework/src/android/net/ConnectivityManager.java
@@ -5992,4 +5992,13 @@
             throw e.rethrowFromSystemServer();
         }
     }
+
+    /** @hide */
+    public IBinder getCompanionDeviceManagerProxyService() {
+        try {
+            return mService.getCompanionDeviceManagerProxyService();
+        } catch (RemoteException e) {
+            throw e.rethrowFromSystemServer();
+        }
+    }
 }
diff --git a/framework/src/android/net/IConnectivityManager.aidl b/framework/src/android/net/IConnectivityManager.aidl
index 29fea00..43d2f07 100644
--- a/framework/src/android/net/IConnectivityManager.aidl
+++ b/framework/src/android/net/IConnectivityManager.aidl
@@ -247,4 +247,6 @@
     boolean getFirewallChainEnabled(int chain);
 
     void replaceFirewallChain(int chain, in int[] uids);
+
+    IBinder getCompanionDeviceManagerProxyService();
 }
diff --git a/framework/src/android/net/VpnTransportInfo.java b/framework/src/android/net/VpnTransportInfo.java
index ebad477..6bb00c8 100644
--- a/framework/src/android/net/VpnTransportInfo.java
+++ b/framework/src/android/net/VpnTransportInfo.java
@@ -52,6 +52,8 @@
 
     private final boolean mBypassable;
 
+    private final boolean mLongLivedTcpConnectionsExpensive;
+
     // TODO: Refer to Build.VERSION_CODES when it's available in every branch.
     private static final int UPSIDE_DOWN_CAKE = 34;
 
@@ -70,11 +72,12 @@
     @SystemApi(client = MODULE_LIBRARIES)
     public VpnTransportInfo makeCopy(@RedactionType long redactions) {
         return new VpnTransportInfo(mType,
-            ((redactions & REDACT_FOR_NETWORK_SETTINGS) != 0) ? null : mSessionId, mBypassable);
+            ((redactions & REDACT_FOR_NETWORK_SETTINGS) != 0) ? null : mSessionId,
+            mBypassable, mLongLivedTcpConnectionsExpensive);
     }
 
     /**
-     * @deprecated please use {@link VpnTransportInfo(int,String,boolean)} instead.
+     * @deprecated please use {@link VpnTransportInfo(int,String,boolean,boolean)}.
      * @hide
      */
     @Deprecated
@@ -83,17 +86,22 @@
         // When the module runs on older SDKs, |bypassable| will always be false since the old Vpn
         // code will call this constructor. For Settings VPNs, this is always correct as they are
         // never bypassable. For VpnManager and VpnService types, this may be wrong since both of
-        // them have a choice. However, on these SDKs VpnTransportInfo#getBypassable is not
+        // them have a choice. However, on these SDKs VpnTransportInfo#isBypassable is not
         // available anyway, so this should be harmless. False is a better choice than true here
         // regardless because it is the default value for both VpnManager and VpnService if the app
         // does not do anything about it.
-        this(type, sessionId, false /* bypassable */);
+        this(type, sessionId, false /* bypassable */, false /* longLivedTcpConnectionsExpensive */);
     }
 
-    public VpnTransportInfo(int type, @Nullable String sessionId, boolean bypassable) {
+    /**
+     * Construct a new VpnTransportInfo object.
+     */
+    public VpnTransportInfo(int type, @Nullable String sessionId, boolean bypassable,
+            boolean longLivedTcpConnectionsExpensive) {
         this.mType = type;
         this.mSessionId = sessionId;
         this.mBypassable = bypassable;
+        this.mLongLivedTcpConnectionsExpensive = longLivedTcpConnectionsExpensive;
     }
 
     /**
@@ -103,7 +111,7 @@
      * {@code UnsupportedOperationException} if called.
      */
     @RequiresApi(UPSIDE_DOWN_CAKE)
-    public boolean getBypassable() {
+    public boolean isBypassable() {
         if (!SdkLevel.isAtLeastU()) {
             throw new UnsupportedOperationException("Not supported before U");
         }
@@ -112,6 +120,37 @@
     }
 
     /**
+     * Returns whether long-lived TCP connections are expensive on the VPN network.
+     *
+     * If there are long-lived TCP connections over the VPN, over some networks the
+     * VPN needs to regularly send packets to keep the network alive to keep these
+     * connections working, which wakes up the device radio. On some networks, this
+     * can become extremely expensive in terms of battery. The system knows to send
+     * these keepalive packets only when necessary, i.e. when there are long-lived
+     * TCP connections opened over the VPN, meaning on these networks establishing
+     * a long-lived TCP connection will have a very noticeable impact on battery
+     * life.
+     *
+     * VPNs can be bypassable or not. When the VPN is not bypassable, the user has
+     * expressed explicit intent to have no connection outside of the VPN, so even
+     * privileged apps with permission to bypass non-bypassable VPNs should not do
+     * so. See {@link #isBypassable()}.
+     * For bypassable VPNs however, the user expects apps choose reasonable tradeoffs
+     * about whether they use the VPN.
+     *
+     * Components that establish long-lived, encrypted TCP connections are encouraged
+     * to look up this value to decide whether to open their connection over a VPN
+     * or to bypass it. While VPNs do not typically provide privacy or security
+     * benefits to encrypted connections, the user generally still expects the
+     * connections to choose to use the VPN by default, but also do not expect this
+     * comes at the price of drastically reduced battery life. This method provides
+     * a hint about whether the battery cost of opening such a connection is high.
+     */
+    public boolean areLongLivedTcpConnectionsExpensive() {
+        return mLongLivedTcpConnectionsExpensive;
+    }
+
+    /**
      * Returns the session Id of this VpnTransportInfo.
      * @hide
      */
@@ -134,18 +173,21 @@
 
         VpnTransportInfo that = (VpnTransportInfo) o;
         return (this.mType == that.mType) && TextUtils.equals(this.mSessionId, that.mSessionId)
-                && (this.mBypassable == that.mBypassable);
+                && (this.mBypassable == that.mBypassable)
+                && (this.mLongLivedTcpConnectionsExpensive
+                == that.mLongLivedTcpConnectionsExpensive);
     }
 
     @Override
     public int hashCode() {
-        return Objects.hash(mType, mSessionId, mBypassable);
+        return Objects.hash(mType, mSessionId, mBypassable, mLongLivedTcpConnectionsExpensive);
     }
 
     @Override
     public String toString() {
-        return String.format("VpnTransportInfo{type=%d, sessionId=%s, bypassable=%b}",
-                mType, mSessionId, mBypassable);
+        return String.format("VpnTransportInfo{type=%d, sessionId=%s, bypassable=%b "
+                        + "longLivedTcpConnectionsExpensive=%b}",
+                mType, mSessionId, mBypassable, mLongLivedTcpConnectionsExpensive);
     }
 
     @Override
@@ -158,12 +200,14 @@
         dest.writeInt(mType);
         dest.writeString(mSessionId);
         dest.writeBoolean(mBypassable);
+        dest.writeBoolean(mLongLivedTcpConnectionsExpensive);
     }
 
     public static final @NonNull Creator<VpnTransportInfo> CREATOR =
             new Creator<VpnTransportInfo>() {
         public VpnTransportInfo createFromParcel(Parcel in) {
-            return new VpnTransportInfo(in.readInt(), in.readString(), in.readBoolean());
+            return new VpnTransportInfo(
+                    in.readInt(), in.readString(), in.readBoolean(), in.readBoolean());
         }
         public VpnTransportInfo[] newArray(int size) {
             return new VpnTransportInfo[size];
diff --git a/framework/src/android/net/connectivity/TiramisuConnectivityInternalApiUtil.java b/framework/src/android/net/connectivity/TiramisuConnectivityInternalApiUtil.java
new file mode 100644
index 0000000..d65858f
--- /dev/null
+++ b/framework/src/android/net/connectivity/TiramisuConnectivityInternalApiUtil.java
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.net.connectivity;
+
+import android.content.Context;
+import android.net.ConnectivityManager;
+import android.os.Build;
+import android.os.IBinder;
+
+import androidx.annotation.RequiresApi;
+
+/**
+ * Utility providing limited access to module-internal APIs which are only available on Android T+,
+ * as this class is only in the bootclasspath on T+ as part of framework-connectivity.
+ *
+ * R+ module components like Tethering cannot depend on all hidden symbols from
+ * framework-connectivity. They only have access to stable API stubs where newer APIs can be
+ * accessed after an API level check (enforced by the linter), or to limited hidden symbols in this
+ * class which is also annotated with @RequiresApi (so API level checks are also enforced by the
+ * linter).
+ * @hide
+ */
+@RequiresApi(Build.VERSION_CODES.TIRAMISU)
+public class TiramisuConnectivityInternalApiUtil {
+
+    /**
+     * Get a service binder token for
+     * {@link com.android.server.connectivity.wear.CompanionDeviceManagerProxyService}.
+     */
+    public static IBinder getCompanionDeviceManagerProxyService(Context ctx) {
+        final ConnectivityManager cm = ctx.getSystemService(ConnectivityManager.class);
+        return cm.getCompanionDeviceManagerProxyService();
+    }
+}
diff --git a/netd/BpfHandler.h b/netd/BpfHandler.h
index 925a725..a6da4eb 100644
--- a/netd/BpfHandler.h
+++ b/netd/BpfHandler.h
@@ -18,7 +18,7 @@
 
 #include <netdutils/Status.h>
 #include "bpf/BpfMap.h"
-#include "bpf_shared.h"
+#include "netd.h"
 
 using android::bpf::BpfMap;
 using android::bpf::BpfMapRO;
diff --git a/service-t/Android.bp b/service-t/Android.bp
index 2e7a4f3..d876166 100644
--- a/service-t/Android.bp
+++ b/service-t/Android.bp
@@ -50,7 +50,8 @@
         "framework-configinfrastructure",
         "framework-connectivity-pre-jarjar",
         "framework-connectivity-t-pre-jarjar",
-        "framework-tethering",
+        // TODO: use framework-tethering-pre-jarjar when it is separated from framework-tethering
+        "framework-tethering.impl",
         "service-connectivity-pre-jarjar",
         "service-nearby-pre-jarjar",
         "ServiceConnectivityResources",
diff --git a/service-t/native/libs/libnetworkstats/BpfNetworkStats.cpp b/service-t/native/libs/libnetworkstats/BpfNetworkStats.cpp
index 28de881..122c2d4 100644
--- a/service-t/native/libs/libnetworkstats/BpfNetworkStats.cpp
+++ b/service-t/native/libs/libnetworkstats/BpfNetworkStats.cpp
@@ -26,7 +26,7 @@
 #include "android-base/strings.h"
 #include "android-base/unique_fd.h"
 #include "bpf/BpfMap.h"
-#include "bpf_shared.h"
+#include "netd.h"
 #include "netdbpf/BpfNetworkStats.h"
 
 #ifdef LOG_TAG
diff --git a/service-t/native/libs/libnetworkstats/BpfNetworkStatsTest.cpp b/service-t/native/libs/libnetworkstats/BpfNetworkStatsTest.cpp
index 6f9c8c2..ff62c0b 100644
--- a/service-t/native/libs/libnetworkstats/BpfNetworkStatsTest.cpp
+++ b/service-t/native/libs/libnetworkstats/BpfNetworkStatsTest.cpp
@@ -326,7 +326,8 @@
             .txPackets = TEST_PACKET1,
             .txBytes = TEST_BYTES1,
     };
-    populateFakeStats(0, 0, 0, OVERFLOW_COUNTERSET, value1, mFakeStatsMap);
+    // next stats entry will be ignored due to ifindex 0 not being present in mFakeIfaceIndexNameMap
+    populateFakeStats(0, 0, 0, TEST_COUNTERSET1, value1, mFakeStatsMap);
     populateFakeStats(TEST_UID1, 0, IFACE_INDEX1, TEST_COUNTERSET0, value1, mFakeStatsMap);
     populateFakeStats(TEST_UID1, 0, IFACE_INDEX2, TEST_COUNTERSET0, value1, mFakeStatsMap);
     populateFakeStats(TEST_UID1, 0, IFACE_INDEX1, TEST_COUNTERSET1, value1, mFakeStatsMap);
diff --git a/service-t/native/libs/libnetworkstats/include/netdbpf/BpfNetworkStats.h b/service-t/native/libs/libnetworkstats/include/netdbpf/BpfNetworkStats.h
index 8ab7e25..03a1a44 100644
--- a/service-t/native/libs/libnetworkstats/include/netdbpf/BpfNetworkStats.h
+++ b/service-t/native/libs/libnetworkstats/include/netdbpf/BpfNetworkStats.h
@@ -18,7 +18,7 @@
 #define _BPF_NETWORKSTATS_H
 
 #include <bpf/BpfMap.h>
-#include "bpf_shared.h"
+#include "netd.h"
 
 namespace android {
 namespace bpf {
diff --git a/service/Android.bp b/service/Android.bp
index 98bbbac..224fa19 100644
--- a/service/Android.bp
+++ b/service/Android.bp
@@ -157,7 +157,9 @@
         // against the implementation because the two libraries are in the same
         // APEX.
         "framework-connectivity-t.stubs.module_lib",
-        "framework-tethering",
+        // TODO: figure out why just using "framework-tethering" uses the stubs, even though both
+        // service-connectivity and framework-tethering are in the same APEX.
+        "framework-tethering.impl",
         "framework-wifi",
         "unsupportedappusage",
         "ServiceConnectivityResources",
@@ -166,6 +168,7 @@
     static_libs: [
         // Do not add libs here if they are already included
         // in framework-connectivity
+        "androidx.annotation_annotation",
         "connectivity-net-module-utils-bpf",
         "connectivity_native_aidl_interface-lateststable-java",
         "dnsresolver_aidl_interface-V9-java",
@@ -258,7 +261,7 @@
         "framework-annotations-lib",
         "framework-connectivity.impl",
         "framework-connectivity-t.impl",
-        "framework-tethering",
+        "framework-tethering.impl",
         "framework-wifi",
         "libprotobuf-java-nano",
     ],
diff --git a/service/jni/com_android_server_BpfNetMaps.cpp b/service/jni/com_android_server_BpfNetMaps.cpp
index 799ac5c..05f50b0 100644
--- a/service/jni/com_android_server_BpfNetMaps.cpp
+++ b/service/jni/com_android_server_BpfNetMaps.cpp
@@ -18,7 +18,8 @@
 
 #include "TrafficController.h"
 
-#include <bpf_shared.h>
+#include "netd.h"
+
 #include <jni.h>
 #include <log/log.h>
 #include <nativehelper/JNIHelp.h>
diff --git a/service/jni/com_android_server_connectivity_ClatCoordinator.cpp b/service/jni/com_android_server_connectivity_ClatCoordinator.cpp
index 5cd6e5d..18d2311 100644
--- a/service/jni/com_android_server_connectivity_ClatCoordinator.cpp
+++ b/service/jni/com_android_server_connectivity_ClatCoordinator.cpp
@@ -30,7 +30,6 @@
 
 #include <bpf/BpfMap.h>
 #include <bpf/BpfUtils.h>
-#include <bpf_shared.h>
 #include <netjniutils/netjniutils.h>
 #include <private/android_filesystem_config.h>
 
diff --git a/service/mdns/com/android/server/connectivity/mdns/MdnsAnnouncer.java b/service/mdns/com/android/server/connectivity/mdns/MdnsAnnouncer.java
new file mode 100644
index 0000000..91e08a8
--- /dev/null
+++ b/service/mdns/com/android/server/connectivity/mdns/MdnsAnnouncer.java
@@ -0,0 +1,99 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.server.connectivity.mdns;
+
+import android.annotation.NonNull;
+import android.annotation.Nullable;
+import android.os.Looper;
+
+import com.android.internal.annotations.VisibleForTesting;
+
+import java.net.SocketAddress;
+import java.util.Collections;
+import java.util.List;
+import java.util.function.Supplier;
+
+/**
+ * Sends mDns announcements when a service registration changes and at regular intervals.
+ *
+ * This allows maintaining other hosts' caches up-to-date. See RFC6762 8.3.
+ */
+public class MdnsAnnouncer extends MdnsPacketRepeater<MdnsAnnouncer.AnnouncementInfo> {
+    private static final long ANNOUNCEMENT_INITIAL_DELAY_MS = 1000L;
+    @VisibleForTesting
+    static final int ANNOUNCEMENT_COUNT = 8;
+
+    @NonNull
+    private final String mLogTag;
+
+    static class AnnouncementInfo implements MdnsPacketRepeater.Request {
+        @NonNull
+        private final MdnsPacket mPacket;
+        @NonNull
+        private final Supplier<Iterable<SocketAddress>> mDestinationsSupplier;
+
+        AnnouncementInfo(List<MdnsRecord> announcedRecords, List<MdnsRecord> additionalRecords,
+                Supplier<Iterable<SocketAddress>> destinationsSupplier) {
+            // Records to announce (as answers)
+            // Records to place in the "Additional records", with NSEC negative responses
+            // to mark records that have been verified unique
+            final int flags = 0x8400; // Response, authoritative (rfc6762 18.4)
+            mPacket = new MdnsPacket(flags,
+                    Collections.emptyList() /* questions */,
+                    announcedRecords,
+                    Collections.emptyList() /* authorityRecords */,
+                    additionalRecords);
+            mDestinationsSupplier = destinationsSupplier;
+        }
+
+        @Override
+        public MdnsPacket getPacket(int index) {
+            return mPacket;
+        }
+
+        @Override
+        public Iterable<SocketAddress> getDestinations(int index) {
+            return mDestinationsSupplier.get();
+        }
+
+        @Override
+        public long getDelayMs(int nextIndex) {
+            // Delay is doubled for each announcement
+            return ANNOUNCEMENT_INITIAL_DELAY_MS << (nextIndex - 1);
+        }
+
+        @Override
+        public int getNumSends() {
+            return ANNOUNCEMENT_COUNT;
+        }
+    }
+
+    public MdnsAnnouncer(@NonNull String interfaceTag, @NonNull Looper looper,
+            @NonNull MdnsReplySender replySender,
+            @Nullable PacketRepeaterCallback<AnnouncementInfo> cb) {
+        super(looper, replySender, cb);
+        mLogTag = MdnsAnnouncer.class.getSimpleName() + "/" + interfaceTag;
+    }
+
+    @Override
+    protected String getTag() {
+        return mLogTag;
+    }
+
+    // TODO: Notify MdnsRecordRepository that the records were announced for that service ID,
+    // so it can update the last advertised timestamp of the associated records.
+}
diff --git a/service/mdns/com/android/server/connectivity/mdns/MdnsNsecRecord.java b/service/mdns/com/android/server/connectivity/mdns/MdnsNsecRecord.java
index 57c3c03..06fdd5e 100644
--- a/service/mdns/com/android/server/connectivity/mdns/MdnsNsecRecord.java
+++ b/service/mdns/com/android/server/connectivity/mdns/MdnsNsecRecord.java
@@ -96,8 +96,9 @@
 
     @Override
     protected void writeData(MdnsPacketWriter writer) throws IOException {
-        // No compression as per RFC3845 2.1.1
-        writer.writeLabelsNoCompression(mNextDomain);
+        // Standard NSEC records should use no compression for the Next Domain Name field as per
+        // RFC3845 2.1.1, but for mDNS RFC6762 18.14 specifies that compression should be used.
+        writer.writeLabels(mNextDomain);
 
         // type bitmaps: RFC3845 2.1.2
         int typesBlockStart = 0;
diff --git a/service/mdns/com/android/server/connectivity/mdns/MdnsPacketWriter.java b/service/mdns/com/android/server/connectivity/mdns/MdnsPacketWriter.java
index 1f22fa9..c0f9b8b 100644
--- a/service/mdns/com/android/server/connectivity/mdns/MdnsPacketWriter.java
+++ b/service/mdns/com/android/server/connectivity/mdns/MdnsPacketWriter.java
@@ -192,22 +192,31 @@
             }
         }
 
+        final int[] offsets;
         if (suffixLength > 0) {
-            for (int i = 0; i < (labels.length - suffixLength); ++i) {
-                writeString(labels[i]);
-            }
+            offsets = writePartialLabelsNoCompression(labels, labels.length - suffixLength);
             writePointer(suffixPointer);
         } else {
-            int[] offsets = writeLabelsNoCompression(labels);
-
-            // Add entries to the label dictionary for each suffix of the label list, including
-            // the whole list itself.
-            for (int i = 0, len = labels.length; i < labels.length; ++i, --len) {
-                String[] value = new String[len];
-                System.arraycopy(labels, i, value, 0, len);
-                labelDictionary.put(offsets[i], value);
-            }
+            offsets = writeLabelsNoCompression(labels);
         }
+
+        // Add entries to the label dictionary for each suffix of the label list, including
+        // the whole list itself.
+        // Do not replace the last suffixLength suffixes that already have dictionary entries.
+        for (int i = 0, len = labels.length; i < labels.length - suffixLength; ++i, --len) {
+            String[] value = new String[len];
+            System.arraycopy(labels, i, value, 0, len);
+            labelDictionary.put(offsets[i], value);
+        }
+    }
+
+    private int[] writePartialLabelsNoCompression(String[] labels, int count) throws IOException {
+        int[] offsets = new int[count];
+        for (int i = 0; i < count; ++i) {
+            offsets[i] = getWritePosition();
+            writeString(labels[i]);
+        }
+        return offsets;
     }
 
     /**
@@ -216,11 +225,7 @@
      * @return The offsets where each label was written to.
      */
     public int[] writeLabelsNoCompression(String[] labels) throws IOException {
-        int[] offsets = new int[labels.length];
-        for (int i = 0; i < labels.length; ++i) {
-            offsets[i] = getWritePosition();
-            writeString(labels[i]);
-        }
+        final int[] offsets = writePartialLabelsNoCompression(labels, labels.length);
         writeUInt8(0); // NUL terminator
         return offsets;
     }
@@ -246,4 +251,4 @@
     public DatagramPacket getPacket(SocketAddress destAddress) throws IOException {
         return new DatagramPacket(data, pos, destAddress);
     }
-}
\ No newline at end of file
+}
diff --git a/service/mdns/com/android/server/connectivity/mdns/MdnsProber.java b/service/mdns/com/android/server/connectivity/mdns/MdnsProber.java
new file mode 100644
index 0000000..db7049e
--- /dev/null
+++ b/service/mdns/com/android/server/connectivity/mdns/MdnsProber.java
@@ -0,0 +1,156 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.server.connectivity.mdns;
+
+import android.annotation.NonNull;
+import android.os.Looper;
+
+import com.android.internal.annotations.VisibleForTesting;
+import com.android.net.module.util.CollectionUtils;
+
+import java.net.SocketAddress;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+import java.util.function.Supplier;
+
+/**
+ * Sends mDns probe requests to verify service records are unique on the network.
+ *
+ * TODO: implement receiving replies and handling conflicts.
+ */
+public class MdnsProber extends MdnsPacketRepeater<MdnsProber.ProbingInfo> {
+    @NonNull
+    private final String mLogTag;
+
+    public MdnsProber(@NonNull String interfaceTag, @NonNull Looper looper,
+            @NonNull MdnsReplySender replySender,
+            @NonNull PacketRepeaterCallback<ProbingInfo> cb) {
+        // 3 packets as per https://datatracker.ietf.org/doc/html/rfc6762#section-8.1
+        super(looper, replySender, cb);
+        mLogTag = MdnsProber.class.getSimpleName() + "/" + interfaceTag;
+    }
+
+    static class ProbingInfo implements Request {
+
+        private final int mServiceId;
+        @NonNull
+        private final MdnsPacket mPacket;
+        @NonNull
+        private final Supplier<Iterable<SocketAddress>> mDestinationsSupplier;
+
+        /**
+         * Create a new ProbingInfo
+         * @param serviceId Service to probe for.
+         * @param probeRecords Records to be probed for uniqueness.
+         * @param destinationsSupplier Supplier for the probe destinations. Will be called on the
+         *                             probe handler thread for each probe.
+         */
+        ProbingInfo(int serviceId, @NonNull List<MdnsRecord> probeRecords,
+                @NonNull Supplier<Iterable<SocketAddress>> destinationsSupplier) {
+            mServiceId = serviceId;
+            mPacket = makePacket(probeRecords);
+            mDestinationsSupplier = destinationsSupplier;
+        }
+
+        public int getServiceId() {
+            return mServiceId;
+        }
+
+        @NonNull
+        @Override
+        public MdnsPacket getPacket(int index) {
+            return mPacket;
+        }
+
+        @NonNull
+        @Override
+        public Iterable<SocketAddress> getDestinations(int index) {
+            return mDestinationsSupplier.get();
+        }
+
+        @Override
+        public long getDelayMs(int nextIndex) {
+            // As per https://datatracker.ietf.org/doc/html/rfc6762#section-8.1
+            return 250L;
+        }
+
+        @Override
+        public int getNumSends() {
+            // 3 packets as per https://datatracker.ietf.org/doc/html/rfc6762#section-8.1
+            return 3;
+        }
+
+        private static MdnsPacket makePacket(@NonNull List<MdnsRecord> records) {
+            final ArrayList<MdnsRecord> questions = new ArrayList<>(records.size());
+            for (final MdnsRecord record : records) {
+                if (containsName(questions, record.getName())) {
+                    // Already added this name
+                    continue;
+                }
+
+                // TODO: legacy Android mDNS used to send the first probe (only) as unicast, even
+                //  though https://datatracker.ietf.org/doc/html/rfc6762#section-8.1 says they
+                // SHOULD all be. rfc6762 15.1 says that if the port is shared with another
+                // responder unicast questions should not be used, and the legacy mdnsresponder may
+                // be running, so not using unicast at all may be better. Consider using legacy
+                // behavior if this causes problems.
+                questions.add(new MdnsAnyRecord(record.getName(), false /* unicast */));
+            }
+
+            return new MdnsPacket(
+                    MdnsConstants.FLAGS_QUERY,
+                    questions,
+                    Collections.emptyList() /* answers */,
+                    records /* authorityRecords */,
+                    Collections.emptyList() /* additionalRecords */);
+        }
+
+        /**
+         * Return whether the specified name is present in the list of records.
+         */
+        private static boolean containsName(@NonNull List<MdnsRecord> records,
+                @NonNull String[] name) {
+            return CollectionUtils.any(records, r -> Arrays.equals(name, r.getName()));
+        }
+    }
+
+    @NonNull
+    @Override
+    protected String getTag() {
+        return mLogTag;
+    }
+
+    @VisibleForTesting
+    protected long getInitialDelay() {
+        // First wait for a random time in 0-250ms
+        // as per https://datatracker.ietf.org/doc/html/rfc6762#section-8.1
+        return (long) (Math.random() * 250);
+    }
+
+    /**
+     * Start sending packets for probing.
+     */
+    public void startProbing(@NonNull ProbingInfo info) {
+        startProbing(info, getInitialDelay());
+    }
+
+    private void startProbing(@NonNull ProbingInfo info, long delay) {
+        startSending(info.getServiceId(), info, delay);
+    }
+}
diff --git a/service/mdns/com/android/server/connectivity/mdns/MdnsRecord.java b/service/mdns/com/android/server/connectivity/mdns/MdnsRecord.java
index 10b8825..00871ea 100644
--- a/service/mdns/com/android/server/connectivity/mdns/MdnsRecord.java
+++ b/service/mdns/com/android/server/connectivity/mdns/MdnsRecord.java
@@ -201,6 +201,17 @@
     protected abstract void readData(MdnsPacketReader reader) throws IOException;
 
     /**
+     * Write the first fields of the record, which are common fields for questions and answers.
+     *
+     * @param writer The writer to use.
+     */
+    public final void writeHeaderFields(MdnsPacketWriter writer) throws IOException {
+        writer.writeLabels(name);
+        writer.writeUInt16(type);
+        writer.writeUInt16(cls);
+    }
+
+    /**
      * Writes the record to a packet.
      *
      * @param writer The writer to use.
@@ -208,9 +219,7 @@
      */
     @VisibleForTesting
     public final void write(MdnsPacketWriter writer, long now) throws IOException {
-        writer.writeLabels(name);
-        writer.writeUInt16(type);
-        writer.writeUInt16(cls);
+        writeHeaderFields(writer);
 
         writer.writeUInt32(MILLISECONDS.toSeconds(getRemainingTTL(now)));
 
diff --git a/service/mdns/com/android/server/connectivity/mdns/MdnsReplySender.java b/service/mdns/com/android/server/connectivity/mdns/MdnsReplySender.java
index 2acd789..1fdbc5c 100644
--- a/service/mdns/com/android/server/connectivity/mdns/MdnsReplySender.java
+++ b/service/mdns/com/android/server/connectivity/mdns/MdnsReplySender.java
@@ -67,7 +67,8 @@
         writer.writeUInt16(packet.additionalRecords.size()); // additional records count
 
         for (MdnsRecord record : packet.questions) {
-            record.write(writer, 0L);
+            // Questions do not have TTL or data
+            record.writeHeaderFields(writer);
         }
         for (MdnsRecord record : packet.answers) {
             record.write(writer, 0L);
diff --git a/service/native/include/TrafficController.h b/service/native/include/TrafficController.h
index b44d795..cb6c836 100644
--- a/service/native/include/TrafficController.h
+++ b/service/native/include/TrafficController.h
@@ -21,7 +21,7 @@
 
 #include "android-base/thread_annotations.h"
 #include "bpf/BpfMap.h"
-#include "bpf_shared.h"
+#include "netd.h"
 #include "netdutils/DumpWriter.h"
 #include "netdutils/NetlinkListener.h"
 #include "netdutils/StatusOr.h"
diff --git a/service/src/com/android/server/BpfNetMaps.java b/service/src/com/android/server/BpfNetMaps.java
index b8a8fb4..bce9f53 100644
--- a/service/src/com/android/server/BpfNetMaps.java
+++ b/service/src/com/android/server/BpfNetMaps.java
@@ -139,7 +139,7 @@
     @VisibleForTesting public static final long OEM_DENY_1_MATCH = (1 << 9);
     @VisibleForTesting public static final long OEM_DENY_2_MATCH = (1 << 10);
     @VisibleForTesting public static final long OEM_DENY_3_MATCH = (1 << 11);
-    // LINT.ThenChange(packages/modules/Connectivity/bpf_progs/bpf_shared.h)
+    // LINT.ThenChange(packages/modules/Connectivity/bpf_progs/netd.h)
 
     private static final List<Pair<Integer, String>> PERMISSION_LIST = Arrays.asList(
             Pair.create(PERMISSION_INTERNET, "PERMISSION_INTERNET"),
diff --git a/service/src/com/android/server/ConnectivityService.java b/service/src/com/android/server/ConnectivityService.java
index 80ec8ae..d19afa4 100755
--- a/service/src/com/android/server/ConnectivityService.java
+++ b/service/src/com/android/server/ConnectivityService.java
@@ -279,12 +279,14 @@
 import com.android.server.connectivity.NetworkNotificationManager;
 import com.android.server.connectivity.NetworkNotificationManager.NotificationType;
 import com.android.server.connectivity.NetworkOffer;
+import com.android.server.connectivity.NetworkPreferenceList;
 import com.android.server.connectivity.NetworkRanker;
 import com.android.server.connectivity.PermissionMonitor;
-import com.android.server.connectivity.ProfileNetworkPreferenceList;
+import com.android.server.connectivity.ProfileNetworkPreferenceInfo;
 import com.android.server.connectivity.ProxyTracker;
 import com.android.server.connectivity.QosCallbackTracker;
 import com.android.server.connectivity.UidRangeUtils;
+import com.android.server.connectivity.wear.CompanionDeviceManagerProxyService;
 
 import libcore.io.IoUtils;
 
@@ -434,6 +436,7 @@
      */
     @GuardedBy("mTNSLock")
     private TestNetworkService mTNS;
+    private final CompanionDeviceManagerProxyService mCdmps;
 
     private final Object mTNSLock = new Object();
 
@@ -1585,6 +1588,12 @@
 
         mIngressRateLimit = ConnectivitySettingsManager.getIngressRateLimitInBytesPerSecond(
                 mContext);
+
+        if (SdkLevel.isAtLeastT()) {
+            mCdmps = new CompanionDeviceManagerProxyService(context);
+        } else {
+            mCdmps = null;
+        }
     }
 
     /**
@@ -3414,7 +3423,7 @@
         if (!mProfileNetworkPreferences.isEmpty()) {
             pw.println("Profile preferences:");
             pw.increaseIndent();
-            pw.println(mProfileNetworkPreferences.preferences);
+            pw.println(mProfileNetworkPreferences);
             pw.decreaseIndent();
         }
         if (!mOemNetworkPreferences.isEmpty()) {
@@ -5499,10 +5508,8 @@
                     break;
                 }
                 case EVENT_SET_PROFILE_NETWORK_PREFERENCE: {
-                    final Pair<List<ProfileNetworkPreferenceList.Preference>,
-                            IOnCompleteListener> arg =
-                            (Pair<List<ProfileNetworkPreferenceList.Preference>,
-                                    IOnCompleteListener>) msg.obj;
+                    final Pair<List<ProfileNetworkPreferenceInfo>, IOnCompleteListener> arg =
+                            (Pair<List<ProfileNetworkPreferenceInfo>, IOnCompleteListener>) msg.obj;
                     handleSetProfileNetworkPreference(arg.first, arg.second);
                     break;
                 }
@@ -6143,7 +6150,7 @@
     private void onUserRemoved(@NonNull final UserHandle user) {
         // If there was a network preference for this user, remove it.
         handleSetProfileNetworkPreference(
-                List.of(new ProfileNetworkPreferenceList.Preference(user, null, true)),
+                List.of(new ProfileNetworkPreferenceInfo(user, null, true)),
                 null /* listener */);
         if (mOemNetworkPreferences.getNetworkPreferences().size() > 0) {
             handleSetOemNetworkPreference(mOemNetworkPreferences, null);
@@ -7113,8 +7120,8 @@
     // Current per-profile network preferences. This object follows the same threading rules as
     // the OEM network preferences above.
     @NonNull
-    private ProfileNetworkPreferenceList mProfileNetworkPreferences =
-            new ProfileNetworkPreferenceList();
+    private NetworkPreferenceList<UserHandle, ProfileNetworkPreferenceInfo>
+            mProfileNetworkPreferences = new NetworkPreferenceList<>();
 
     // A set of UIDs that should use mobile data preferentially if available. This object follows
     // the same threading rules as the OEM network preferences above.
@@ -10817,7 +10824,7 @@
                     + "or the device owner must be set. ");
         }
 
-        final List<ProfileNetworkPreferenceList.Preference> preferenceList = new ArrayList<>();
+        final List<ProfileNetworkPreferenceInfo> preferenceList = new ArrayList<>();
         boolean hasDefaultPreference = false;
         for (final ProfileNetworkPreference preference : preferences) {
             final NetworkCapabilities nc;
@@ -10864,8 +10871,7 @@
                     throw new IllegalArgumentException(
                             "Invalid preference in setProfileNetworkPreferences");
             }
-            preferenceList.add(new ProfileNetworkPreferenceList.Preference(
-                    profile, nc, allowFallback));
+            preferenceList.add(new ProfileNetworkPreferenceInfo(profile, nc, allowFallback));
             if (hasDefaultPreference && preferenceList.size() > 1) {
                 throw new IllegalArgumentException(
                         "Default profile preference should not be set along with other preference");
@@ -10914,9 +10920,9 @@
     }
 
     private ArraySet<NetworkRequestInfo> createNrisFromProfileNetworkPreferences(
-            @NonNull final ProfileNetworkPreferenceList prefs) {
+            @NonNull final NetworkPreferenceList<UserHandle, ProfileNetworkPreferenceInfo> prefs) {
         final ArraySet<NetworkRequestInfo> result = new ArraySet<>();
-        for (final ProfileNetworkPreferenceList.Preference pref : prefs.preferences) {
+        for (final ProfileNetworkPreferenceInfo pref : prefs) {
             // The NRI for a user should contain the request for capabilities.
             // If fallback to default network is needed then NRI should include
             // the request for the default network. Create an image of it to
@@ -10946,12 +10952,12 @@
      *
      */
     private boolean isRangeAlreadyInPreferenceList(
-            @NonNull List<ProfileNetworkPreferenceList.Preference> preferenceList,
+            @NonNull List<ProfileNetworkPreferenceInfo> preferenceList,
             @NonNull Set<UidRange> uidRangeSet) {
         if (uidRangeSet.size() == 0 || preferenceList.size() == 0) {
             return false;
         }
-        for (ProfileNetworkPreferenceList.Preference pref : preferenceList) {
+        for (ProfileNetworkPreferenceInfo pref : preferenceList) {
             if (UidRangeUtils.doesRangeSetOverlap(
                     UidRange.fromIntRanges(pref.capabilities.getUids()), uidRangeSet)) {
                 return true;
@@ -10961,7 +10967,7 @@
     }
 
     private void handleSetProfileNetworkPreference(
-            @NonNull final List<ProfileNetworkPreferenceList.Preference> preferenceList,
+            @NonNull final List<ProfileNetworkPreferenceInfo> preferenceList,
             @Nullable final IOnCompleteListener listener) {
         /*
          * handleSetProfileNetworkPreference is always called for single user.
@@ -10970,9 +10976,8 @@
          * Clear all the existing preferences for the user before applying new preferences.
          *
          */
-        mProfileNetworkPreferences = mProfileNetworkPreferences.withoutUser(
-                preferenceList.get(0).user);
-        for (final ProfileNetworkPreferenceList.Preference preference : preferenceList) {
+        mProfileNetworkPreferences = mProfileNetworkPreferences.minus(preferenceList.get(0).user);
+        for (final ProfileNetworkPreferenceInfo preference : preferenceList) {
             mProfileNetworkPreferences = mProfileNetworkPreferences.plus(preference);
         }
 
@@ -11495,4 +11500,10 @@
 
         mBpfNetMaps.replaceUidChain(chain, uids);
     }
+
+    @Override
+    public IBinder getCompanionDeviceManagerProxyService() {
+        enforceNetworkStackPermission(mContext);
+        return mCdmps;
+    }
 }
diff --git a/service/src/com/android/server/connectivity/NetworkPreferenceList.java b/service/src/com/android/server/connectivity/NetworkPreferenceList.java
new file mode 100644
index 0000000..fa6d157
--- /dev/null
+++ b/service/src/com/android/server/connectivity/NetworkPreferenceList.java
@@ -0,0 +1,100 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.server.connectivity;
+
+import android.annotation.NonNull;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.List;
+
+/**
+ * A generic data class containing network preferences.
+ * @param <K> The type of key in T
+ * @param <T> The type of preference stored in this preference list
+ */
+public class NetworkPreferenceList<K, T extends NetworkPreferenceList.NetworkPreference<K>>
+        implements Iterable<T> {
+    /**
+     * A network preference
+     * @param <K> the type of key by which this preference is indexed. A NetworkPreferenceList
+     *            can have multiple preferences associated with this key, but has methods to
+     *            work on the keys.
+     */
+    public interface NetworkPreference<K> {
+        /**
+         * Whether this preference codes for cancelling the preference for this key
+         *
+         * A preference that codes for cancelling is removed from the list of preferences, since
+         * it means the behavior should be the same as if there was no preference for this key.
+         */
+        boolean isCancel();
+        /** The key */
+        K getKey();
+    }
+
+    @NonNull private final List<T> mPreferences;
+
+    public NetworkPreferenceList() {
+        mPreferences = Collections.EMPTY_LIST;
+    }
+
+    private NetworkPreferenceList(@NonNull final List<T> list) {
+        mPreferences = Collections.unmodifiableList(list);
+    }
+
+    /**
+     * Returns a new object consisting of this object plus the passed preference.
+     *
+     * If the passed preference is a cancel preference (see {@link NetworkPreference#isCancel()}
+     * then it is not added.
+     */
+    public NetworkPreferenceList<K, T> plus(@NonNull final T pref) {
+        final ArrayList<T> newPrefs = new ArrayList<>(mPreferences);
+        if (!pref.isCancel()) {
+            newPrefs.add(pref);
+        }
+        return new NetworkPreferenceList<>(newPrefs);
+    }
+
+    /**
+     * Remove all preferences corresponding to a key.
+     */
+    public NetworkPreferenceList<K, T> minus(@NonNull final K key) {
+        final ArrayList<T> newPrefs = new ArrayList<>();
+        for (final T existingPref : mPreferences) {
+            if (!existingPref.getKey().equals(key)) {
+                newPrefs.add(existingPref);
+            }
+        }
+        return new NetworkPreferenceList<>(newPrefs);
+    }
+
+    public boolean isEmpty() {
+        return mPreferences.isEmpty();
+    }
+
+    @Override
+    public Iterator<T> iterator() {
+        return mPreferences.iterator();
+    }
+
+    @Override public String toString() {
+        return "NetworkPreferenceList : " + mPreferences;
+    }
+}
diff --git a/service/src/com/android/server/connectivity/ProfileNetworkPreferenceInfo.java b/service/src/com/android/server/connectivity/ProfileNetworkPreferenceInfo.java
new file mode 100644
index 0000000..10f3886
--- /dev/null
+++ b/service/src/com/android/server/connectivity/ProfileNetworkPreferenceInfo.java
@@ -0,0 +1,62 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.server.connectivity;
+
+import android.annotation.NonNull;
+import android.annotation.Nullable;
+import android.net.NetworkCapabilities;
+import android.os.UserHandle;
+
+/**
+ * A single profile preference, as it applies to a given user profile.
+ */
+public class ProfileNetworkPreferenceInfo
+        implements NetworkPreferenceList.NetworkPreference<UserHandle> {
+    @NonNull
+    public final UserHandle user;
+    // Capabilities are only null when sending an object to remove the setting for a user
+    @Nullable
+    public final NetworkCapabilities capabilities;
+    public final boolean allowFallback;
+
+    public ProfileNetworkPreferenceInfo(@NonNull final UserHandle user,
+            @Nullable final NetworkCapabilities capabilities,
+            final boolean allowFallback) {
+        this.user = user;
+        this.capabilities = null == capabilities ? null : new NetworkCapabilities(capabilities);
+        this.allowFallback = allowFallback;
+    }
+
+    @Override
+    public boolean isCancel() {
+        return null == capabilities;
+    }
+
+    @Override
+    @NonNull
+    public UserHandle getKey() {
+        return user;
+    }
+
+    /** toString */
+    public String toString() {
+        return "[ProfileNetworkPreference user=" + user
+                + " caps=" + capabilities
+                + " allowFallback=" + allowFallback
+                + "]";
+    }
+}
diff --git a/service/src/com/android/server/connectivity/ProfileNetworkPreferenceList.java b/service/src/com/android/server/connectivity/ProfileNetworkPreferenceList.java
deleted file mode 100644
index 5bafef9..0000000
--- a/service/src/com/android/server/connectivity/ProfileNetworkPreferenceList.java
+++ /dev/null
@@ -1,103 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.server.connectivity;
-
-import android.annotation.NonNull;
-import android.annotation.Nullable;
-import android.net.NetworkCapabilities;
-import android.os.UserHandle;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-
-/**
- * A data class containing all the per-profile network preferences.
- *
- * A given profile can only have one preference.
- */
-public class ProfileNetworkPreferenceList {
-    /**
-     * A single preference, as it applies to a given user profile.
-     */
-    public static class Preference {
-        @NonNull public final UserHandle user;
-        // Capabilities are only null when sending an object to remove the setting for a user
-        @Nullable public final NetworkCapabilities capabilities;
-        public final boolean allowFallback;
-
-        public Preference(@NonNull final UserHandle user,
-                @Nullable final NetworkCapabilities capabilities,
-                final boolean allowFallback) {
-            this.user = user;
-            this.capabilities = null == capabilities ? null : new NetworkCapabilities(capabilities);
-            this.allowFallback = allowFallback;
-        }
-
-        /** toString */
-        public String toString() {
-            return "[ProfileNetworkPreference user=" + user
-                    + " caps=" + capabilities
-                    + " allowFallback=" + allowFallback
-                    + "]";
-        }
-    }
-
-    @NonNull public final List<Preference> preferences;
-
-    public ProfileNetworkPreferenceList() {
-        preferences = Collections.EMPTY_LIST;
-    }
-
-    private ProfileNetworkPreferenceList(@NonNull final List<Preference> list) {
-        preferences = Collections.unmodifiableList(list);
-    }
-
-    /**
-     * Returns a new object consisting of this object plus the passed preference.
-     *
-     * It is not expected that unwanted preference already exists for the same user.
-     * All preferences for the user that were previously configured should be cleared before
-     * adding a new preference.
-     * Passing a Preference object containing a null capabilities object is equivalent
-     * to removing the preference for this user.
-     */
-    public ProfileNetworkPreferenceList plus(@NonNull final Preference pref) {
-        final ArrayList<Preference> newPrefs = new ArrayList<>(preferences);
-        if (null != pref.capabilities) {
-            newPrefs.add(pref);
-        }
-        return new ProfileNetworkPreferenceList(newPrefs);
-    }
-
-    /**
-     * Remove all preferences corresponding to a user.
-     */
-    public ProfileNetworkPreferenceList withoutUser(UserHandle user) {
-        final ArrayList<Preference> newPrefs = new ArrayList<>();
-        for (final Preference existingPref : preferences) {
-            if (!existingPref.user.equals(user)) {
-                newPrefs.add(existingPref);
-            }
-        }
-        return new ProfileNetworkPreferenceList(newPrefs);
-    }
-
-    public boolean isEmpty() {
-        return preferences.isEmpty();
-    }
-}
diff --git a/service/src/com/android/server/connectivity/wear/CompanionDeviceManagerProxyService.java b/service/src/com/android/server/connectivity/wear/CompanionDeviceManagerProxyService.java
new file mode 100644
index 0000000..d3e3843
--- /dev/null
+++ b/service/src/com/android/server/connectivity/wear/CompanionDeviceManagerProxyService.java
@@ -0,0 +1,60 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.server.connectivity.wear;
+
+import android.annotation.SuppressLint;
+import android.companion.AssociationInfo;
+import android.companion.CompanionDeviceManager;
+import android.content.Context;
+import android.net.wear.ICompanionDeviceManagerProxy;
+import android.os.Binder;
+import android.os.Build;
+
+import androidx.annotation.RequiresApi;
+
+import com.android.net.module.util.PermissionUtils;
+
+import java.util.List;
+
+/**
+ * A proxy for {@link CompanionDeviceManager}, for use by Tethering with NetworkStack permissions.
+ */
+public class CompanionDeviceManagerProxyService extends ICompanionDeviceManagerProxy.Stub {
+    private final Context mContext;
+
+    @RequiresApi(Build.VERSION_CODES.TIRAMISU)
+    public CompanionDeviceManagerProxyService(Context context) {
+        mContext = context;
+    }
+
+    // TODO(b/193460475): Android Lint handles change from SystemApi to public incorrectly.
+    // CompanionDeviceManager#getAllAssociations() is made public in U,
+    // but existed in T as an identical SystemApi.
+    @SuppressLint("NewApi")
+    @Override
+    public List<AssociationInfo> getAllAssociations() {
+        PermissionUtils.enforceNetworkStackPermission(mContext);
+        final long token = Binder.clearCallingIdentity();
+        try {
+            final CompanionDeviceManager cdm = mContext.getSystemService(
+                    CompanionDeviceManager.class);
+            return cdm.getAllAssociations();
+        } finally {
+            Binder.restoreCallingIdentity(token);
+        }
+    }
+}
diff --git a/tests/common/java/android/net/VpnTransportInfoTest.java b/tests/common/java/android/net/VpnTransportInfoTest.java
index 161f9ee..2d01df7 100644
--- a/tests/common/java/android/net/VpnTransportInfoTest.java
+++ b/tests/common/java/android/net/VpnTransportInfoTest.java
@@ -53,7 +53,7 @@
         assertParcelingIsLossless(v);
 
         final VpnTransportInfo v2 =
-                new VpnTransportInfo(VpnManager.TYPE_VPN_PLATFORM, "12345", true);
+                new VpnTransportInfo(VpnManager.TYPE_VPN_PLATFORM, "12345", true, true);
         assertParcelingIsLossless(v2);
     }
 
@@ -66,8 +66,10 @@
         final VpnTransportInfo v13 = new VpnTransportInfo(VpnManager.TYPE_VPN_PLATFORM, session1);
         final VpnTransportInfo v14 = new VpnTransportInfo(VpnManager.TYPE_VPN_LEGACY, session1);
         final VpnTransportInfo v15 = new VpnTransportInfo(VpnManager.TYPE_VPN_OEM, session1);
-        final VpnTransportInfo v16 = new VpnTransportInfo(VpnManager.TYPE_VPN_OEM, session1, true);
-        final VpnTransportInfo v17 = new VpnTransportInfo(VpnManager.TYPE_VPN_OEM, session1, true);
+        final VpnTransportInfo v16 = new VpnTransportInfo(
+                VpnManager.TYPE_VPN_OEM, session1, true, true);
+        final VpnTransportInfo v17 = new VpnTransportInfo(
+                VpnManager.TYPE_VPN_OEM, session1, true, true);
         final VpnTransportInfo v21 = new VpnTransportInfo(VpnManager.TYPE_VPN_LEGACY, session2);
 
         final VpnTransportInfo v31 = v11.makeCopy(REDACT_FOR_NETWORK_SETTINGS);
@@ -92,19 +94,30 @@
 
     @DevSdkIgnoreRule.IgnoreAfter(Build.VERSION_CODES.TIRAMISU)
     @Test
-    public void testGetBypassable_beforeU() {
+    public void testIsBypassable_beforeU() {
         final VpnTransportInfo v = new VpnTransportInfo(VpnManager.TYPE_VPN_PLATFORM, "12345");
-        assertThrows(UnsupportedOperationException.class, () -> v.getBypassable());
+        assertThrows(UnsupportedOperationException.class, () -> v.isBypassable());
     }
 
     @DevSdkIgnoreRule.IgnoreUpTo(Build.VERSION_CODES.TIRAMISU)
     @Test
-    public void testGetBypassable_afterU() {
+    public void testIsBypassable_afterU() {
         final VpnTransportInfo v = new VpnTransportInfo(VpnManager.TYPE_VPN_PLATFORM, "12345");
-        assertFalse(v.getBypassable());
+        assertFalse(v.isBypassable());
 
         final VpnTransportInfo v2 =
-                new VpnTransportInfo(VpnManager.TYPE_VPN_PLATFORM, "12345", true);
-        assertTrue(v2.getBypassable());
+                new VpnTransportInfo(VpnManager.TYPE_VPN_PLATFORM, "12345", true, false);
+        assertTrue(v2.isBypassable());
+    }
+
+    @DevSdkIgnoreRule.IgnoreUpTo(Build.VERSION_CODES.TIRAMISU)
+    @Test
+    public void testShouldLongLivedTcpExcluded() {
+        final VpnTransportInfo v = new VpnTransportInfo(VpnManager.TYPE_VPN_PLATFORM, "12345");
+        assertFalse(v.areLongLivedTcpConnectionsExpensive());
+
+        final VpnTransportInfo v2 = new VpnTransportInfo(
+                VpnManager.TYPE_VPN_PLATFORM, "12345", true, true);
+        assertTrue(v2.areLongLivedTcpConnectionsExpensive());
     }
 }
diff --git a/tests/cts/net/src/android/net/cts/ConnectivityManagerTest.java b/tests/cts/net/src/android/net/cts/ConnectivityManagerTest.java
index 96acac3..7624f9c 100644
--- a/tests/cts/net/src/android/net/cts/ConnectivityManagerTest.java
+++ b/tests/cts/net/src/android/net/cts/ConnectivityManagerTest.java
@@ -2408,6 +2408,15 @@
     }
 
     private void doTestBlockedStatusCallback() throws Exception {
+        // The test will need a stable active network that is persistent during the test.
+        // Try to connect to a wifi network and wait for it becomes the default network before
+        // starting the test to prevent from sudden active network change caused by previous
+        // executed tests.
+        if (mPackageManager.hasSystemFeature(FEATURE_WIFI)) {
+            final Network expectedDefaultNetwork = mCtsNetUtils.ensureWifiConnected();
+            mCtsNetUtils.expectNetworkIsSystemDefault(expectedDefaultNetwork);
+        }
+
         final DetailedBlockedStatusCallback myUidCallback = new DetailedBlockedStatusCallback();
         final DetailedBlockedStatusCallback otherUidCallback = new DetailedBlockedStatusCallback();
 
diff --git a/tests/cts/net/util/java/android/net/cts/util/CtsNetUtils.java b/tests/cts/net/util/java/android/net/cts/util/CtsNetUtils.java
index 3f2ff9d..df3a4aa 100644
--- a/tests/cts/net/util/java/android/net/cts/util/CtsNetUtils.java
+++ b/tests/cts/net/util/java/android/net/cts/util/CtsNetUtils.java
@@ -170,7 +170,7 @@
         }
     }
 
-    private Network expectNetworkIsSystemDefault(Network network)
+    public Network expectNetworkIsSystemDefault(Network network)
             throws Exception {
         final CompletableFuture<Network> future = new CompletableFuture();
         final NetworkCallback cb = new NetworkCallback() {
diff --git a/tests/mts/bpf_existence_test.cpp b/tests/mts/bpf_existence_test.cpp
index aa5654a..c294e7b 100644
--- a/tests/mts/bpf_existence_test.cpp
+++ b/tests/mts/bpf_existence_test.cpp
@@ -20,8 +20,6 @@
 #include <set>
 #include <string>
 
-#include <android/api-level.h>
-#include <android-base/properties.h>
 #include <android-modules-utils/sdk_level.h>
 #include <bpf/BpfUtils.h>
 
@@ -45,7 +43,7 @@
 class BpfExistenceTest : public ::testing::Test {
 };
 
-// Part of Android R platform, but mainlined in S
+// Part of Android R platform (for 4.9+), but mainlined in S
 static const set<string> PLATFORM_ONLY_IN_R = {
     PLATFORM "map_offload_tether_ingress_map",
     PLATFORM "map_offload_tether_limit_map",
@@ -128,17 +126,18 @@
     SHARED "prog_dscpPolicy_schedcls_set_dscp_ether",
 };
 
-void addAll(set<string>* a, const set<string>& b) {
-    a->insert(b.begin(), b.end());
+static void addAll(set<string>& a, const set<string>& b) {
+    a.insert(b.begin(), b.end());
 }
 
-#define DO_EXPECT(B, V) do { \
-    if (B) addAll(expected, (V)); else addAll(unexpected, (V)); \
-} while (0)
+#define DO_EXPECT(B, V) addAll((B) ? mustExist : mustNotExist, (V))
 
-void getFileLists(set<string>* expected, set<string>* unexpected) {
-    unexpected->clear();
-    expected->clear();
+TEST_F(BpfExistenceTest, TestPrograms) {
+    // Only unconfined root is guaranteed to be able to access everything in /sys/fs/bpf.
+    ASSERT_EQ(0, getuid()) << "This test must run as root.";
+
+    set<string> mustExist;
+    set<string> mustNotExist;
 
     // We do not actually check the platform P/Q (netd) and Q (clatd) things
     // and only verify the mainline module relevant R+ offload maps & progs.
@@ -147,24 +146,23 @@
     // and not to test the platform itself, which may have been modified by vendor or oems,
     // so we should only test for the removal of stuff that was mainline'd,
     // and for the presence of mainline stuff.
-    DO_EXPECT(IsAtLeastR() && !IsAtLeastS(), PLATFORM_ONLY_IN_R);
 
+    // R can potentially run on pre-4.9 kernel non-eBPF capable devices.
+    DO_EXPECT(IsAtLeastR() && !IsAtLeastS() && isAtLeastKernelVersion(4, 9, 0), PLATFORM_ONLY_IN_R);
+
+    // S requires Linux Kernel 4.9+ and thus requires eBPF support.
     DO_EXPECT(IsAtLeastS(), MAINLINE_FOR_S_PLUS);
     DO_EXPECT(IsAtLeastS() && isAtLeastKernelVersion(5, 10, 0), MAINLINE_FOR_S_5_10_PLUS);
 
     // Nothing added or removed in SCv2.
 
+    // T still only requires Linux Kernel 4.9+.
     DO_EXPECT(IsAtLeastT(), MAINLINE_FOR_T_PLUS);
     DO_EXPECT(IsAtLeastT() && isAtLeastKernelVersion(4, 14, 0), MAINLINE_FOR_T_4_14_PLUS);
     DO_EXPECT(IsAtLeastT() && isAtLeastKernelVersion(5, 4, 0), MAINLINE_FOR_T_5_4_PLUS);
     DO_EXPECT(IsAtLeastT() && isAtLeastKernelVersion(5, 15, 0), MAINLINE_FOR_T_5_15_PLUS);
-}
 
-void checkFiles() {
-    set<string> mustExist;
-    set<string> mustNotExist;
-
-    getFileLists(&mustExist, &mustNotExist);
+    // U requires Linux Kernel 4.14+, but nothing (as yet) added or removed in U.
 
     for (const auto& file : mustExist) {
         EXPECT_EQ(0, access(file.c_str(), R_OK)) << file << " does not exist";
@@ -178,19 +176,3 @@
         }
     }
 }
-
-TEST_F(BpfExistenceTest, TestPrograms) {
-    SKIP_IF_BPF_NOT_SUPPORTED;
-
-    // Pre-flight check to ensure test has been updated.
-    uint64_t buildVersionSdk = android_get_device_api_level();
-    ASSERT_NE(0, buildVersionSdk) << "Unable to determine device SDK version";
-    if (buildVersionSdk > __ANDROID_API_T__ && buildVersionSdk != __ANDROID_API_FUTURE__) {
-            FAIL() << "Unknown OS version " << buildVersionSdk << ", please update this test";
-    }
-
-    // Only unconfined root is guaranteed to be able to access everything in /sys/fs/bpf.
-    ASSERT_EQ(0, getuid()) << "This test must run as root.";
-
-    checkFiles();
-}
diff --git a/tests/native/connectivity_native_test/bpf_base_test.cpp b/tests/native/connectivity_native_test/bpf_base_test.cpp
new file mode 100644
index 0000000..624d216
--- /dev/null
+++ b/tests/native/connectivity_native_test/bpf_base_test.cpp
@@ -0,0 +1,108 @@
+/*
+ * Copyright (C) 2018 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <string>
+
+#include <fcntl.h>
+#include <inttypes.h>
+#include <limits.h>
+#include <linux/inet_diag.h>
+#include <linux/sock_diag.h>
+#include <net/if.h>
+#include <sys/socket.h>
+#include <sys/types.h>
+#include <unistd.h>
+
+#include <gtest/gtest.h>
+
+#include <cutils/qtaguid.h>
+#include <processgroup/processgroup.h>
+
+#include <android-base/stringprintf.h>
+#include <android-base/strings.h>
+#include <netdutils/NetNativeTestBase.h>
+
+#include "bpf/BpfMap.h"
+#include "bpf/BpfUtils.h"
+#include "netd.h"
+
+using android::base::Result;
+
+namespace android {
+namespace bpf {
+
+// Use the upper limit of uid to avoid conflict with real app uids. We can't use UID_MAX because
+// it's -1, which is INVALID_UID.
+constexpr uid_t TEST_UID = UID_MAX - 1;
+constexpr uint32_t TEST_TAG = 42;
+
+class BpfBasicTest : public NetNativeTestBase {
+  protected:
+    BpfBasicTest() {}
+};
+
+TEST_F(BpfBasicTest, TestCgroupMounted) {
+    std::string cg2_path;
+    ASSERT_EQ(true, CgroupGetControllerPath(CGROUPV2_CONTROLLER_NAME, &cg2_path));
+    ASSERT_EQ(0, access(cg2_path.c_str(), R_OK));
+    ASSERT_EQ(0, access((cg2_path + "/cgroup.controllers").c_str(), R_OK));
+}
+
+TEST_F(BpfBasicTest, TestTagSocket) {
+    BpfMap<uint64_t, UidTagValue> cookieTagMap(COOKIE_TAG_MAP_PATH);
+    ASSERT_TRUE(cookieTagMap.isValid());
+    int sock = socket(AF_INET6, SOCK_STREAM | SOCK_CLOEXEC, 0);
+    ASSERT_LE(0, sock);
+    uint64_t cookie = getSocketCookie(sock);
+    ASSERT_NE(NONEXISTENT_COOKIE, cookie);
+    ASSERT_EQ(0, qtaguid_tagSocket(sock, TEST_TAG, TEST_UID));
+    Result<UidTagValue> tagResult = cookieTagMap.readValue(cookie);
+    ASSERT_RESULT_OK(tagResult);
+    ASSERT_EQ(TEST_UID, tagResult.value().uid);
+    ASSERT_EQ(TEST_TAG, tagResult.value().tag);
+    ASSERT_EQ(0, qtaguid_untagSocket(sock));
+    tagResult = cookieTagMap.readValue(cookie);
+    ASSERT_FALSE(tagResult.ok());
+    ASSERT_EQ(ENOENT, tagResult.error().code());
+}
+
+TEST_F(BpfBasicTest, TestCloseSocketWithoutUntag) {
+    BpfMap<uint64_t, UidTagValue> cookieTagMap(COOKIE_TAG_MAP_PATH);
+    ASSERT_TRUE(cookieTagMap.isValid());
+    int sock = socket(AF_INET6, SOCK_STREAM | SOCK_CLOEXEC, 0);
+    ASSERT_LE(0, sock);
+    uint64_t cookie = getSocketCookie(sock);
+    ASSERT_NE(NONEXISTENT_COOKIE, cookie);
+    ASSERT_EQ(0, qtaguid_tagSocket(sock, TEST_TAG, TEST_UID));
+    Result<UidTagValue> tagResult = cookieTagMap.readValue(cookie);
+    ASSERT_RESULT_OK(tagResult);
+    ASSERT_EQ(TEST_UID, tagResult.value().uid);
+    ASSERT_EQ(TEST_TAG, tagResult.value().tag);
+    ASSERT_EQ(0, close(sock));
+    // Check map periodically until sk destroy handler have done its job.
+    for (int i = 0; i < 10; i++) {
+        usleep(5000);  // 5ms
+        tagResult = cookieTagMap.readValue(cookie);
+        if (!tagResult.ok()) {
+            ASSERT_EQ(ENOENT, tagResult.error().code());
+            return;
+        }
+    }
+    FAIL() << "socket tag still exist after 50ms";
+}
+
+}
+}
diff --git a/tests/native/utilities/firewall.h b/tests/native/utilities/firewall.h
index 185559b..1e7e987 100644
--- a/tests/native/utilities/firewall.h
+++ b/tests/native/utilities/firewall.h
@@ -19,7 +19,7 @@
 
 #include <android-base/thread_annotations.h>
 #include <bpf/BpfMap.h>
-#include <bpf_shared.h>
+#include "netd.h"
 
 using android::base::Result;
 using android::bpf::BpfMap;
diff --git a/tests/unit/Android.bp b/tests/unit/Android.bp
index 8ed735a..209430a 100644
--- a/tests/unit/Android.bp
+++ b/tests/unit/Android.bp
@@ -74,6 +74,7 @@
         "java/com/android/server/connectivity/VpnTest.java",
         "java/com/android/server/net/ipmemorystore/*.java",
         "java/com/android/server/connectivity/mdns/**/*.java",
+        "java/com/android/server/connectivity/mdns/**/*.kt",
     ]
 }
 
diff --git a/tests/unit/java/com/android/server/connectivity/VpnTest.java b/tests/unit/java/com/android/server/connectivity/VpnTest.java
index 677e7b6..3f87ffd 100644
--- a/tests/unit/java/com/android/server/connectivity/VpnTest.java
+++ b/tests/unit/java/com/android/server/connectivity/VpnTest.java
@@ -1893,7 +1893,7 @@
 
         // Check if allowBypass is set or not.
         assertTrue(nacCaptor.getValue().isBypassableVpn());
-        assertTrue(((VpnTransportInfo) ncCaptor.getValue().getTransportInfo()).getBypassable());
+        assertTrue(((VpnTransportInfo) ncCaptor.getValue().getTransportInfo()).isBypassable());
 
         return new PlatformVpnSnapshot(vpn, nwCb, ikeCb, childCb);
     }
diff --git a/tests/unit/java/com/android/server/connectivity/mdns/MdnsAnnouncerTest.kt b/tests/unit/java/com/android/server/connectivity/mdns/MdnsAnnouncerTest.kt
new file mode 100644
index 0000000..e9325d5
--- /dev/null
+++ b/tests/unit/java/com/android/server/connectivity/mdns/MdnsAnnouncerTest.kt
@@ -0,0 +1,283 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.server.connectivity.mdns
+
+import android.net.InetAddresses.parseNumericAddress
+import android.os.Build
+import android.os.HandlerThread
+import android.os.SystemClock
+import com.android.internal.util.HexDump
+import com.android.server.connectivity.mdns.MdnsAnnouncer.AnnouncementInfo
+import com.android.testutils.DevSdkIgnoreRule.IgnoreUpTo
+import com.android.testutils.DevSdkIgnoreRunner
+import java.net.DatagramPacket
+import java.net.Inet6Address
+import java.net.InetAddress
+import java.net.InetSocketAddress
+import java.net.MulticastSocket
+import kotlin.test.assertEquals
+import kotlin.test.assertTrue
+import org.junit.After
+import org.junit.Before
+import org.junit.Test
+import org.junit.runner.RunWith
+import org.mockito.ArgumentCaptor
+import org.mockito.Mockito.any
+import org.mockito.Mockito.atLeast
+import org.mockito.Mockito.mock
+import org.mockito.Mockito.timeout
+import org.mockito.Mockito.verify
+
+private const val FIRST_ANNOUNCES_DELAY = 100L
+private const val FIRST_ANNOUNCES_COUNT = 2
+private const val NEXT_ANNOUNCES_DELAY = 1L
+private const val TEST_TIMEOUT_MS = 1000L
+
+private val destinationsSupplier = {
+    listOf(InetSocketAddress(MdnsConstants.getMdnsIPv6Address(), MdnsConstants.MDNS_PORT)) }
+
+@RunWith(DevSdkIgnoreRunner::class)
+@IgnoreUpTo(Build.VERSION_CODES.S_V2)
+class MdnsAnnouncerTest {
+
+    private val thread = HandlerThread(MdnsAnnouncerTest::class.simpleName)
+    private val socket = mock(MulticastSocket::class.java)
+    private val buffer = ByteArray(1500)
+
+    @Before
+    fun setUp() {
+        thread.start()
+    }
+
+    @After
+    fun tearDown() {
+        thread.quitSafely()
+    }
+
+    private class TestAnnouncementInfo(
+        announcedRecords: List<MdnsRecord>,
+        additionalRecords: List<MdnsRecord>
+    )
+        : AnnouncementInfo(announcedRecords, additionalRecords, destinationsSupplier) {
+        override fun getDelayMs(nextIndex: Int) =
+                if (nextIndex < FIRST_ANNOUNCES_COUNT) {
+                    FIRST_ANNOUNCES_DELAY
+                } else {
+                    NEXT_ANNOUNCES_DELAY
+                }
+    }
+
+    @Test
+    fun testAnnounce() {
+        val replySender = MdnsReplySender(thread.looper, socket, buffer)
+        @Suppress("UNCHECKED_CAST")
+        val cb = mock(MdnsPacketRepeater.PacketRepeaterCallback::class.java)
+                as MdnsPacketRepeater.PacketRepeaterCallback<AnnouncementInfo>
+        val announcer = MdnsAnnouncer("testiface", thread.looper, replySender, cb)
+        /*
+        The expected packet replicates records announced when registering a service, as observed in
+        the legacy mDNS implementation (some ordering differs to be more readable).
+        Obtained with scapy 2.5.0 RC3 (2.4.5 does not compress TLDs like .arpa properly) with:
+        scapy.raw(scapy.dns_compress(scapy.DNS(rd=0, qr=1, aa=1,
+        qd = None,
+        an =
+        scapy.DNSRR(type='PTR', rrname='123.0.2.192.in-addr.arpa.', rdata='Android.local',
+            rclass=0x8001, ttl=120) /
+        scapy.DNSRR(type='PTR',
+            rrname='3.2.1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.B.D.0.1.0.0.2.ip6.arpa',
+            rdata='Android.local', rclass=0x8001, ttl=120) /
+        scapy.DNSRR(type='PTR',
+            rrname='6.5.4.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.B.D.0.1.0.0.2.ip6.arpa',
+            rdata='Android.local', rclass=0x8001, ttl=120) /
+        scapy.DNSRR(type='PTR', rrname='_testtype._tcp.local',
+            rdata='testservice._testtype._tcp.local', rclass='IN', ttl=4500) /
+	    scapy.DNSRRSRV(rrname='testservice._testtype._tcp.local', rclass=0x8001, port=31234,
+	        target='Android.local', ttl=120) /
+	    scapy.DNSRR(type='TXT', rrname='testservice._testtype._tcp.local', rclass=0x8001, rdata='',
+	        ttl=4500) /
+        scapy.DNSRR(type='A', rrname='Android.local', rclass=0x8001, rdata='192.0.2.123', ttl=120) /
+        scapy.DNSRR(type='AAAA', rrname='Android.local', rclass=0x8001, rdata='2001:db8::123',
+            ttl=120) /
+        scapy.DNSRR(type='AAAA', rrname='Android.local', rclass=0x8001, rdata='2001:db8::456',
+            ttl=120),
+        ar =
+        scapy.DNSRRNSEC(rrname='123.0.2.192.in-addr.arpa.', rclass=0x8001, ttl=120,
+            nextname='123.0.2.192.in-addr.arpa.', typebitmaps=[12]) /
+        scapy.DNSRRNSEC(
+            rrname='3.2.1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.B.D.0.1.0.0.2.ip6.arpa',
+            rclass=0x8001, ttl=120,
+            nextname='3.2.1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.B.D.0.1.0.0.2.ip6.arpa',
+            typebitmaps=[12]) /
+        scapy.DNSRRNSEC(
+            rrname='6.5.4.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.B.D.0.1.0.0.2.ip6.arpa',
+            rclass=0x8001, ttl=120,
+            nextname='6.5.4.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.B.D.0.1.0.0.2.ip6.arpa',
+            typebitmaps=[12]) /
+	    scapy.DNSRRNSEC(
+	        rrname='testservice._testtype._tcp.local', rclass=0x8001, ttl=4500,
+	        nextname='testservice._testtype._tcp.local', typebitmaps=[16, 33]) /
+        scapy.DNSRRNSEC(
+            rrname='Android.local', rclass=0x8001, ttl=120, nextname='Android.local',
+            typebitmaps=[1, 28]))
+        )).hex().upper()
+        */
+        val expected = "00008400000000090000000503313233013001320331393207696E2D61646472046172706" +
+                "100000C800100000078000F07416E64726F6964056C6F63616C00013301320131013001300130013" +
+                "00130013001300130013001300130013001300130013001300130013001300130013001380142014" +
+                "40130013101300130013203697036C020000C8001000000780002C030013601350134C045000C800" +
+                "1000000780002C030095F7465737474797065045F746370C038000C000100001194000E0B7465737" +
+                "473657276696365C0A5C0C000218001000000780008000000007A02C030C0C000108001000011940" +
+                "000C03000018001000000780004C000027BC030001C800100000078001020010DB80000000000000" +
+                "00000000123C030001C800100000078001020010DB8000000000000000000000456C00C002F80010" +
+                "00000780006C00C00020008C03F002F8001000000780006C03F00020008C091002F8001000000780" +
+                "006C09100020008C0C0002F8001000011940009C0C000050000800040C030002F800100000078000" +
+                "8C030000440000008"
+
+        val hostname = arrayOf("Android", "local")
+        val serviceType = arrayOf("_testtype", "_tcp", "local")
+        val serviceName = arrayOf("testservice", "_testtype", "_tcp", "local")
+        val v4Addr = parseNumericAddress("192.0.2.123")
+        val v6Addr1 = parseNumericAddress("2001:DB8::123")
+        val v6Addr2 = parseNumericAddress("2001:DB8::456")
+        val v4AddrRev = arrayOf("123", "0", "2", "192", "in-addr", "arpa")
+        val v6Addr1Rev = getReverseV6AddressName(v6Addr1)
+        val v6Addr2Rev = getReverseV6AddressName(v6Addr2)
+
+        val announcedRecords = listOf(
+                // Reverse address records
+                MdnsPointerRecord(v4AddrRev,
+                        0L /* receiptTimeMillis */,
+                        true /* cacheFlush */,
+                        120000L /* ttlMillis */,
+                        hostname),
+                MdnsPointerRecord(v6Addr1Rev,
+                        0L /* receiptTimeMillis */,
+                        true /* cacheFlush */,
+                        120000L /* ttlMillis */,
+                        hostname),
+                MdnsPointerRecord(v6Addr2Rev,
+                        0L /* receiptTimeMillis */,
+                        true /* cacheFlush */,
+                        120000L /* ttlMillis */,
+                        hostname),
+                // Service registration records (RFC6763)
+                MdnsPointerRecord(
+                        serviceType,
+                        0L /* receiptTimeMillis */,
+                        // Not a unique name owned by the announcer, so cacheFlush=false
+                        false /* cacheFlush */,
+                        4500000L /* ttlMillis */,
+                        serviceName),
+                MdnsServiceRecord(
+                        serviceName,
+                        0L /* receiptTimeMillis */,
+                        true /* cacheFlush */,
+                        120000L /* ttlMillis */,
+                        0 /* servicePriority */,
+                        0 /* serviceWeight */,
+                        31234 /* servicePort */,
+                        hostname),
+                MdnsTextRecord(
+                        serviceName,
+                        0L /* receiptTimeMillis */,
+                        true /* cacheFlush */,
+                        4500000L /* ttlMillis */,
+                        emptyList() /* entries */),
+                // Address records for the hostname
+                MdnsInetAddressRecord(hostname,
+                        0L /* receiptTimeMillis */,
+                        true /* cacheFlush */,
+                        120000L /* ttlMillis */,
+                        v4Addr),
+                MdnsInetAddressRecord(hostname,
+                        0L /* receiptTimeMillis */,
+                        true /* cacheFlush */,
+                        120000L /* ttlMillis */,
+                        v6Addr1),
+                MdnsInetAddressRecord(hostname,
+                        0L /* receiptTimeMillis */,
+                        true /* cacheFlush */,
+                        120000L /* ttlMillis */,
+                        v6Addr2))
+        // Negative responses (RFC6762 6.1)
+        val additionalRecords = listOf(
+                MdnsNsecRecord(v4AddrRev,
+                        0L /* receiptTimeMillis */,
+                        true /* cacheFlush */,
+                        120000L /* ttlMillis */,
+                        v4AddrRev,
+                        intArrayOf(MdnsRecord.TYPE_PTR)),
+                MdnsNsecRecord(v6Addr1Rev,
+                        0L /* receiptTimeMillis */,
+                        true /* cacheFlush */,
+                        120000L /* ttlMillis */,
+                        v6Addr1Rev,
+                        intArrayOf(MdnsRecord.TYPE_PTR)),
+                MdnsNsecRecord(v6Addr2Rev,
+                        0L /* receiptTimeMillis */,
+                        true /* cacheFlush */,
+                        120000L /* ttlMillis */,
+                        v6Addr2Rev,
+                        intArrayOf(MdnsRecord.TYPE_PTR)),
+                MdnsNsecRecord(serviceName,
+                        0L /* receiptTimeMillis */,
+                        true /* cacheFlush */,
+                        4500000L /* ttlMillis */,
+                        serviceName,
+                        intArrayOf(MdnsRecord.TYPE_TXT, MdnsRecord.TYPE_SRV)),
+                MdnsNsecRecord(hostname,
+                        0L /* receiptTimeMillis */,
+                        true /* cacheFlush */,
+                        120000L /* ttlMillis */,
+                        hostname,
+                        intArrayOf(MdnsRecord.TYPE_A, MdnsRecord.TYPE_AAAA)))
+        val request = TestAnnouncementInfo(announcedRecords, additionalRecords)
+
+        val timeStart = SystemClock.elapsedRealtime()
+        val startDelay = 50L
+        val sendId = 1
+        announcer.startSending(sendId, request, startDelay)
+
+        val captor = ArgumentCaptor.forClass(DatagramPacket::class.java)
+        repeat(FIRST_ANNOUNCES_COUNT) { i ->
+            verify(cb, timeout(TEST_TIMEOUT_MS)).onSent(i, request)
+            verify(socket, atLeast(i + 1)).send(any())
+            val now = SystemClock.elapsedRealtime()
+            assertTrue(now > timeStart + startDelay + i * FIRST_ANNOUNCES_DELAY)
+            assertTrue(now < timeStart + startDelay + (i + 1) * FIRST_ANNOUNCES_DELAY)
+        }
+
+        // Subsequent announces should happen quickly (NEXT_ANNOUNCES_DELAY)
+        verify(socket, timeout(TEST_TIMEOUT_MS).times(MdnsAnnouncer.ANNOUNCEMENT_COUNT))
+                .send(captor.capture())
+        verify(cb, timeout(TEST_TIMEOUT_MS)).onFinished(request)
+
+        captor.allValues.forEach {
+            assertEquals(expected, HexDump.toHexString(it.data))
+        }
+    }
+}
+
+/**
+ * Compute 2001:db8::1 --> 1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.B.D.1.0.0.2.ip6.arpa
+ */
+private fun getReverseV6AddressName(addr: InetAddress): Array<String> {
+    assertTrue(addr is Inet6Address)
+    return addr.address.flatMapTo(mutableListOf("arpa", "ip6")) {
+        HexDump.toHexString(it).toCharArray().map(Char::toString)
+    }.reversed().toTypedArray()
+}
diff --git a/tests/unit/java/com/android/server/connectivity/mdns/MdnsPacketWriterTest.kt b/tests/unit/java/com/android/server/connectivity/mdns/MdnsPacketWriterTest.kt
new file mode 100644
index 0000000..5c9c294
--- /dev/null
+++ b/tests/unit/java/com/android/server/connectivity/mdns/MdnsPacketWriterTest.kt
@@ -0,0 +1,55 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.server.connectivity.mdns
+
+import android.net.InetAddresses
+import android.os.Build
+import com.android.testutils.DevSdkIgnoreRule.IgnoreUpTo
+import com.android.testutils.DevSdkIgnoreRunner
+import java.net.InetSocketAddress
+import kotlin.test.assertContentEquals
+import org.junit.Test
+import org.junit.runner.RunWith
+
+@RunWith(DevSdkIgnoreRunner::class)
+@IgnoreUpTo(Build.VERSION_CODES.S_V2)
+class MdnsPacketWriterTest {
+    @Test
+    fun testNameCompression() {
+        val writer = MdnsPacketWriter(ByteArray(1000))
+        writer.writeLabels(arrayOf("my", "first", "name"))
+        writer.writeLabels(arrayOf("my", "second", "name"))
+        writer.writeLabels(arrayOf("other", "first", "name"))
+        writer.writeLabels(arrayOf("my", "second", "name"))
+        writer.writeLabels(arrayOf("unrelated"))
+
+        val packet = writer.getPacket(
+                InetSocketAddress(InetAddresses.parseNumericAddress("2001:db8::123"), 123))
+
+        // Each label takes length + 1. So "first.name" offset = 3, "name" offset = 9
+        val expected = "my".label() + "first".label() + "name".label() + 0x00.toByte() +
+                // "my.second.name" offset = 15
+                "my".label() + "second".label() + byteArrayOf(0xC0.toByte(), 9) +
+                "other".label() + byteArrayOf(0xC0.toByte(), 3) +
+                byteArrayOf(0xC0.toByte(), 15) +
+                "unrelated".label() + 0x00.toByte()
+
+        assertContentEquals(expected, packet.data.copyOfRange(0, packet.length))
+    }
+}
+
+private fun String.label() = byteArrayOf(length.toByte()) + encodeToByteArray()
diff --git a/tests/unit/java/com/android/server/connectivity/mdns/MdnsProberTest.kt b/tests/unit/java/com/android/server/connectivity/mdns/MdnsProberTest.kt
new file mode 100644
index 0000000..419121c
--- /dev/null
+++ b/tests/unit/java/com/android/server/connectivity/mdns/MdnsProberTest.kt
@@ -0,0 +1,198 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.server.connectivity.mdns
+
+import android.os.Build
+import android.os.Handler
+import android.os.HandlerThread
+import android.os.Looper
+import com.android.internal.util.HexDump
+import com.android.server.connectivity.mdns.MdnsProber.ProbingInfo
+import com.android.testutils.DevSdkIgnoreRule.IgnoreUpTo
+import com.android.testutils.DevSdkIgnoreRunner
+import java.net.DatagramPacket
+import java.net.InetSocketAddress
+import java.net.MulticastSocket
+import java.util.concurrent.CompletableFuture
+import java.util.concurrent.TimeUnit
+import kotlin.test.assertEquals
+import kotlin.test.assertTrue
+import org.junit.After
+import org.junit.Before
+import org.junit.Test
+import org.junit.runner.RunWith
+import org.mockito.ArgumentCaptor
+import org.mockito.Mockito.any
+import org.mockito.Mockito.atLeast
+import org.mockito.Mockito.mock
+import org.mockito.Mockito.never
+import org.mockito.Mockito.timeout
+import org.mockito.Mockito.times
+import org.mockito.Mockito.verify
+
+private val destinationsSupplier = {
+    listOf(InetSocketAddress(MdnsConstants.getMdnsIPv6Address(), MdnsConstants.MDNS_PORT)) }
+
+private const val TEST_TIMEOUT_MS = 10_000L
+private const val SHORT_TIMEOUT_MS = 200L
+
+private val TEST_SERVICE_NAME_1 = arrayOf("testservice", "_nmt", "_tcp", "local")
+private val TEST_SERVICE_NAME_2 = arrayOf("testservice2", "_nmt", "_tcp", "local")
+
+@RunWith(DevSdkIgnoreRunner::class)
+@IgnoreUpTo(Build.VERSION_CODES.S_V2)
+class MdnsProberTest {
+    private val thread = HandlerThread(MdnsProberTest::class.simpleName)
+    private val socket = mock(MulticastSocket::class.java)
+    @Suppress("UNCHECKED_CAST")
+    private val cb = mock(MdnsPacketRepeater.PacketRepeaterCallback::class.java)
+        as MdnsPacketRepeater.PacketRepeaterCallback<ProbingInfo>
+    private val buffer = ByteArray(1500)
+
+    @Before
+    fun setUp() {
+        thread.start()
+    }
+
+    @After
+    fun tearDown() {
+        thread.quitSafely()
+    }
+
+    private class TestProbeInfo(probeRecords: List<MdnsRecord>, private val delayMs: Long = 1L) :
+            ProbingInfo(1 /* serviceId */, probeRecords, destinationsSupplier) {
+        // Just send the packets quickly. Timing-related tests for MdnsPacketRepeater are already
+        // done in MdnsAnnouncerTest.
+        override fun getDelayMs(nextIndex: Int) = delayMs
+    }
+
+    private class TestProber(
+        looper: Looper,
+        replySender: MdnsReplySender,
+        cb: PacketRepeaterCallback<ProbingInfo>
+    ) : MdnsProber("testiface", looper, replySender, cb) {
+        override fun getInitialDelay() = 0L
+    }
+
+    private fun assertProbesSent(probeInfo: TestProbeInfo, expectedHex: String) {
+        repeat(probeInfo.numSends) { i ->
+            verify(cb, timeout(TEST_TIMEOUT_MS)).onSent(i, probeInfo)
+            // If the probe interval is short, more than (i+1) probes may have been sent already
+            verify(socket, atLeast(i + 1)).send(any())
+        }
+
+        val captor = ArgumentCaptor.forClass(DatagramPacket::class.java)
+        // There should be exactly numSends probes sent at the end
+        verify(socket, times(probeInfo.numSends)).send(captor.capture())
+
+        captor.allValues.forEach {
+            assertEquals(expectedHex, HexDump.toHexString(it.data))
+        }
+        verify(cb, timeout(TEST_TIMEOUT_MS)).onFinished(probeInfo)
+    }
+
+    private fun makeServiceRecord(name: Array<String>, port: Int) = MdnsServiceRecord(
+            name,
+            0L /* receiptTimeMillis */,
+            false /* cacheFlush */,
+            120_000L /* ttlMillis */,
+            0 /* servicePriority */,
+            0 /* serviceWeight */,
+            port,
+            arrayOf("myhostname", "local"))
+
+    @Test
+    fun testProbe() {
+        val replySender = MdnsReplySender(thread.looper, socket, buffer)
+        val prober = TestProber(thread.looper, replySender, cb)
+        val probeInfo = TestProbeInfo(
+                listOf(makeServiceRecord(TEST_SERVICE_NAME_1, 37890)))
+        prober.startProbing(probeInfo)
+
+        // Inspect with python3:
+        // import scapy.all as scapy; scapy.DNS(bytes.fromhex('[bytes]')).show2()
+        val expected = "0000000000010000000100000B7465737473657276696365045F6E6D74045F746370056C" +
+                "6F63616C0000FF0001C00C002100010000007800130000000094020A6D79686F73746E616D65C022"
+        assertProbesSent(probeInfo, expected)
+    }
+
+    @Test
+    fun testProbeMultipleRecords() {
+        val replySender = MdnsReplySender(thread.looper, socket, buffer)
+        val prober = TestProber(thread.looper, replySender, cb)
+        val probeInfo = TestProbeInfo(listOf(
+                makeServiceRecord(TEST_SERVICE_NAME_1, 37890),
+                makeServiceRecord(TEST_SERVICE_NAME_2, 37891),
+                MdnsTextRecord(
+                        // Same name as the first record; there should not be 2 duplicated questions
+                        TEST_SERVICE_NAME_1,
+                        0L /* receiptTimeMillis */,
+                        false /* cacheFlush */,
+                        120_000L /* ttlMillis */,
+                        listOf(MdnsServiceInfo.TextEntry("testKey", "testValue")))))
+        prober.startProbing(probeInfo)
+
+        /*
+        Expected data obtained with:
+        scapy.raw(scapy.dns_compress(scapy.DNS(rd=0,
+            qd =
+                scapy.DNSQR(qname='testservice._nmt._tcp.local.', qtype='ALL') /
+                scapy.DNSQR(qname='testservice2._nmt._tcp.local.', qtype='ALL'),
+            ns=
+                scapy.DNSRRSRV(rrname='testservice._nmt._tcp.local.', type='SRV', ttl=120,
+                    port=37890, target='myhostname.local.') /
+                scapy.DNSRRSRV(rrname='testservice2._nmt._tcp.local.', type='SRV', ttl=120,
+                    port=37891, target='myhostname.local.') /
+                scapy.DNSRR(type='TXT', ttl=120, rrname='testservice._nmt._tcp.local.',
+                    rdata='testKey=testValue'))
+        )).hex().upper()
+         */
+        val expected = "0000000000020000000300000B7465737473657276696365045F6E6D74045F746370056C6" +
+                "F63616C0000FF00010C746573747365727669636532C01800FF0001C00C002100010000007800130" +
+                "000000094020A6D79686F73746E616D65C022C02D00210001000000780008000000009403C052C00" +
+                "C0010000100000078001211746573744B65793D7465737456616C7565"
+        assertProbesSent(probeInfo, expected)
+    }
+
+    @Test
+    fun testStopProbing() {
+        val replySender = MdnsReplySender(thread.looper, socket, buffer)
+        val prober = TestProber(thread.looper, replySender, cb)
+        val probeInfo = TestProbeInfo(
+                listOf(makeServiceRecord(TEST_SERVICE_NAME_1, 37890)),
+                // delayMs is the delay between each probe, so does not apply to the first one
+                delayMs = SHORT_TIMEOUT_MS)
+        prober.startProbing(probeInfo)
+
+        // Expect the initial probe
+        verify(cb, timeout(TEST_TIMEOUT_MS)).onSent(0, probeInfo)
+
+        // Stop probing
+        val stopResult = CompletableFuture<Boolean>()
+        Handler(thread.looper).post { stopResult.complete(prober.stop(probeInfo.serviceId)) }
+        assertTrue(stopResult.get(TEST_TIMEOUT_MS, TimeUnit.MILLISECONDS),
+                "stop should return true when probing was in progress")
+
+        // Wait for a bit (more than the probe delay) to ensure no more probes were sent
+        Thread.sleep(SHORT_TIMEOUT_MS * 2)
+        verify(cb, never()).onSent(1, probeInfo)
+        verify(cb, never()).onFinished(probeInfo)
+
+        // Only one sent packet
+        verify(socket, times(1)).send(any())
+    }
+}
diff --git a/tests/unit/java/com/android/server/connectivity/mdns/MdnsRecordTests.java b/tests/unit/java/com/android/server/connectivity/mdns/MdnsRecordTests.java
index 7d800d8..55c2846 100644
--- a/tests/unit/java/com/android/server/connectivity/mdns/MdnsRecordTests.java
+++ b/tests/unit/java/com/android/server/connectivity/mdns/MdnsRecordTests.java
@@ -281,9 +281,9 @@
                         // TTL 0x0000003c (60 secs)
                         + "0000003C"
                         // Data length
-                        + "003C"
-                        // nextdomain.android.com
-                        + "0A6E657874646F6D61696E07616E64726F696403636F6D00"
+                        + "0031"
+                        // nextdomain.android.com, with compression for android.com
+                        + "0A6E657874646F6D61696EC007"
                         // Type bitmaps: window block 0x00, bitmap length 0x05,
                         // bits 16 (TXT) and 33 (SRV) set: 0x0000800040
                         + "00050000800040"
diff --git a/tools/gn2bp/Android.bp.swp b/tools/gn2bp/Android.bp.swp
index 212735a..f6a17a4 100644
--- a/tools/gn2bp/Android.bp.swp
+++ b/tools/gn2bp/Android.bp.swp
@@ -14,9 +14,9 @@
 //
 // This file is automatically generated by gen_android_bp. Do not edit.
 
-// GN: //base/allocator:buildflags__android_arm
+// GN: //base/allocator:buildflags
 cc_genrule {
-    name: "cronet_aml_base_allocator_buildflags__android_arm",
+    name: "cronet_aml_base_allocator_buildflags",
     cmd: "echo '--flags USE_PARTITION_ALLOC=\"false\" USE_ALLOCATOR_SHIM=\"true\" USE_PARTITION_ALLOC_AS_MALLOC=\"false\" USE_BACKUP_REF_PTR=\"false\" USE_ASAN_BACKUP_REF_PTR=\"false\" USE_PARTITION_ALLOC_AS_GWP_ASAN_STORE=\"false\" USE_MTE_CHECKED_PTR=\"false\" FORCE_ENABLE_RAW_PTR_EXCLUSION=\"false\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
@@ -37,103 +37,9 @@
     ],
 }
 
-// GN: //base/allocator:buildflags__android_arm64
+// GN: //base/allocator/partition_allocator:chromecast_buildflags
 cc_genrule {
-    name: "cronet_aml_base_allocator_buildflags__android_arm64",
-    cmd: "echo '--flags USE_PARTITION_ALLOC=\"false\" USE_ALLOCATOR_SHIM=\"true\" USE_PARTITION_ALLOC_AS_MALLOC=\"false\" USE_BACKUP_REF_PTR=\"false\" USE_ASAN_BACKUP_REF_PTR=\"false\" USE_PARTITION_ALLOC_AS_GWP_ASAN_STORE=\"false\" USE_MTE_CHECKED_PTR=\"false\" FORCE_ENABLE_RAW_PTR_EXCLUSION=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base/allocator:buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/allocator/buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base/allocator:buildflags__android_x86
-cc_genrule {
-    name: "cronet_aml_base_allocator_buildflags__android_x86",
-    cmd: "echo '--flags USE_PARTITION_ALLOC=\"false\" USE_ALLOCATOR_SHIM=\"true\" USE_PARTITION_ALLOC_AS_MALLOC=\"false\" USE_BACKUP_REF_PTR=\"false\" USE_ASAN_BACKUP_REF_PTR=\"false\" USE_PARTITION_ALLOC_AS_GWP_ASAN_STORE=\"false\" USE_MTE_CHECKED_PTR=\"false\" FORCE_ENABLE_RAW_PTR_EXCLUSION=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base/allocator:buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/allocator/buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base/allocator:buildflags__android_x86_64
-cc_genrule {
-    name: "cronet_aml_base_allocator_buildflags__android_x86_64",
-    cmd: "echo '--flags USE_PARTITION_ALLOC=\"false\" USE_ALLOCATOR_SHIM=\"true\" USE_PARTITION_ALLOC_AS_MALLOC=\"false\" USE_BACKUP_REF_PTR=\"false\" USE_ASAN_BACKUP_REF_PTR=\"false\" USE_PARTITION_ALLOC_AS_GWP_ASAN_STORE=\"false\" USE_MTE_CHECKED_PTR=\"false\" FORCE_ENABLE_RAW_PTR_EXCLUSION=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base/allocator:buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/allocator/buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base/allocator:buildflags__host
-cc_genrule {
-    name: "cronet_aml_base_allocator_buildflags__host",
-    cmd: "echo '--flags USE_PARTITION_ALLOC=\"false\" USE_ALLOCATOR_SHIM=\"true\" USE_PARTITION_ALLOC_AS_MALLOC=\"false\" USE_BACKUP_REF_PTR=\"false\" USE_ASAN_BACKUP_REF_PTR=\"false\" USE_PARTITION_ALLOC_AS_GWP_ASAN_STORE=\"false\" USE_MTE_CHECKED_PTR=\"false\" FORCE_ENABLE_RAW_PTR_EXCLUSION=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base/allocator:buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    host_supported: true,
-    device_supported: false,
-    out: [
-        "base/allocator/buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base/allocator/partition_allocator:chromecast_buildflags__android_arm
-cc_genrule {
-    name: "cronet_aml_base_allocator_partition_allocator_chromecast_buildflags__android_arm",
+    name: "cronet_aml_base_allocator_partition_allocator_chromecast_buildflags",
     cmd: "echo '--flags PA_IS_CAST_ANDROID=\"false\" PA_IS_CASTOS=\"false\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
@@ -154,103 +60,9 @@
     ],
 }
 
-// GN: //base/allocator/partition_allocator:chromecast_buildflags__android_arm64
+// GN: //base/allocator/partition_allocator:chromeos_buildflags
 cc_genrule {
-    name: "cronet_aml_base_allocator_partition_allocator_chromecast_buildflags__android_arm64",
-    cmd: "echo '--flags PA_IS_CAST_ANDROID=\"false\" PA_IS_CASTOS=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base/allocator/partition_allocator:chromecast_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/allocator/partition_allocator/chromecast_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base/allocator/partition_allocator:chromecast_buildflags__android_x86
-cc_genrule {
-    name: "cronet_aml_base_allocator_partition_allocator_chromecast_buildflags__android_x86",
-    cmd: "echo '--flags PA_IS_CAST_ANDROID=\"false\" PA_IS_CASTOS=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base/allocator/partition_allocator:chromecast_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/allocator/partition_allocator/chromecast_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base/allocator/partition_allocator:chromecast_buildflags__android_x86_64
-cc_genrule {
-    name: "cronet_aml_base_allocator_partition_allocator_chromecast_buildflags__android_x86_64",
-    cmd: "echo '--flags PA_IS_CAST_ANDROID=\"false\" PA_IS_CASTOS=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base/allocator/partition_allocator:chromecast_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/allocator/partition_allocator/chromecast_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base/allocator/partition_allocator:chromecast_buildflags__host
-cc_genrule {
-    name: "cronet_aml_base_allocator_partition_allocator_chromecast_buildflags__host",
-    cmd: "echo '--flags PA_IS_CAST_ANDROID=\"false\" PA_IS_CASTOS=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base/allocator/partition_allocator:chromecast_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    host_supported: true,
-    device_supported: false,
-    out: [
-        "base/allocator/partition_allocator/chromecast_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base/allocator/partition_allocator:chromeos_buildflags__android_arm
-cc_genrule {
-    name: "cronet_aml_base_allocator_partition_allocator_chromeos_buildflags__android_arm",
+    name: "cronet_aml_base_allocator_partition_allocator_chromeos_buildflags",
     cmd: "echo '--flags PA_IS_CHROMEOS_ASH=\"false\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
@@ -271,103 +83,9 @@
     ],
 }
 
-// GN: //base/allocator/partition_allocator:chromeos_buildflags__android_arm64
+// GN: //base/allocator/partition_allocator:debugging_buildflags
 cc_genrule {
-    name: "cronet_aml_base_allocator_partition_allocator_chromeos_buildflags__android_arm64",
-    cmd: "echo '--flags PA_IS_CHROMEOS_ASH=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base/allocator/partition_allocator:chromeos_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/allocator/partition_allocator/chromeos_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base/allocator/partition_allocator:chromeos_buildflags__android_x86
-cc_genrule {
-    name: "cronet_aml_base_allocator_partition_allocator_chromeos_buildflags__android_x86",
-    cmd: "echo '--flags PA_IS_CHROMEOS_ASH=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base/allocator/partition_allocator:chromeos_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/allocator/partition_allocator/chromeos_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base/allocator/partition_allocator:chromeos_buildflags__android_x86_64
-cc_genrule {
-    name: "cronet_aml_base_allocator_partition_allocator_chromeos_buildflags__android_x86_64",
-    cmd: "echo '--flags PA_IS_CHROMEOS_ASH=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base/allocator/partition_allocator:chromeos_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/allocator/partition_allocator/chromeos_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base/allocator/partition_allocator:chromeos_buildflags__host
-cc_genrule {
-    name: "cronet_aml_base_allocator_partition_allocator_chromeos_buildflags__host",
-    cmd: "echo '--flags PA_IS_CHROMEOS_ASH=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base/allocator/partition_allocator:chromeos_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    host_supported: true,
-    device_supported: false,
-    out: [
-        "base/allocator/partition_allocator/chromeos_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base/allocator/partition_allocator:debugging_buildflags__android_arm
-cc_genrule {
-    name: "cronet_aml_base_allocator_partition_allocator_debugging_buildflags__android_arm",
+    name: "cronet_aml_base_allocator_partition_allocator_debugging_buildflags",
     cmd: "echo '--flags PA_DCHECK_IS_ON=\"true\" PA_EXPENSIVE_DCHECKS_ARE_ON=\"true\" PA_DCHECK_IS_CONFIGURABLE=\"false\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
@@ -388,103 +106,9 @@
     ],
 }
 
-// GN: //base/allocator/partition_allocator:debugging_buildflags__android_arm64
+// GN: //base/allocator/partition_allocator:logging_buildflags
 cc_genrule {
-    name: "cronet_aml_base_allocator_partition_allocator_debugging_buildflags__android_arm64",
-    cmd: "echo '--flags PA_DCHECK_IS_ON=\"true\" PA_EXPENSIVE_DCHECKS_ARE_ON=\"true\" PA_DCHECK_IS_CONFIGURABLE=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base/allocator/partition_allocator:debugging_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/allocator/partition_allocator/partition_alloc_base/debug/debugging_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base/allocator/partition_allocator:debugging_buildflags__android_x86
-cc_genrule {
-    name: "cronet_aml_base_allocator_partition_allocator_debugging_buildflags__android_x86",
-    cmd: "echo '--flags PA_DCHECK_IS_ON=\"true\" PA_EXPENSIVE_DCHECKS_ARE_ON=\"true\" PA_DCHECK_IS_CONFIGURABLE=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base/allocator/partition_allocator:debugging_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/allocator/partition_allocator/partition_alloc_base/debug/debugging_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base/allocator/partition_allocator:debugging_buildflags__android_x86_64
-cc_genrule {
-    name: "cronet_aml_base_allocator_partition_allocator_debugging_buildflags__android_x86_64",
-    cmd: "echo '--flags PA_DCHECK_IS_ON=\"true\" PA_EXPENSIVE_DCHECKS_ARE_ON=\"true\" PA_DCHECK_IS_CONFIGURABLE=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base/allocator/partition_allocator:debugging_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/allocator/partition_allocator/partition_alloc_base/debug/debugging_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base/allocator/partition_allocator:debugging_buildflags__host
-cc_genrule {
-    name: "cronet_aml_base_allocator_partition_allocator_debugging_buildflags__host",
-    cmd: "echo '--flags PA_DCHECK_IS_ON=\"true\" PA_EXPENSIVE_DCHECKS_ARE_ON=\"true\" PA_DCHECK_IS_CONFIGURABLE=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base/allocator/partition_allocator:debugging_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    host_supported: true,
-    device_supported: false,
-    out: [
-        "base/allocator/partition_allocator/partition_alloc_base/debug/debugging_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base/allocator/partition_allocator:logging_buildflags__android_arm
-cc_genrule {
-    name: "cronet_aml_base_allocator_partition_allocator_logging_buildflags__android_arm",
+    name: "cronet_aml_base_allocator_partition_allocator_logging_buildflags",
     cmd: "echo '--flags PA_ENABLE_LOG_ERROR_NOT_REACHED=\"false\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
@@ -505,104 +129,11 @@
     ],
 }
 
-// GN: //base/allocator/partition_allocator:logging_buildflags__android_arm64
-cc_genrule {
-    name: "cronet_aml_base_allocator_partition_allocator_logging_buildflags__android_arm64",
-    cmd: "echo '--flags PA_ENABLE_LOG_ERROR_NOT_REACHED=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base/allocator/partition_allocator:logging_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/allocator/partition_allocator/logging_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base/allocator/partition_allocator:logging_buildflags__android_x86
-cc_genrule {
-    name: "cronet_aml_base_allocator_partition_allocator_logging_buildflags__android_x86",
-    cmd: "echo '--flags PA_ENABLE_LOG_ERROR_NOT_REACHED=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base/allocator/partition_allocator:logging_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/allocator/partition_allocator/logging_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base/allocator/partition_allocator:logging_buildflags__android_x86_64
-cc_genrule {
-    name: "cronet_aml_base_allocator_partition_allocator_logging_buildflags__android_x86_64",
-    cmd: "echo '--flags PA_ENABLE_LOG_ERROR_NOT_REACHED=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base/allocator/partition_allocator:logging_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/allocator/partition_allocator/logging_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base/allocator/partition_allocator:logging_buildflags__host
-cc_genrule {
-    name: "cronet_aml_base_allocator_partition_allocator_logging_buildflags__host",
-    cmd: "echo '--flags PA_ENABLE_LOG_ERROR_NOT_REACHED=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base/allocator/partition_allocator:logging_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    host_supported: true,
-    device_supported: false,
-    out: [
-        "base/allocator/partition_allocator/logging_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
 // GN: //base/allocator/partition_allocator:partition_alloc
 cc_library_static {
     name: "cronet_aml_base_allocator_partition_allocator_partition_alloc",
     srcs: [
+        ":cronet_aml_third_party_android_ndk_cpu_features",
         "base/allocator/partition_allocator/address_pool_manager.cc",
         "base/allocator/partition_allocator/address_pool_manager_bitmap.cc",
         "base/allocator/partition_allocator/address_space_randomization.cc",
@@ -619,9 +150,12 @@
         "base/allocator/partition_allocator/partition_alloc_base/check.cc",
         "base/allocator/partition_allocator/partition_alloc_base/cpu.cc",
         "base/allocator/partition_allocator/partition_alloc_base/debug/alias.cc",
+        "base/allocator/partition_allocator/partition_alloc_base/files/file_path.cc",
         "base/allocator/partition_allocator/partition_alloc_base/files/file_util_posix.cc",
         "base/allocator/partition_allocator/partition_alloc_base/logging.cc",
         "base/allocator/partition_allocator/partition_alloc_base/memory/ref_counted.cc",
+        "base/allocator/partition_allocator/partition_alloc_base/native_library.cc",
+        "base/allocator/partition_allocator/partition_alloc_base/native_library_posix.cc",
         "base/allocator/partition_allocator/partition_alloc_base/pkey.cc",
         "base/allocator/partition_allocator/partition_alloc_base/posix/safe_strerror.cc",
         "base/allocator/partition_allocator/partition_alloc_base/rand_util.cc",
@@ -630,6 +164,7 @@
         "base/allocator/partition_allocator/partition_alloc_base/threading/platform_thread.cc",
         "base/allocator/partition_allocator/partition_alloc_base/threading/platform_thread_posix.cc",
         "base/allocator/partition_allocator/partition_alloc_base/time/time.cc",
+        "base/allocator/partition_allocator/partition_alloc_base/time/time_android.cc",
         "base/allocator/partition_allocator/partition_alloc_base/time/time_conversion_posix.cc",
         "base/allocator/partition_allocator/partition_alloc_base/time/time_now_posix.cc",
         "base/allocator/partition_allocator/partition_alloc_base/time/time_override.cc",
@@ -653,15 +188,31 @@
         "base/allocator/partition_allocator/tagging.cc",
         "base/allocator/partition_allocator/thread_cache.cc",
     ],
-    host_supported: true,
+    generated_headers: [
+        "cronet_aml_base_allocator_partition_allocator_chromecast_buildflags",
+        "cronet_aml_base_allocator_partition_allocator_chromeos_buildflags",
+        "cronet_aml_base_allocator_partition_allocator_debugging_buildflags",
+        "cronet_aml_base_allocator_partition_allocator_logging_buildflags",
+        "cronet_aml_base_allocator_partition_allocator_partition_alloc_buildflags",
+    ],
+    export_generated_headers: [
+        "cronet_aml_base_allocator_partition_allocator_chromecast_buildflags",
+        "cronet_aml_base_allocator_partition_allocator_chromeos_buildflags",
+        "cronet_aml_base_allocator_partition_allocator_debugging_buildflags",
+        "cronet_aml_base_allocator_partition_allocator_logging_buildflags",
+        "cronet_aml_base_allocator_partition_allocator_partition_alloc_buildflags",
+    ],
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-DIS_PARTITION_ALLOC_IMPL",
         "-DPA_PCSCAN_STACK_SUPPORTED",
         "-D_DEBUG",
@@ -678,175 +229,45 @@
         "buildtools/third_party/libc++/",
         "buildtools/third_party/libc++/trunk/include",
         "buildtools/third_party/libc++abi/trunk/include",
+        "third_party/android_ndk/sources/android/cpufeatures/",
     ],
     cpp_std: "c++20",
     target: {
         android_arm: {
             srcs: [
-                ":cronet_aml_third_party_android_ndk_cpu_features",
-                "base/allocator/partition_allocator/partition_alloc_base/files/file_path.cc",
-                "base/allocator/partition_allocator/partition_alloc_base/native_library.cc",
-                "base/allocator/partition_allocator/partition_alloc_base/native_library_posix.cc",
-                "base/allocator/partition_allocator/partition_alloc_base/time/time_android.cc",
                 "base/allocator/partition_allocator/starscan/stack/asm/arm/push_registers_asm.cc",
             ],
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-            local_include_dirs: [
-                "third_party/android_ndk/sources/android/cpufeatures/",
-            ],
-            generated_headers: [
-                "cronet_aml_base_allocator_partition_allocator_chromecast_buildflags__android_arm",
-                "cronet_aml_base_allocator_partition_allocator_chromeos_buildflags__android_arm",
-                "cronet_aml_base_allocator_partition_allocator_debugging_buildflags__android_arm",
-                "cronet_aml_base_allocator_partition_allocator_logging_buildflags__android_arm",
-                "cronet_aml_base_allocator_partition_allocator_partition_alloc_buildflags__android_arm",
-            ],
-            export_generated_headers: [
-                "cronet_aml_base_allocator_partition_allocator_chromecast_buildflags__android_arm",
-                "cronet_aml_base_allocator_partition_allocator_chromeos_buildflags__android_arm",
-                "cronet_aml_base_allocator_partition_allocator_debugging_buildflags__android_arm",
-                "cronet_aml_base_allocator_partition_allocator_logging_buildflags__android_arm",
-                "cronet_aml_base_allocator_partition_allocator_partition_alloc_buildflags__android_arm",
-            ],
         },
         android_arm64: {
             srcs: [
-                ":cronet_aml_third_party_android_ndk_cpu_features",
-                "base/allocator/partition_allocator/partition_alloc_base/files/file_path.cc",
-                "base/allocator/partition_allocator/partition_alloc_base/native_library.cc",
-                "base/allocator/partition_allocator/partition_alloc_base/native_library_posix.cc",
-                "base/allocator/partition_allocator/partition_alloc_base/time/time_android.cc",
                 "base/allocator/partition_allocator/starscan/stack/asm/arm64/push_registers_asm.cc",
             ],
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-march=armv8-a+memtag",
             ],
-            local_include_dirs: [
-                "third_party/android_ndk/sources/android/cpufeatures/",
-            ],
-            generated_headers: [
-                "cronet_aml_base_allocator_partition_allocator_chromecast_buildflags__android_arm64",
-                "cronet_aml_base_allocator_partition_allocator_chromeos_buildflags__android_arm64",
-                "cronet_aml_base_allocator_partition_allocator_debugging_buildflags__android_arm64",
-                "cronet_aml_base_allocator_partition_allocator_logging_buildflags__android_arm64",
-                "cronet_aml_base_allocator_partition_allocator_partition_alloc_buildflags__android_arm64",
-            ],
-            export_generated_headers: [
-                "cronet_aml_base_allocator_partition_allocator_chromecast_buildflags__android_arm64",
-                "cronet_aml_base_allocator_partition_allocator_chromeos_buildflags__android_arm64",
-                "cronet_aml_base_allocator_partition_allocator_debugging_buildflags__android_arm64",
-                "cronet_aml_base_allocator_partition_allocator_logging_buildflags__android_arm64",
-                "cronet_aml_base_allocator_partition_allocator_partition_alloc_buildflags__android_arm64",
-            ],
         },
         android_x86: {
             srcs: [
-                ":cronet_aml_third_party_android_ndk_cpu_features",
-                "base/allocator/partition_allocator/partition_alloc_base/files/file_path.cc",
-                "base/allocator/partition_allocator/partition_alloc_base/native_library.cc",
-                "base/allocator/partition_allocator/partition_alloc_base/native_library_posix.cc",
-                "base/allocator/partition_allocator/partition_alloc_base/time/time_android.cc",
                 "base/allocator/partition_allocator/starscan/stack/asm/x86/push_registers_asm.cc",
             ],
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
-            local_include_dirs: [
-                "third_party/android_ndk/sources/android/cpufeatures/",
-            ],
-            generated_headers: [
-                "cronet_aml_base_allocator_partition_allocator_chromecast_buildflags__android_x86",
-                "cronet_aml_base_allocator_partition_allocator_chromeos_buildflags__android_x86",
-                "cronet_aml_base_allocator_partition_allocator_debugging_buildflags__android_x86",
-                "cronet_aml_base_allocator_partition_allocator_logging_buildflags__android_x86",
-                "cronet_aml_base_allocator_partition_allocator_partition_alloc_buildflags__android_x86",
-            ],
-            export_generated_headers: [
-                "cronet_aml_base_allocator_partition_allocator_chromecast_buildflags__android_x86",
-                "cronet_aml_base_allocator_partition_allocator_chromeos_buildflags__android_x86",
-                "cronet_aml_base_allocator_partition_allocator_debugging_buildflags__android_x86",
-                "cronet_aml_base_allocator_partition_allocator_logging_buildflags__android_x86",
-                "cronet_aml_base_allocator_partition_allocator_partition_alloc_buildflags__android_x86",
-            ],
         },
         android_x86_64: {
             srcs: [
-                ":cronet_aml_third_party_android_ndk_cpu_features",
-                "base/allocator/partition_allocator/partition_alloc_base/files/file_path.cc",
-                "base/allocator/partition_allocator/partition_alloc_base/native_library.cc",
-                "base/allocator/partition_allocator/partition_alloc_base/native_library_posix.cc",
-                "base/allocator/partition_allocator/partition_alloc_base/time/time_android.cc",
                 "base/allocator/partition_allocator/starscan/stack/asm/x64/push_registers_asm.cc",
             ],
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
-            local_include_dirs: [
-                "third_party/android_ndk/sources/android/cpufeatures/",
-            ],
-            generated_headers: [
-                "cronet_aml_base_allocator_partition_allocator_chromecast_buildflags__android_x86_64",
-                "cronet_aml_base_allocator_partition_allocator_chromeos_buildflags__android_x86_64",
-                "cronet_aml_base_allocator_partition_allocator_debugging_buildflags__android_x86_64",
-                "cronet_aml_base_allocator_partition_allocator_logging_buildflags__android_x86_64",
-                "cronet_aml_base_allocator_partition_allocator_partition_alloc_buildflags__android_x86_64",
-            ],
-            export_generated_headers: [
-                "cronet_aml_base_allocator_partition_allocator_chromecast_buildflags__android_x86_64",
-                "cronet_aml_base_allocator_partition_allocator_chromeos_buildflags__android_x86_64",
-                "cronet_aml_base_allocator_partition_allocator_debugging_buildflags__android_x86_64",
-                "cronet_aml_base_allocator_partition_allocator_logging_buildflags__android_x86_64",
-                "cronet_aml_base_allocator_partition_allocator_partition_alloc_buildflags__android_x86_64",
-            ],
-        },
-        host: {
-            srcs: [
-                "base/allocator/partition_allocator/starscan/stack/asm/x64/push_registers_asm.cc",
-            ],
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
-                "-msse3",
-            ],
-            generated_headers: [
-                "cronet_aml_base_allocator_partition_allocator_chromecast_buildflags__host",
-                "cronet_aml_base_allocator_partition_allocator_chromeos_buildflags__host",
-                "cronet_aml_base_allocator_partition_allocator_debugging_buildflags__host",
-                "cronet_aml_base_allocator_partition_allocator_logging_buildflags__host",
-                "cronet_aml_base_allocator_partition_allocator_partition_alloc_buildflags__host",
-            ],
-            export_generated_headers: [
-                "cronet_aml_base_allocator_partition_allocator_chromecast_buildflags__host",
-                "cronet_aml_base_allocator_partition_allocator_chromeos_buildflags__host",
-                "cronet_aml_base_allocator_partition_allocator_debugging_buildflags__host",
-                "cronet_aml_base_allocator_partition_allocator_logging_buildflags__host",
-                "cronet_aml_base_allocator_partition_allocator_partition_alloc_buildflags__host",
-            ],
         },
     },
 }
 
-// GN: //base/allocator/partition_allocator:partition_alloc_buildflags__android_arm
+// GN: //base/allocator/partition_allocator:partition_alloc_buildflags
 cc_genrule {
-    name: "cronet_aml_base_allocator_partition_allocator_partition_alloc_buildflags__android_arm",
+    name: "cronet_aml_base_allocator_partition_allocator_partition_alloc_buildflags",
     cmd: "echo '--flags ENABLE_PARTITION_ALLOC_AS_MALLOC_SUPPORT=\"true\" ENABLE_BACKUP_REF_PTR_SUPPORT=\"true\" ENABLE_BACKUP_REF_PTR_SLOW_CHECKS=\"false\" ENABLE_DANGLING_RAW_PTR_CHECKS=\"false\" PUT_REF_COUNT_IN_PREVIOUS_SLOT=\"true\" ENABLE_GWP_ASAN_SUPPORT=\"true\" ENABLE_MTE_CHECKED_PTR_SUPPORT=\"false\" RECORD_ALLOC_INFO=\"false\" USE_FREESLOT_BITMAP=\"false\" GLUE_CORE_POOLS=\"false\" ENABLE_SHADOW_METADATA_FOR_64_BITS_POINTERS=\"false\" STARSCAN=\"true\" PA_USE_BASE_TRACING=\"true\" ENABLE_PKEYS=\"false\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
@@ -867,103 +288,9 @@
     ],
 }
 
-// GN: //base/allocator/partition_allocator:partition_alloc_buildflags__android_arm64
+// GN: //base:anchor_functions_buildflags
 cc_genrule {
-    name: "cronet_aml_base_allocator_partition_allocator_partition_alloc_buildflags__android_arm64",
-    cmd: "echo '--flags ENABLE_PARTITION_ALLOC_AS_MALLOC_SUPPORT=\"true\" ENABLE_BACKUP_REF_PTR_SUPPORT=\"true\" ENABLE_BACKUP_REF_PTR_SLOW_CHECKS=\"false\" ENABLE_DANGLING_RAW_PTR_CHECKS=\"false\" PUT_REF_COUNT_IN_PREVIOUS_SLOT=\"true\" ENABLE_GWP_ASAN_SUPPORT=\"true\" ENABLE_MTE_CHECKED_PTR_SUPPORT=\"false\" RECORD_ALLOC_INFO=\"false\" USE_FREESLOT_BITMAP=\"false\" GLUE_CORE_POOLS=\"false\" ENABLE_SHADOW_METADATA_FOR_64_BITS_POINTERS=\"false\" STARSCAN=\"true\" PA_USE_BASE_TRACING=\"true\" ENABLE_PKEYS=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base/allocator/partition_allocator:partition_alloc_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/allocator/partition_allocator/partition_alloc_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base/allocator/partition_allocator:partition_alloc_buildflags__android_x86
-cc_genrule {
-    name: "cronet_aml_base_allocator_partition_allocator_partition_alloc_buildflags__android_x86",
-    cmd: "echo '--flags ENABLE_PARTITION_ALLOC_AS_MALLOC_SUPPORT=\"true\" ENABLE_BACKUP_REF_PTR_SUPPORT=\"true\" ENABLE_BACKUP_REF_PTR_SLOW_CHECKS=\"false\" ENABLE_DANGLING_RAW_PTR_CHECKS=\"false\" PUT_REF_COUNT_IN_PREVIOUS_SLOT=\"true\" ENABLE_GWP_ASAN_SUPPORT=\"true\" ENABLE_MTE_CHECKED_PTR_SUPPORT=\"false\" RECORD_ALLOC_INFO=\"false\" USE_FREESLOT_BITMAP=\"false\" GLUE_CORE_POOLS=\"false\" ENABLE_SHADOW_METADATA_FOR_64_BITS_POINTERS=\"false\" STARSCAN=\"true\" PA_USE_BASE_TRACING=\"true\" ENABLE_PKEYS=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base/allocator/partition_allocator:partition_alloc_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/allocator/partition_allocator/partition_alloc_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base/allocator/partition_allocator:partition_alloc_buildflags__android_x86_64
-cc_genrule {
-    name: "cronet_aml_base_allocator_partition_allocator_partition_alloc_buildflags__android_x86_64",
-    cmd: "echo '--flags ENABLE_PARTITION_ALLOC_AS_MALLOC_SUPPORT=\"true\" ENABLE_BACKUP_REF_PTR_SUPPORT=\"true\" ENABLE_BACKUP_REF_PTR_SLOW_CHECKS=\"false\" ENABLE_DANGLING_RAW_PTR_CHECKS=\"false\" PUT_REF_COUNT_IN_PREVIOUS_SLOT=\"true\" ENABLE_GWP_ASAN_SUPPORT=\"true\" ENABLE_MTE_CHECKED_PTR_SUPPORT=\"false\" RECORD_ALLOC_INFO=\"false\" USE_FREESLOT_BITMAP=\"false\" GLUE_CORE_POOLS=\"false\" ENABLE_SHADOW_METADATA_FOR_64_BITS_POINTERS=\"false\" STARSCAN=\"true\" PA_USE_BASE_TRACING=\"true\" ENABLE_PKEYS=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base/allocator/partition_allocator:partition_alloc_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/allocator/partition_allocator/partition_alloc_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base/allocator/partition_allocator:partition_alloc_buildflags__host
-cc_genrule {
-    name: "cronet_aml_base_allocator_partition_allocator_partition_alloc_buildflags__host",
-    cmd: "echo '--flags ENABLE_PARTITION_ALLOC_AS_MALLOC_SUPPORT=\"true\" ENABLE_BACKUP_REF_PTR_SUPPORT=\"true\" ENABLE_BACKUP_REF_PTR_SLOW_CHECKS=\"false\" ENABLE_DANGLING_RAW_PTR_CHECKS=\"false\" PUT_REF_COUNT_IN_PREVIOUS_SLOT=\"true\" ENABLE_GWP_ASAN_SUPPORT=\"true\" ENABLE_MTE_CHECKED_PTR_SUPPORT=\"false\" RECORD_ALLOC_INFO=\"false\" USE_FREESLOT_BITMAP=\"false\" GLUE_CORE_POOLS=\"false\" ENABLE_SHADOW_METADATA_FOR_64_BITS_POINTERS=\"false\" STARSCAN=\"true\" PA_USE_BASE_TRACING=\"true\" ENABLE_PKEYS=\"true\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base/allocator/partition_allocator:partition_alloc_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    host_supported: true,
-    device_supported: false,
-    out: [
-        "base/allocator/partition_allocator/partition_alloc_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:anchor_functions_buildflags__android_arm
-cc_genrule {
-    name: "cronet_aml_base_anchor_functions_buildflags__android_arm",
+    name: "cronet_aml_base_anchor_functions_buildflags",
     cmd: "echo '--flags USE_LLD=\"true\" SUPPORTS_CODE_ORDERING=\"true\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
@@ -984,217 +311,9 @@
     ],
 }
 
-// GN: //base:anchor_functions_buildflags__android_arm64
+// GN: //base:android_runtime_jni_headers
 cc_genrule {
-    name: "cronet_aml_base_anchor_functions_buildflags__android_arm64",
-    cmd: "echo '--flags USE_LLD=\"true\" SUPPORTS_CODE_ORDERING=\"true\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:anchor_functions_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/android/library_loader/anchor_functions_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:anchor_functions_buildflags__android_x86
-cc_genrule {
-    name: "cronet_aml_base_anchor_functions_buildflags__android_x86",
-    cmd: "echo '--flags USE_LLD=\"true\" SUPPORTS_CODE_ORDERING=\"true\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:anchor_functions_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/android/library_loader/anchor_functions_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:anchor_functions_buildflags__android_x86_64
-cc_genrule {
-    name: "cronet_aml_base_anchor_functions_buildflags__android_x86_64",
-    cmd: "echo '--flags USE_LLD=\"true\" SUPPORTS_CODE_ORDERING=\"true\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:anchor_functions_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/android/library_loader/anchor_functions_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:anchor_functions_buildflags__host
-cc_genrule {
-    name: "cronet_aml_base_anchor_functions_buildflags__host",
-    cmd: "echo '--flags USE_LLD=\"true\" SUPPORTS_CODE_ORDERING=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:anchor_functions_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    host_supported: true,
-    device_supported: false,
-    out: [
-        "base/android/library_loader/anchor_functions_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:android_runtime_jni_headers__android_arm
-cc_genrule {
-    name: "cronet_aml_base_android_runtime_jni_headers__android_arm",
-    cmd: "$(location base/android/jni_generator/jni_generator.py) --ptr_type " +
-         "long " +
-         "--output_dir " +
-         "$(genDir)/base/android_runtime_jni_headers " +
-         "--includes " +
-         "base/android/jni_generator/jni_generator_helper.h " +
-         "--jar_file " +
-         "$(location third_party/android_sdk/public/platforms/android-33/android.jar) " +
-         "--output_name " +
-         "Runnable_jni.h " +
-         "--output_name " +
-         "Runtime_jni.h " +
-         "--input_file " +
-         "java/lang/Runnable.class " +
-         "--input_file " +
-         "java/lang/Runtime.class " +
-         "--javap " +
-         "$$(find out/.path -name javap)",
-    out: [
-        "base/android_runtime_jni_headers/Runnable_jni.h",
-        "base/android_runtime_jni_headers/Runtime_jni.h",
-    ],
-    tool_files: [
-        "base/android/jni_generator/android_jar.classes",
-        "base/android/jni_generator/jni_generator.py",
-        "build/android/gyp/util/__init__.py",
-        "build/android/gyp/util/build_utils.py",
-        "build/gn_helpers.py",
-        "third_party/android_sdk/public/platforms/android-33/android.jar",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:android_runtime_jni_headers__android_arm64
-cc_genrule {
-    name: "cronet_aml_base_android_runtime_jni_headers__android_arm64",
-    cmd: "$(location base/android/jni_generator/jni_generator.py) --ptr_type " +
-         "long " +
-         "--output_dir " +
-         "$(genDir)/base/android_runtime_jni_headers " +
-         "--includes " +
-         "base/android/jni_generator/jni_generator_helper.h " +
-         "--jar_file " +
-         "$(location third_party/android_sdk/public/platforms/android-33/android.jar) " +
-         "--output_name " +
-         "Runnable_jni.h " +
-         "--output_name " +
-         "Runtime_jni.h " +
-         "--input_file " +
-         "java/lang/Runnable.class " +
-         "--input_file " +
-         "java/lang/Runtime.class " +
-         "--javap " +
-         "$$(find out/.path -name javap)",
-    out: [
-        "base/android_runtime_jni_headers/Runnable_jni.h",
-        "base/android_runtime_jni_headers/Runtime_jni.h",
-    ],
-    tool_files: [
-        "base/android/jni_generator/android_jar.classes",
-        "base/android/jni_generator/jni_generator.py",
-        "build/android/gyp/util/__init__.py",
-        "build/android/gyp/util/build_utils.py",
-        "build/gn_helpers.py",
-        "third_party/android_sdk/public/platforms/android-33/android.jar",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:android_runtime_jni_headers__android_x86
-cc_genrule {
-    name: "cronet_aml_base_android_runtime_jni_headers__android_x86",
-    cmd: "$(location base/android/jni_generator/jni_generator.py) --ptr_type " +
-         "long " +
-         "--output_dir " +
-         "$(genDir)/base/android_runtime_jni_headers " +
-         "--includes " +
-         "base/android/jni_generator/jni_generator_helper.h " +
-         "--jar_file " +
-         "$(location third_party/android_sdk/public/platforms/android-33/android.jar) " +
-         "--output_name " +
-         "Runnable_jni.h " +
-         "--output_name " +
-         "Runtime_jni.h " +
-         "--input_file " +
-         "java/lang/Runnable.class " +
-         "--input_file " +
-         "java/lang/Runtime.class " +
-         "--javap " +
-         "$$(find out/.path -name javap)",
-    out: [
-        "base/android_runtime_jni_headers/Runnable_jni.h",
-        "base/android_runtime_jni_headers/Runtime_jni.h",
-    ],
-    tool_files: [
-        "base/android/jni_generator/android_jar.classes",
-        "base/android/jni_generator/jni_generator.py",
-        "build/android/gyp/util/__init__.py",
-        "build/android/gyp/util/build_utils.py",
-        "build/gn_helpers.py",
-        "third_party/android_sdk/public/platforms/android-33/android.jar",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:android_runtime_jni_headers__android_x86_64
-cc_genrule {
-    name: "cronet_aml_base_android_runtime_jni_headers__android_x86_64",
+    name: "cronet_aml_base_android_runtime_jni_headers",
     cmd: "$(location base/android/jni_generator/jni_generator.py) --ptr_type " +
          "long " +
          "--output_dir " +
@@ -1281,17 +400,76 @@
         ":cronet_aml_third_party_abseil_cpp_absl_time_time",
         ":cronet_aml_third_party_abseil_cpp_absl_types_bad_optional_access",
         ":cronet_aml_third_party_abseil_cpp_absl_types_bad_variant_access",
+        ":cronet_aml_third_party_android_ndk_cpu_features",
+        ":cronet_aml_third_party_ashmem_ashmem",
         "base/allocator/allocator_check.cc",
         "base/allocator/allocator_extension.cc",
         "base/allocator/dispatcher/dispatcher.cc",
         "base/allocator/dispatcher/internal/dispatch_data.cc",
         "base/allocator/dispatcher/reentry_guard.cc",
         "base/allocator/partition_allocator/shim/allocator_shim.cc",
+        "base/allocator/partition_allocator/shim/allocator_shim_default_dispatch_to_linker_wrapped_symbols.cc",
+        "base/android/android_hardware_buffer_compat.cc",
+        "base/android/android_image_reader_compat.cc",
+        "base/android/apk_assets.cc",
+        "base/android/application_status_listener.cc",
+        "base/android/base_feature_list.cc",
+        "base/android/base_features.cc",
+        "base/android/base_jni_onload.cc",
+        "base/android/build_info.cc",
+        "base/android/bundle_utils.cc",
+        "base/android/callback_android.cc",
+        "base/android/child_process_service.cc",
+        "base/android/command_line_android.cc",
+        "base/android/content_uri_utils.cc",
+        "base/android/cpu_features.cc",
+        "base/android/early_trace_event_binding.cc",
+        "base/android/event_log.cc",
+        "base/android/feature_list_jni.cc",
+        "base/android/features_jni.cc",
+        "base/android/field_trial_list.cc",
+        "base/android/important_file_writer_android.cc",
+        "base/android/int_string_callback.cc",
+        "base/android/jank_metric_uma_recorder.cc",
+        "base/android/java_exception_reporter.cc",
+        "base/android/java_handler_thread.cc",
+        "base/android/java_heap_dump_generator.cc",
+        "base/android/java_runtime.cc",
+        "base/android/jni_android.cc",
+        "base/android/jni_array.cc",
+        "base/android/jni_registrar.cc",
+        "base/android/jni_string.cc",
+        "base/android/jni_utils.cc",
+        "base/android/jni_weak_ref.cc",
+        "base/android/library_loader/anchor_functions.cc",
+        "base/android/library_loader/library_loader_hooks.cc",
+        "base/android/library_loader/library_prefetcher.cc",
+        "base/android/library_loader/library_prefetcher_hooks.cc",
+        "base/android/locale_utils.cc",
+        "base/android/memory_pressure_listener_android.cc",
+        "base/android/native_uma_recorder.cc",
+        "base/android/path_service_android.cc",
+        "base/android/path_utils.cc",
+        "base/android/radio_utils.cc",
+        "base/android/reached_addresses_bitset.cc",
+        "base/android/remove_stale_data.cc",
+        "base/android/scoped_hardware_buffer_fence_sync.cc",
+        "base/android/scoped_hardware_buffer_handle.cc",
+        "base/android/scoped_java_ref.cc",
+        "base/android/statistics_recorder_android.cc",
+        "base/android/sys_utils.cc",
+        "base/android/task_scheduler/post_task_android.cc",
+        "base/android/task_scheduler/task_runner_android.cc",
+        "base/android/thread_instruction_count.cc",
+        "base/android/timezone_utils.cc",
+        "base/android/trace_event_binding.cc",
+        "base/android/unguessable_token_android.cc",
         "base/at_exit.cc",
         "base/barrier_closure.cc",
         "base/base64.cc",
         "base/base64url.cc",
         "base/base_paths.cc",
+        "base/base_paths_android.cc",
         "base/big_endian.cc",
         "base/build_time.cc",
         "base/callback_list.cc",
@@ -1318,6 +496,7 @@
         "base/debug/proc_maps_linux.cc",
         "base/debug/profiler.cc",
         "base/debug/stack_trace.cc",
+        "base/debug/stack_trace_android.cc",
         "base/debug/task_trace.cc",
         "base/environment.cc",
         "base/feature_list.cc",
@@ -1335,6 +514,7 @@
         "base/files/file_proxy.cc",
         "base/files/file_tracing.cc",
         "base/files/file_util.cc",
+        "base/files/file_util_android.cc",
         "base/files/file_util_posix.cc",
         "base/files/important_file_writer.cc",
         "base/files/important_file_writer_cleaner.cc",
@@ -1342,6 +522,7 @@
         "base/files/memory_mapped_file_posix.cc",
         "base/files/safe_base_name.cc",
         "base/files/scoped_file.cc",
+        "base/files/scoped_file_android.cc",
         "base/files/scoped_temp_dir.cc",
         "base/functional/callback_helpers.cc",
         "base/functional/callback_internal.cc",
@@ -1373,7 +554,9 @@
         "base/memory/nonscannable_memory.cc",
         "base/memory/page_size_posix.cc",
         "base/memory/platform_shared_memory_handle.cc",
+        "base/memory/platform_shared_memory_mapper_android.cc",
         "base/memory/platform_shared_memory_region.cc",
+        "base/memory/platform_shared_memory_region_android.cc",
         "base/memory/raw_ptr.cc",
         "base/memory/raw_ptr_asan_bound_arg_tracker.cc",
         "base/memory/raw_ptr_asan_service.cc",
@@ -1389,6 +572,7 @@
         "base/memory/weak_ptr.cc",
         "base/memory/writable_shared_memory_region.cc",
         "base/message_loop/message_pump.cc",
+        "base/message_loop/message_pump_android.cc",
         "base/message_loop/message_pump_default.cc",
         "base/message_loop/message_pump_epoll.cc",
         "base/message_loop/message_pump_libevent.cc",
@@ -1424,6 +608,7 @@
         "base/observer_list_threadsafe.cc",
         "base/observer_list_types.cc",
         "base/one_shot_event.cc",
+        "base/os_compat_android.cc",
         "base/path_service.cc",
         "base/pending_task.cc",
         "base/pickle.cc",
@@ -1437,6 +622,7 @@
         "base/power_monitor/moving_average.cc",
         "base/power_monitor/power_monitor.cc",
         "base/power_monitor/power_monitor_device_source.cc",
+        "base/power_monitor/power_monitor_device_source_android.cc",
         "base/power_monitor/power_monitor_features.cc",
         "base/power_monitor/power_monitor_source.cc",
         "base/power_monitor/sampling_event_source.cc",
@@ -1449,6 +635,7 @@
         "base/process/launch_posix.cc",
         "base/process/memory.cc",
         "base/process/memory_linux.cc",
+        "base/process/process_android.cc",
         "base/process/process_handle.cc",
         "base/process/process_handle_linux.cc",
         "base/process/process_handle_posix.cc",
@@ -1471,6 +658,7 @@
         "base/profiler/stack_copier_signal.cc",
         "base/profiler/stack_copier_suspend.cc",
         "base/profiler/stack_sampler.cc",
+        "base/profiler/stack_sampler_android.cc",
         "base/profiler/stack_sampler_impl.cc",
         "base/profiler/stack_sampling_profiler.cc",
         "base/profiler/thread_delegate_posix.cc",
@@ -1517,6 +705,7 @@
         "base/synchronization/waitable_event_watcher_posix.cc",
         "base/syslog_logging.cc",
         "base/system/sys_info.cc",
+        "base/system/sys_info_android.cc",
         "base/system/sys_info_linux.cc",
         "base/system/sys_info_posix.cc",
         "base/system/system_monitor.cc",
@@ -1595,6 +784,7 @@
         "base/third_party/superfasthash/superfasthash.c",
         "base/threading/hang_watcher.cc",
         "base/threading/platform_thread.cc",
+        "base/threading/platform_thread_android.cc",
         "base/threading/platform_thread_internal_posix.cc",
         "base/threading/platform_thread_posix.cc",
         "base/threading/platform_thread_ref.cc",
@@ -1621,6 +811,7 @@
         "base/time/default_tick_clock.cc",
         "base/time/tick_clock.cc",
         "base/time/time.cc",
+        "base/time/time_android.cc",
         "base/time/time_conversion_posix.cc",
         "base/time/time_delta_from_string.cc",
         "base/time/time_exploded_icu.cc",
@@ -1645,6 +836,10 @@
         "base/version.cc",
         "base/vlog.cc",
     ],
+    shared_libs: [
+        "libandroid",
+        "liblog",
+    ],
     static_libs: [
         "cronet_aml_base_allocator_partition_allocator_partition_alloc",
         "cronet_aml_base_base_static",
@@ -1656,16 +851,68 @@
         "cronet_aml_third_party_libevent_libevent",
         "cronet_aml_third_party_modp_b64_modp_b64",
     ],
-    host_supported: true,
+    generated_headers: [
+        "cronet_aml_base_allocator_buildflags",
+        "cronet_aml_base_anchor_functions_buildflags",
+        "cronet_aml_base_android_runtime_jni_headers",
+        "cronet_aml_base_base_jni_headers",
+        "cronet_aml_base_build_date",
+        "cronet_aml_base_cfi_buildflags",
+        "cronet_aml_base_clang_profiling_buildflags",
+        "cronet_aml_base_debugging_buildflags",
+        "cronet_aml_base_feature_list_buildflags",
+        "cronet_aml_base_ios_cronet_buildflags",
+        "cronet_aml_base_logging_buildflags",
+        "cronet_aml_base_message_pump_buildflags",
+        "cronet_aml_base_orderfile_buildflags",
+        "cronet_aml_base_parsing_buildflags",
+        "cronet_aml_base_power_monitor_buildflags",
+        "cronet_aml_base_profiler_buildflags",
+        "cronet_aml_base_sanitizer_buildflags",
+        "cronet_aml_base_synchronization_buildflags",
+        "cronet_aml_base_tracing_buildflags",
+        "cronet_aml_build_branding_buildflags",
+        "cronet_aml_build_chromecast_buildflags",
+        "cronet_aml_build_chromeos_buildflags",
+        "cronet_aml_build_config_compiler_compiler_buildflags",
+    ],
+    export_generated_headers: [
+        "cronet_aml_base_allocator_buildflags",
+        "cronet_aml_base_anchor_functions_buildflags",
+        "cronet_aml_base_android_runtime_jni_headers",
+        "cronet_aml_base_base_jni_headers",
+        "cronet_aml_base_build_date",
+        "cronet_aml_base_cfi_buildflags",
+        "cronet_aml_base_clang_profiling_buildflags",
+        "cronet_aml_base_debugging_buildflags",
+        "cronet_aml_base_feature_list_buildflags",
+        "cronet_aml_base_ios_cronet_buildflags",
+        "cronet_aml_base_logging_buildflags",
+        "cronet_aml_base_message_pump_buildflags",
+        "cronet_aml_base_orderfile_buildflags",
+        "cronet_aml_base_parsing_buildflags",
+        "cronet_aml_base_power_monitor_buildflags",
+        "cronet_aml_base_profiler_buildflags",
+        "cronet_aml_base_sanitizer_buildflags",
+        "cronet_aml_base_synchronization_buildflags",
+        "cronet_aml_base_tracing_buildflags",
+        "cronet_aml_build_branding_buildflags",
+        "cronet_aml_build_chromecast_buildflags",
+        "cronet_aml_build_chromeos_buildflags",
+        "cronet_aml_build_config_compiler_compiler_buildflags",
+    ],
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DBASE_IMPLEMENTATION",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE",
         "-DUSE_CHROMIUM_ICU=1",
         "-DU_ENABLE_DYLOAD=0",
@@ -1688,644 +935,42 @@
         "buildtools/third_party/libc++/trunk/include",
         "buildtools/third_party/libc++abi/trunk/include",
         "third_party/abseil-cpp/",
+        "third_party/android_ndk/sources/android/cpufeatures/",
         "third_party/boringssl/src/include/",
         "third_party/icu/source/common/",
         "third_party/icu/source/i18n/",
     ],
     cpp_std: "c++20",
     target: {
-        android: {
-            shared_libs: [
-                "libandroid",
-                "liblog",
-            ],
-        },
         android_arm: {
             srcs: [
-                ":cronet_aml_third_party_android_ndk_cpu_features",
-                ":cronet_aml_third_party_ashmem_ashmem",
-                "base/allocator/partition_allocator/shim/allocator_shim_default_dispatch_to_linker_wrapped_symbols.cc",
-                "base/android/android_hardware_buffer_compat.cc",
-                "base/android/android_image_reader_compat.cc",
-                "base/android/apk_assets.cc",
-                "base/android/application_status_listener.cc",
-                "base/android/base_feature_list.cc",
-                "base/android/base_features.cc",
-                "base/android/base_jni_onload.cc",
-                "base/android/build_info.cc",
-                "base/android/bundle_utils.cc",
-                "base/android/callback_android.cc",
-                "base/android/child_process_service.cc",
-                "base/android/command_line_android.cc",
-                "base/android/content_uri_utils.cc",
-                "base/android/cpu_features.cc",
-                "base/android/early_trace_event_binding.cc",
-                "base/android/event_log.cc",
-                "base/android/feature_list_jni.cc",
-                "base/android/features_jni.cc",
-                "base/android/field_trial_list.cc",
-                "base/android/important_file_writer_android.cc",
-                "base/android/int_string_callback.cc",
-                "base/android/jank_metric_uma_recorder.cc",
-                "base/android/java_exception_reporter.cc",
-                "base/android/java_handler_thread.cc",
-                "base/android/java_heap_dump_generator.cc",
-                "base/android/java_runtime.cc",
-                "base/android/jni_android.cc",
-                "base/android/jni_array.cc",
-                "base/android/jni_registrar.cc",
-                "base/android/jni_string.cc",
-                "base/android/jni_utils.cc",
-                "base/android/jni_weak_ref.cc",
-                "base/android/library_loader/anchor_functions.cc",
-                "base/android/library_loader/library_loader_hooks.cc",
-                "base/android/library_loader/library_prefetcher.cc",
-                "base/android/library_loader/library_prefetcher_hooks.cc",
-                "base/android/locale_utils.cc",
-                "base/android/memory_pressure_listener_android.cc",
-                "base/android/native_uma_recorder.cc",
-                "base/android/path_service_android.cc",
-                "base/android/path_utils.cc",
-                "base/android/radio_utils.cc",
-                "base/android/reached_addresses_bitset.cc",
                 "base/android/reached_code_profiler.cc",
-                "base/android/remove_stale_data.cc",
-                "base/android/scoped_hardware_buffer_fence_sync.cc",
-                "base/android/scoped_hardware_buffer_handle.cc",
-                "base/android/scoped_java_ref.cc",
-                "base/android/statistics_recorder_android.cc",
-                "base/android/sys_utils.cc",
-                "base/android/task_scheduler/post_task_android.cc",
-                "base/android/task_scheduler/task_runner_android.cc",
-                "base/android/thread_instruction_count.cc",
-                "base/android/timezone_utils.cc",
-                "base/android/trace_event_binding.cc",
-                "base/android/unguessable_token_android.cc",
-                "base/base_paths_android.cc",
-                "base/debug/stack_trace_android.cc",
-                "base/files/file_util_android.cc",
-                "base/files/scoped_file_android.cc",
-                "base/memory/platform_shared_memory_mapper_android.cc",
-                "base/memory/platform_shared_memory_region_android.cc",
-                "base/message_loop/message_pump_android.cc",
-                "base/os_compat_android.cc",
-                "base/power_monitor/power_monitor_device_source_android.cc",
-                "base/process/process_android.cc",
                 "base/profiler/chrome_unwind_info_android.cc",
                 "base/profiler/chrome_unwinder_android.cc",
                 "base/profiler/chrome_unwinder_android_v2.cc",
-                "base/profiler/stack_sampler_android.cc",
-                "base/system/sys_info_android.cc",
-                "base/threading/platform_thread_android.cc",
-                "base/time/time_android.cc",
                 "base/trace_event/cfi_backtrace_android.cc",
             ],
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-            local_include_dirs: [
-                "third_party/android_ndk/sources/android/cpufeatures/",
-            ],
-            generated_headers: [
-                "cronet_aml_base_allocator_buildflags__android_arm",
-                "cronet_aml_base_anchor_functions_buildflags__android_arm",
-                "cronet_aml_base_android_runtime_jni_headers__android_arm",
-                "cronet_aml_base_base_jni_headers__android_arm",
-                "cronet_aml_base_build_date__android_arm",
-                "cronet_aml_base_cfi_buildflags__android_arm",
-                "cronet_aml_base_clang_profiling_buildflags__android_arm",
-                "cronet_aml_base_debugging_buildflags__android_arm",
-                "cronet_aml_base_feature_list_buildflags__android_arm",
-                "cronet_aml_base_ios_cronet_buildflags__android_arm",
-                "cronet_aml_base_logging_buildflags__android_arm",
-                "cronet_aml_base_message_pump_buildflags__android_arm",
-                "cronet_aml_base_orderfile_buildflags__android_arm",
-                "cronet_aml_base_parsing_buildflags__android_arm",
-                "cronet_aml_base_power_monitor_buildflags__android_arm",
-                "cronet_aml_base_profiler_buildflags__android_arm",
-                "cronet_aml_base_sanitizer_buildflags__android_arm",
-                "cronet_aml_base_synchronization_buildflags__android_arm",
-                "cronet_aml_base_tracing_buildflags__android_arm",
-                "cronet_aml_build_branding_buildflags__android_arm",
-                "cronet_aml_build_chromecast_buildflags__android_arm",
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-                "cronet_aml_build_config_compiler_compiler_buildflags__android_arm",
-            ],
-            export_generated_headers: [
-                "cronet_aml_base_allocator_buildflags__android_arm",
-                "cronet_aml_base_anchor_functions_buildflags__android_arm",
-                "cronet_aml_base_android_runtime_jni_headers__android_arm",
-                "cronet_aml_base_base_jni_headers__android_arm",
-                "cronet_aml_base_build_date__android_arm",
-                "cronet_aml_base_cfi_buildflags__android_arm",
-                "cronet_aml_base_clang_profiling_buildflags__android_arm",
-                "cronet_aml_base_debugging_buildflags__android_arm",
-                "cronet_aml_base_feature_list_buildflags__android_arm",
-                "cronet_aml_base_ios_cronet_buildflags__android_arm",
-                "cronet_aml_base_logging_buildflags__android_arm",
-                "cronet_aml_base_message_pump_buildflags__android_arm",
-                "cronet_aml_base_orderfile_buildflags__android_arm",
-                "cronet_aml_base_parsing_buildflags__android_arm",
-                "cronet_aml_base_power_monitor_buildflags__android_arm",
-                "cronet_aml_base_profiler_buildflags__android_arm",
-                "cronet_aml_base_sanitizer_buildflags__android_arm",
-                "cronet_aml_base_synchronization_buildflags__android_arm",
-                "cronet_aml_base_tracing_buildflags__android_arm",
-                "cronet_aml_build_branding_buildflags__android_arm",
-                "cronet_aml_build_chromecast_buildflags__android_arm",
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-                "cronet_aml_build_config_compiler_compiler_buildflags__android_arm",
-            ],
         },
         android_arm64: {
             srcs: [
-                ":cronet_aml_third_party_android_ndk_cpu_features",
-                ":cronet_aml_third_party_ashmem_ashmem",
-                "base/allocator/partition_allocator/shim/allocator_shim_default_dispatch_to_linker_wrapped_symbols.cc",
-                "base/android/android_hardware_buffer_compat.cc",
-                "base/android/android_image_reader_compat.cc",
-                "base/android/apk_assets.cc",
-                "base/android/application_status_listener.cc",
-                "base/android/base_feature_list.cc",
-                "base/android/base_features.cc",
-                "base/android/base_jni_onload.cc",
-                "base/android/build_info.cc",
-                "base/android/bundle_utils.cc",
-                "base/android/callback_android.cc",
-                "base/android/child_process_service.cc",
-                "base/android/command_line_android.cc",
-                "base/android/content_uri_utils.cc",
-                "base/android/cpu_features.cc",
-                "base/android/early_trace_event_binding.cc",
-                "base/android/event_log.cc",
-                "base/android/feature_list_jni.cc",
-                "base/android/features_jni.cc",
-                "base/android/field_trial_list.cc",
-                "base/android/important_file_writer_android.cc",
-                "base/android/int_string_callback.cc",
-                "base/android/jank_metric_uma_recorder.cc",
-                "base/android/java_exception_reporter.cc",
-                "base/android/java_handler_thread.cc",
-                "base/android/java_heap_dump_generator.cc",
-                "base/android/java_runtime.cc",
-                "base/android/jni_android.cc",
-                "base/android/jni_array.cc",
-                "base/android/jni_registrar.cc",
-                "base/android/jni_string.cc",
-                "base/android/jni_utils.cc",
-                "base/android/jni_weak_ref.cc",
-                "base/android/library_loader/anchor_functions.cc",
-                "base/android/library_loader/library_loader_hooks.cc",
-                "base/android/library_loader/library_prefetcher.cc",
-                "base/android/library_loader/library_prefetcher_hooks.cc",
-                "base/android/locale_utils.cc",
-                "base/android/memory_pressure_listener_android.cc",
-                "base/android/native_uma_recorder.cc",
-                "base/android/path_service_android.cc",
-                "base/android/path_utils.cc",
-                "base/android/radio_utils.cc",
-                "base/android/reached_addresses_bitset.cc",
                 "base/android/reached_code_profiler.cc",
-                "base/android/remove_stale_data.cc",
-                "base/android/scoped_hardware_buffer_fence_sync.cc",
-                "base/android/scoped_hardware_buffer_handle.cc",
-                "base/android/scoped_java_ref.cc",
-                "base/android/statistics_recorder_android.cc",
-                "base/android/sys_utils.cc",
-                "base/android/task_scheduler/post_task_android.cc",
-                "base/android/task_scheduler/task_runner_android.cc",
-                "base/android/thread_instruction_count.cc",
-                "base/android/timezone_utils.cc",
-                "base/android/trace_event_binding.cc",
-                "base/android/unguessable_token_android.cc",
-                "base/base_paths_android.cc",
-                "base/debug/stack_trace_android.cc",
-                "base/files/file_util_android.cc",
-                "base/files/scoped_file_android.cc",
-                "base/memory/platform_shared_memory_mapper_android.cc",
-                "base/memory/platform_shared_memory_region_android.cc",
-                "base/message_loop/message_pump_android.cc",
-                "base/os_compat_android.cc",
-                "base/power_monitor/power_monitor_device_source_android.cc",
-                "base/process/process_android.cc",
-                "base/profiler/stack_sampler_android.cc",
-                "base/system/sys_info_android.cc",
-                "base/threading/platform_thread_android.cc",
-                "base/time/time_android.cc",
-            ],
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-            local_include_dirs: [
-                "third_party/android_ndk/sources/android/cpufeatures/",
-            ],
-            generated_headers: [
-                "cronet_aml_base_allocator_buildflags__android_arm64",
-                "cronet_aml_base_anchor_functions_buildflags__android_arm64",
-                "cronet_aml_base_android_runtime_jni_headers__android_arm64",
-                "cronet_aml_base_base_jni_headers__android_arm64",
-                "cronet_aml_base_build_date__android_arm64",
-                "cronet_aml_base_cfi_buildflags__android_arm64",
-                "cronet_aml_base_clang_profiling_buildflags__android_arm64",
-                "cronet_aml_base_debugging_buildflags__android_arm64",
-                "cronet_aml_base_feature_list_buildflags__android_arm64",
-                "cronet_aml_base_ios_cronet_buildflags__android_arm64",
-                "cronet_aml_base_logging_buildflags__android_arm64",
-                "cronet_aml_base_message_pump_buildflags__android_arm64",
-                "cronet_aml_base_orderfile_buildflags__android_arm64",
-                "cronet_aml_base_parsing_buildflags__android_arm64",
-                "cronet_aml_base_power_monitor_buildflags__android_arm64",
-                "cronet_aml_base_profiler_buildflags__android_arm64",
-                "cronet_aml_base_sanitizer_buildflags__android_arm64",
-                "cronet_aml_base_synchronization_buildflags__android_arm64",
-                "cronet_aml_base_tracing_buildflags__android_arm64",
-                "cronet_aml_build_branding_buildflags__android_arm64",
-                "cronet_aml_build_chromecast_buildflags__android_arm64",
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-                "cronet_aml_build_config_compiler_compiler_buildflags__android_arm64",
-            ],
-            export_generated_headers: [
-                "cronet_aml_base_allocator_buildflags__android_arm64",
-                "cronet_aml_base_anchor_functions_buildflags__android_arm64",
-                "cronet_aml_base_android_runtime_jni_headers__android_arm64",
-                "cronet_aml_base_base_jni_headers__android_arm64",
-                "cronet_aml_base_build_date__android_arm64",
-                "cronet_aml_base_cfi_buildflags__android_arm64",
-                "cronet_aml_base_clang_profiling_buildflags__android_arm64",
-                "cronet_aml_base_debugging_buildflags__android_arm64",
-                "cronet_aml_base_feature_list_buildflags__android_arm64",
-                "cronet_aml_base_ios_cronet_buildflags__android_arm64",
-                "cronet_aml_base_logging_buildflags__android_arm64",
-                "cronet_aml_base_message_pump_buildflags__android_arm64",
-                "cronet_aml_base_orderfile_buildflags__android_arm64",
-                "cronet_aml_base_parsing_buildflags__android_arm64",
-                "cronet_aml_base_power_monitor_buildflags__android_arm64",
-                "cronet_aml_base_profiler_buildflags__android_arm64",
-                "cronet_aml_base_sanitizer_buildflags__android_arm64",
-                "cronet_aml_base_synchronization_buildflags__android_arm64",
-                "cronet_aml_base_tracing_buildflags__android_arm64",
-                "cronet_aml_build_branding_buildflags__android_arm64",
-                "cronet_aml_build_chromecast_buildflags__android_arm64",
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-                "cronet_aml_build_config_compiler_compiler_buildflags__android_arm64",
             ],
         },
         android_x86: {
             srcs: [
-                ":cronet_aml_third_party_android_ndk_cpu_features",
-                ":cronet_aml_third_party_ashmem_ashmem",
-                "base/allocator/partition_allocator/shim/allocator_shim_default_dispatch_to_linker_wrapped_symbols.cc",
-                "base/android/android_hardware_buffer_compat.cc",
-                "base/android/android_image_reader_compat.cc",
-                "base/android/apk_assets.cc",
-                "base/android/application_status_listener.cc",
-                "base/android/base_feature_list.cc",
-                "base/android/base_features.cc",
-                "base/android/base_jni_onload.cc",
-                "base/android/build_info.cc",
-                "base/android/bundle_utils.cc",
-                "base/android/callback_android.cc",
-                "base/android/child_process_service.cc",
-                "base/android/command_line_android.cc",
-                "base/android/content_uri_utils.cc",
-                "base/android/cpu_features.cc",
-                "base/android/early_trace_event_binding.cc",
-                "base/android/event_log.cc",
-                "base/android/feature_list_jni.cc",
-                "base/android/features_jni.cc",
-                "base/android/field_trial_list.cc",
-                "base/android/important_file_writer_android.cc",
-                "base/android/int_string_callback.cc",
-                "base/android/jank_metric_uma_recorder.cc",
-                "base/android/java_exception_reporter.cc",
-                "base/android/java_handler_thread.cc",
-                "base/android/java_heap_dump_generator.cc",
-                "base/android/java_runtime.cc",
-                "base/android/jni_android.cc",
-                "base/android/jni_array.cc",
-                "base/android/jni_registrar.cc",
-                "base/android/jni_string.cc",
-                "base/android/jni_utils.cc",
-                "base/android/jni_weak_ref.cc",
-                "base/android/library_loader/anchor_functions.cc",
-                "base/android/library_loader/library_loader_hooks.cc",
-                "base/android/library_loader/library_prefetcher.cc",
-                "base/android/library_loader/library_prefetcher_hooks.cc",
-                "base/android/locale_utils.cc",
-                "base/android/memory_pressure_listener_android.cc",
-                "base/android/native_uma_recorder.cc",
-                "base/android/path_service_android.cc",
-                "base/android/path_utils.cc",
-                "base/android/radio_utils.cc",
-                "base/android/reached_addresses_bitset.cc",
                 "base/android/reached_code_profiler_stub.cc",
-                "base/android/remove_stale_data.cc",
-                "base/android/scoped_hardware_buffer_fence_sync.cc",
-                "base/android/scoped_hardware_buffer_handle.cc",
-                "base/android/scoped_java_ref.cc",
-                "base/android/statistics_recorder_android.cc",
-                "base/android/sys_utils.cc",
-                "base/android/task_scheduler/post_task_android.cc",
-                "base/android/task_scheduler/task_runner_android.cc",
-                "base/android/thread_instruction_count.cc",
-                "base/android/timezone_utils.cc",
-                "base/android/trace_event_binding.cc",
-                "base/android/unguessable_token_android.cc",
-                "base/base_paths_android.cc",
-                "base/debug/stack_trace_android.cc",
-                "base/files/file_util_android.cc",
-                "base/files/scoped_file_android.cc",
-                "base/memory/platform_shared_memory_mapper_android.cc",
-                "base/memory/platform_shared_memory_region_android.cc",
-                "base/message_loop/message_pump_android.cc",
-                "base/os_compat_android.cc",
-                "base/power_monitor/power_monitor_device_source_android.cc",
-                "base/process/process_android.cc",
-                "base/profiler/stack_sampler_android.cc",
-                "base/system/sys_info_android.cc",
-                "base/threading/platform_thread_android.cc",
-                "base/time/time_android.cc",
             ],
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
-            local_include_dirs: [
-                "third_party/android_ndk/sources/android/cpufeatures/",
-            ],
-            generated_headers: [
-                "cronet_aml_base_allocator_buildflags__android_x86",
-                "cronet_aml_base_anchor_functions_buildflags__android_x86",
-                "cronet_aml_base_android_runtime_jni_headers__android_x86",
-                "cronet_aml_base_base_jni_headers__android_x86",
-                "cronet_aml_base_build_date__android_x86",
-                "cronet_aml_base_cfi_buildflags__android_x86",
-                "cronet_aml_base_clang_profiling_buildflags__android_x86",
-                "cronet_aml_base_debugging_buildflags__android_x86",
-                "cronet_aml_base_feature_list_buildflags__android_x86",
-                "cronet_aml_base_ios_cronet_buildflags__android_x86",
-                "cronet_aml_base_logging_buildflags__android_x86",
-                "cronet_aml_base_message_pump_buildflags__android_x86",
-                "cronet_aml_base_orderfile_buildflags__android_x86",
-                "cronet_aml_base_parsing_buildflags__android_x86",
-                "cronet_aml_base_power_monitor_buildflags__android_x86",
-                "cronet_aml_base_profiler_buildflags__android_x86",
-                "cronet_aml_base_sanitizer_buildflags__android_x86",
-                "cronet_aml_base_synchronization_buildflags__android_x86",
-                "cronet_aml_base_tracing_buildflags__android_x86",
-                "cronet_aml_build_branding_buildflags__android_x86",
-                "cronet_aml_build_chromecast_buildflags__android_x86",
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-                "cronet_aml_build_config_compiler_compiler_buildflags__android_x86",
-            ],
-            export_generated_headers: [
-                "cronet_aml_base_allocator_buildflags__android_x86",
-                "cronet_aml_base_anchor_functions_buildflags__android_x86",
-                "cronet_aml_base_android_runtime_jni_headers__android_x86",
-                "cronet_aml_base_base_jni_headers__android_x86",
-                "cronet_aml_base_build_date__android_x86",
-                "cronet_aml_base_cfi_buildflags__android_x86",
-                "cronet_aml_base_clang_profiling_buildflags__android_x86",
-                "cronet_aml_base_debugging_buildflags__android_x86",
-                "cronet_aml_base_feature_list_buildflags__android_x86",
-                "cronet_aml_base_ios_cronet_buildflags__android_x86",
-                "cronet_aml_base_logging_buildflags__android_x86",
-                "cronet_aml_base_message_pump_buildflags__android_x86",
-                "cronet_aml_base_orderfile_buildflags__android_x86",
-                "cronet_aml_base_parsing_buildflags__android_x86",
-                "cronet_aml_base_power_monitor_buildflags__android_x86",
-                "cronet_aml_base_profiler_buildflags__android_x86",
-                "cronet_aml_base_sanitizer_buildflags__android_x86",
-                "cronet_aml_base_synchronization_buildflags__android_x86",
-                "cronet_aml_base_tracing_buildflags__android_x86",
-                "cronet_aml_build_branding_buildflags__android_x86",
-                "cronet_aml_build_chromecast_buildflags__android_x86",
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-                "cronet_aml_build_config_compiler_compiler_buildflags__android_x86",
-            ],
         },
         android_x86_64: {
             srcs: [
-                ":cronet_aml_third_party_android_ndk_cpu_features",
-                ":cronet_aml_third_party_ashmem_ashmem",
-                "base/allocator/partition_allocator/shim/allocator_shim_default_dispatch_to_linker_wrapped_symbols.cc",
-                "base/android/android_hardware_buffer_compat.cc",
-                "base/android/android_image_reader_compat.cc",
-                "base/android/apk_assets.cc",
-                "base/android/application_status_listener.cc",
-                "base/android/base_feature_list.cc",
-                "base/android/base_features.cc",
-                "base/android/base_jni_onload.cc",
-                "base/android/build_info.cc",
-                "base/android/bundle_utils.cc",
-                "base/android/callback_android.cc",
-                "base/android/child_process_service.cc",
-                "base/android/command_line_android.cc",
-                "base/android/content_uri_utils.cc",
-                "base/android/cpu_features.cc",
-                "base/android/early_trace_event_binding.cc",
-                "base/android/event_log.cc",
-                "base/android/feature_list_jni.cc",
-                "base/android/features_jni.cc",
-                "base/android/field_trial_list.cc",
-                "base/android/important_file_writer_android.cc",
-                "base/android/int_string_callback.cc",
-                "base/android/jank_metric_uma_recorder.cc",
-                "base/android/java_exception_reporter.cc",
-                "base/android/java_handler_thread.cc",
-                "base/android/java_heap_dump_generator.cc",
-                "base/android/java_runtime.cc",
-                "base/android/jni_android.cc",
-                "base/android/jni_array.cc",
-                "base/android/jni_registrar.cc",
-                "base/android/jni_string.cc",
-                "base/android/jni_utils.cc",
-                "base/android/jni_weak_ref.cc",
-                "base/android/library_loader/anchor_functions.cc",
-                "base/android/library_loader/library_loader_hooks.cc",
-                "base/android/library_loader/library_prefetcher.cc",
-                "base/android/library_loader/library_prefetcher_hooks.cc",
-                "base/android/locale_utils.cc",
-                "base/android/memory_pressure_listener_android.cc",
-                "base/android/native_uma_recorder.cc",
-                "base/android/path_service_android.cc",
-                "base/android/path_utils.cc",
-                "base/android/radio_utils.cc",
-                "base/android/reached_addresses_bitset.cc",
                 "base/android/reached_code_profiler_stub.cc",
-                "base/android/remove_stale_data.cc",
-                "base/android/scoped_hardware_buffer_fence_sync.cc",
-                "base/android/scoped_hardware_buffer_handle.cc",
-                "base/android/scoped_java_ref.cc",
-                "base/android/statistics_recorder_android.cc",
-                "base/android/sys_utils.cc",
-                "base/android/task_scheduler/post_task_android.cc",
-                "base/android/task_scheduler/task_runner_android.cc",
-                "base/android/thread_instruction_count.cc",
-                "base/android/timezone_utils.cc",
-                "base/android/trace_event_binding.cc",
-                "base/android/unguessable_token_android.cc",
-                "base/base_paths_android.cc",
-                "base/debug/stack_trace_android.cc",
-                "base/files/file_util_android.cc",
-                "base/files/scoped_file_android.cc",
-                "base/memory/platform_shared_memory_mapper_android.cc",
-                "base/memory/platform_shared_memory_region_android.cc",
-                "base/message_loop/message_pump_android.cc",
-                "base/os_compat_android.cc",
-                "base/power_monitor/power_monitor_device_source_android.cc",
-                "base/process/process_android.cc",
-                "base/profiler/stack_sampler_android.cc",
-                "base/system/sys_info_android.cc",
-                "base/threading/platform_thread_android.cc",
-                "base/time/time_android.cc",
             ],
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
-            local_include_dirs: [
-                "third_party/android_ndk/sources/android/cpufeatures/",
-            ],
-            generated_headers: [
-                "cronet_aml_base_allocator_buildflags__android_x86_64",
-                "cronet_aml_base_anchor_functions_buildflags__android_x86_64",
-                "cronet_aml_base_android_runtime_jni_headers__android_x86_64",
-                "cronet_aml_base_base_jni_headers__android_x86_64",
-                "cronet_aml_base_build_date__android_x86_64",
-                "cronet_aml_base_cfi_buildflags__android_x86_64",
-                "cronet_aml_base_clang_profiling_buildflags__android_x86_64",
-                "cronet_aml_base_debugging_buildflags__android_x86_64",
-                "cronet_aml_base_feature_list_buildflags__android_x86_64",
-                "cronet_aml_base_ios_cronet_buildflags__android_x86_64",
-                "cronet_aml_base_logging_buildflags__android_x86_64",
-                "cronet_aml_base_message_pump_buildflags__android_x86_64",
-                "cronet_aml_base_orderfile_buildflags__android_x86_64",
-                "cronet_aml_base_parsing_buildflags__android_x86_64",
-                "cronet_aml_base_power_monitor_buildflags__android_x86_64",
-                "cronet_aml_base_profiler_buildflags__android_x86_64",
-                "cronet_aml_base_sanitizer_buildflags__android_x86_64",
-                "cronet_aml_base_synchronization_buildflags__android_x86_64",
-                "cronet_aml_base_tracing_buildflags__android_x86_64",
-                "cronet_aml_build_branding_buildflags__android_x86_64",
-                "cronet_aml_build_chromecast_buildflags__android_x86_64",
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-                "cronet_aml_build_config_compiler_compiler_buildflags__android_x86_64",
-            ],
-            export_generated_headers: [
-                "cronet_aml_base_allocator_buildflags__android_x86_64",
-                "cronet_aml_base_anchor_functions_buildflags__android_x86_64",
-                "cronet_aml_base_android_runtime_jni_headers__android_x86_64",
-                "cronet_aml_base_base_jni_headers__android_x86_64",
-                "cronet_aml_base_build_date__android_x86_64",
-                "cronet_aml_base_cfi_buildflags__android_x86_64",
-                "cronet_aml_base_clang_profiling_buildflags__android_x86_64",
-                "cronet_aml_base_debugging_buildflags__android_x86_64",
-                "cronet_aml_base_feature_list_buildflags__android_x86_64",
-                "cronet_aml_base_ios_cronet_buildflags__android_x86_64",
-                "cronet_aml_base_logging_buildflags__android_x86_64",
-                "cronet_aml_base_message_pump_buildflags__android_x86_64",
-                "cronet_aml_base_orderfile_buildflags__android_x86_64",
-                "cronet_aml_base_parsing_buildflags__android_x86_64",
-                "cronet_aml_base_power_monitor_buildflags__android_x86_64",
-                "cronet_aml_base_profiler_buildflags__android_x86_64",
-                "cronet_aml_base_sanitizer_buildflags__android_x86_64",
-                "cronet_aml_base_synchronization_buildflags__android_x86_64",
-                "cronet_aml_base_tracing_buildflags__android_x86_64",
-                "cronet_aml_build_branding_buildflags__android_x86_64",
-                "cronet_aml_build_chromecast_buildflags__android_x86_64",
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-                "cronet_aml_build_config_compiler_compiler_buildflags__android_x86_64",
-            ],
-        },
-        host: {
-            srcs: [
-                "base/allocator/partition_allocator/shim/allocator_shim_default_dispatch_to_glibc.cc",
-                "base/base_paths_posix.cc",
-                "base/debug/stack_trace_posix.cc",
-                "base/files/file_util_linux.cc",
-                "base/files/scoped_file_linux.cc",
-                "base/memory/platform_shared_memory_mapper_posix.cc",
-                "base/memory/platform_shared_memory_region_posix.cc",
-                "base/nix/mime_util_xdg.cc",
-                "base/nix/xdg_util.cc",
-                "base/power_monitor/power_monitor_device_source_stub.cc",
-                "base/process/process_linux.cc",
-                "base/profiler/stack_sampler_posix.cc",
-                "base/stack_canary_linux.cc",
-                "base/threading/platform_thread_linux.cc",
-            ],
-            static_libs: [
-                "cronet_aml_base_third_party_symbolize_symbolize",
-                "cronet_aml_base_third_party_xdg_mime_xdg_mime",
-                "cronet_aml_base_third_party_xdg_user_dirs_xdg_user_dirs",
-            ],
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DGLOG_EXPORT=",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_SYMBOLIZE",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
-                "-msse3",
-            ],
-            generated_headers: [
-                "cronet_aml_base_allocator_buildflags__host",
-                "cronet_aml_base_anchor_functions_buildflags__host",
-                "cronet_aml_base_build_date__host",
-                "cronet_aml_base_cfi_buildflags__host",
-                "cronet_aml_base_clang_profiling_buildflags__host",
-                "cronet_aml_base_debugging_buildflags__host",
-                "cronet_aml_base_feature_list_buildflags__host",
-                "cronet_aml_base_ios_cronet_buildflags__host",
-                "cronet_aml_base_logging_buildflags__host",
-                "cronet_aml_base_message_pump_buildflags__host",
-                "cronet_aml_base_orderfile_buildflags__host",
-                "cronet_aml_base_parsing_buildflags__host",
-                "cronet_aml_base_power_monitor_buildflags__host",
-                "cronet_aml_base_profiler_buildflags__host",
-                "cronet_aml_base_sanitizer_buildflags__host",
-                "cronet_aml_base_synchronization_buildflags__host",
-                "cronet_aml_base_tracing_buildflags__host",
-                "cronet_aml_build_branding_buildflags__host",
-                "cronet_aml_build_chromecast_buildflags__host",
-                "cronet_aml_build_chromeos_buildflags__host",
-                "cronet_aml_build_config_compiler_compiler_buildflags__host",
-            ],
-            export_generated_headers: [
-                "cronet_aml_base_allocator_buildflags__host",
-                "cronet_aml_base_anchor_functions_buildflags__host",
-                "cronet_aml_base_build_date__host",
-                "cronet_aml_base_cfi_buildflags__host",
-                "cronet_aml_base_clang_profiling_buildflags__host",
-                "cronet_aml_base_debugging_buildflags__host",
-                "cronet_aml_base_feature_list_buildflags__host",
-                "cronet_aml_base_ios_cronet_buildflags__host",
-                "cronet_aml_base_logging_buildflags__host",
-                "cronet_aml_base_message_pump_buildflags__host",
-                "cronet_aml_base_orderfile_buildflags__host",
-                "cronet_aml_base_parsing_buildflags__host",
-                "cronet_aml_base_power_monitor_buildflags__host",
-                "cronet_aml_base_profiler_buildflags__host",
-                "cronet_aml_base_sanitizer_buildflags__host",
-                "cronet_aml_base_synchronization_buildflags__host",
-                "cronet_aml_base_tracing_buildflags__host",
-                "cronet_aml_build_branding_buildflags__host",
-                "cronet_aml_build_chromecast_buildflags__host",
-                "cronet_aml_build_chromeos_buildflags__host",
-                "cronet_aml_build_config_compiler_compiler_buildflags__host",
-            ],
         },
     },
 }
@@ -2363,807 +1008,9 @@
     ],
 }
 
-// GN: //base:base_jni_headers__android_arm
+// GN: //base:base_jni_headers
 cc_genrule {
-    name: "cronet_aml_base_base_jni_headers__android_arm",
-    srcs: [
-        "base/android/java/src/org/chromium/base/ApkAssets.java",
-        "base/android/java/src/org/chromium/base/ApplicationStatus.java",
-        "base/android/java/src/org/chromium/base/BaseFeatureList.java",
-        "base/android/java/src/org/chromium/base/BuildInfo.java",
-        "base/android/java/src/org/chromium/base/BundleUtils.java",
-        "base/android/java/src/org/chromium/base/Callback.java",
-        "base/android/java/src/org/chromium/base/CommandLine.java",
-        "base/android/java/src/org/chromium/base/ContentUriUtils.java",
-        "base/android/java/src/org/chromium/base/CpuFeatures.java",
-        "base/android/java/src/org/chromium/base/EarlyTraceEvent.java",
-        "base/android/java/src/org/chromium/base/EventLog.java",
-        "base/android/java/src/org/chromium/base/FeatureList.java",
-        "base/android/java/src/org/chromium/base/Features.java",
-        "base/android/java/src/org/chromium/base/FieldTrialList.java",
-        "base/android/java/src/org/chromium/base/FileUtils.java",
-        "base/android/java/src/org/chromium/base/ImportantFileWriterAndroid.java",
-        "base/android/java/src/org/chromium/base/IntStringCallback.java",
-        "base/android/java/src/org/chromium/base/JNIUtils.java",
-        "base/android/java/src/org/chromium/base/JavaExceptionReporter.java",
-        "base/android/java/src/org/chromium/base/JavaHandlerThread.java",
-        "base/android/java/src/org/chromium/base/LocaleUtils.java",
-        "base/android/java/src/org/chromium/base/MemoryPressureListener.java",
-        "base/android/java/src/org/chromium/base/PathService.java",
-        "base/android/java/src/org/chromium/base/PathUtils.java",
-        "base/android/java/src/org/chromium/base/PowerMonitor.java",
-        "base/android/java/src/org/chromium/base/RadioUtils.java",
-        "base/android/java/src/org/chromium/base/SysUtils.java",
-        "base/android/java/src/org/chromium/base/ThreadUtils.java",
-        "base/android/java/src/org/chromium/base/TimezoneUtils.java",
-        "base/android/java/src/org/chromium/base/TraceEvent.java",
-        "base/android/java/src/org/chromium/base/UnguessableToken.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/JankMetricUMARecorder.java",
-        "base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java",
-        "base/android/java/src/org/chromium/base/library_loader/LibraryPrefetcher.java",
-        "base/android/java/src/org/chromium/base/memory/JavaHeapDumpGenerator.java",
-        "base/android/java/src/org/chromium/base/metrics/NativeUmaRecorder.java",
-        "base/android/java/src/org/chromium/base/metrics/StatisticsRecorderAndroid.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildProcessService.java",
-        "base/android/java/src/org/chromium/base/task/PostTask.java",
-        "base/android/java/src/org/chromium/base/task/TaskRunnerImpl.java",
-    ],
-    cmd: "$(location base/android/jni_generator/jni_generator.py) --ptr_type " +
-         "long " +
-         "--output_dir " +
-         "$(genDir)/base/base_jni_headers " +
-         "--includes " +
-         "base/android/jni_generator/jni_generator_helper.h " +
-         "--use_proxy_hash " +
-         "--output_name " +
-         "ApkAssets_jni.h " +
-         "--output_name " +
-         "ApplicationStatus_jni.h " +
-         "--output_name " +
-         "BaseFeatureList_jni.h " +
-         "--output_name " +
-         "BuildInfo_jni.h " +
-         "--output_name " +
-         "BundleUtils_jni.h " +
-         "--output_name " +
-         "Callback_jni.h " +
-         "--output_name " +
-         "CommandLine_jni.h " +
-         "--output_name " +
-         "ContentUriUtils_jni.h " +
-         "--output_name " +
-         "CpuFeatures_jni.h " +
-         "--output_name " +
-         "EarlyTraceEvent_jni.h " +
-         "--output_name " +
-         "EventLog_jni.h " +
-         "--output_name " +
-         "FeatureList_jni.h " +
-         "--output_name " +
-         "Features_jni.h " +
-         "--output_name " +
-         "FieldTrialList_jni.h " +
-         "--output_name " +
-         "FileUtils_jni.h " +
-         "--output_name " +
-         "ImportantFileWriterAndroid_jni.h " +
-         "--output_name " +
-         "IntStringCallback_jni.h " +
-         "--output_name " +
-         "JNIUtils_jni.h " +
-         "--output_name " +
-         "JavaExceptionReporter_jni.h " +
-         "--output_name " +
-         "JavaHandlerThread_jni.h " +
-         "--output_name " +
-         "LocaleUtils_jni.h " +
-         "--output_name " +
-         "MemoryPressureListener_jni.h " +
-         "--output_name " +
-         "PathService_jni.h " +
-         "--output_name " +
-         "PathUtils_jni.h " +
-         "--output_name " +
-         "PowerMonitor_jni.h " +
-         "--output_name " +
-         "RadioUtils_jni.h " +
-         "--output_name " +
-         "SysUtils_jni.h " +
-         "--output_name " +
-         "ThreadUtils_jni.h " +
-         "--output_name " +
-         "TimezoneUtils_jni.h " +
-         "--output_name " +
-         "TraceEvent_jni.h " +
-         "--output_name " +
-         "UnguessableToken_jni.h " +
-         "--output_name " +
-         "JankMetricUMARecorder_jni.h " +
-         "--output_name " +
-         "LibraryLoader_jni.h " +
-         "--output_name " +
-         "LibraryPrefetcher_jni.h " +
-         "--output_name " +
-         "JavaHeapDumpGenerator_jni.h " +
-         "--output_name " +
-         "NativeUmaRecorder_jni.h " +
-         "--output_name " +
-         "StatisticsRecorderAndroid_jni.h " +
-         "--output_name " +
-         "ChildProcessService_jni.h " +
-         "--output_name " +
-         "PostTask_jni.h " +
-         "--output_name " +
-         "TaskRunnerImpl_jni.h " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/ApkAssets.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/ApplicationStatus.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/BaseFeatureList.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/BuildInfo.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/BundleUtils.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/Callback.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/CommandLine.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/ContentUriUtils.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/CpuFeatures.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/EarlyTraceEvent.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/EventLog.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/FeatureList.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/Features.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/FieldTrialList.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/FileUtils.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/ImportantFileWriterAndroid.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/IntStringCallback.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/JNIUtils.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/JavaExceptionReporter.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/JavaHandlerThread.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/LocaleUtils.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/MemoryPressureListener.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/PathService.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/PathUtils.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/PowerMonitor.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/RadioUtils.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/SysUtils.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/ThreadUtils.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/TimezoneUtils.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/TraceEvent.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/UnguessableToken.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/jank_tracker/JankMetricUMARecorder.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/library_loader/LibraryPrefetcher.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/memory/JavaHeapDumpGenerator.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/metrics/NativeUmaRecorder.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/metrics/StatisticsRecorderAndroid.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/process_launcher/ChildProcessService.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/task/PostTask.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/task/TaskRunnerImpl.java)",
-    out: [
-        "base/base_jni_headers/ApkAssets_jni.h",
-        "base/base_jni_headers/ApplicationStatus_jni.h",
-        "base/base_jni_headers/BaseFeatureList_jni.h",
-        "base/base_jni_headers/BuildInfo_jni.h",
-        "base/base_jni_headers/BundleUtils_jni.h",
-        "base/base_jni_headers/Callback_jni.h",
-        "base/base_jni_headers/ChildProcessService_jni.h",
-        "base/base_jni_headers/CommandLine_jni.h",
-        "base/base_jni_headers/ContentUriUtils_jni.h",
-        "base/base_jni_headers/CpuFeatures_jni.h",
-        "base/base_jni_headers/EarlyTraceEvent_jni.h",
-        "base/base_jni_headers/EventLog_jni.h",
-        "base/base_jni_headers/FeatureList_jni.h",
-        "base/base_jni_headers/Features_jni.h",
-        "base/base_jni_headers/FieldTrialList_jni.h",
-        "base/base_jni_headers/FileUtils_jni.h",
-        "base/base_jni_headers/ImportantFileWriterAndroid_jni.h",
-        "base/base_jni_headers/IntStringCallback_jni.h",
-        "base/base_jni_headers/JNIUtils_jni.h",
-        "base/base_jni_headers/JankMetricUMARecorder_jni.h",
-        "base/base_jni_headers/JavaExceptionReporter_jni.h",
-        "base/base_jni_headers/JavaHandlerThread_jni.h",
-        "base/base_jni_headers/JavaHeapDumpGenerator_jni.h",
-        "base/base_jni_headers/LibraryLoader_jni.h",
-        "base/base_jni_headers/LibraryPrefetcher_jni.h",
-        "base/base_jni_headers/LocaleUtils_jni.h",
-        "base/base_jni_headers/MemoryPressureListener_jni.h",
-        "base/base_jni_headers/NativeUmaRecorder_jni.h",
-        "base/base_jni_headers/PathService_jni.h",
-        "base/base_jni_headers/PathUtils_jni.h",
-        "base/base_jni_headers/PostTask_jni.h",
-        "base/base_jni_headers/PowerMonitor_jni.h",
-        "base/base_jni_headers/RadioUtils_jni.h",
-        "base/base_jni_headers/StatisticsRecorderAndroid_jni.h",
-        "base/base_jni_headers/SysUtils_jni.h",
-        "base/base_jni_headers/TaskRunnerImpl_jni.h",
-        "base/base_jni_headers/ThreadUtils_jni.h",
-        "base/base_jni_headers/TimezoneUtils_jni.h",
-        "base/base_jni_headers/TraceEvent_jni.h",
-        "base/base_jni_headers/UnguessableToken_jni.h",
-    ],
-    tool_files: [
-        "base/android/jni_generator/android_jar.classes",
-        "base/android/jni_generator/jni_generator.py",
-        "build/android/gyp/util/__init__.py",
-        "build/android/gyp/util/build_utils.py",
-        "build/gn_helpers.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:base_jni_headers__android_arm64
-cc_genrule {
-    name: "cronet_aml_base_base_jni_headers__android_arm64",
-    srcs: [
-        "base/android/java/src/org/chromium/base/ApkAssets.java",
-        "base/android/java/src/org/chromium/base/ApplicationStatus.java",
-        "base/android/java/src/org/chromium/base/BaseFeatureList.java",
-        "base/android/java/src/org/chromium/base/BuildInfo.java",
-        "base/android/java/src/org/chromium/base/BundleUtils.java",
-        "base/android/java/src/org/chromium/base/Callback.java",
-        "base/android/java/src/org/chromium/base/CommandLine.java",
-        "base/android/java/src/org/chromium/base/ContentUriUtils.java",
-        "base/android/java/src/org/chromium/base/CpuFeatures.java",
-        "base/android/java/src/org/chromium/base/EarlyTraceEvent.java",
-        "base/android/java/src/org/chromium/base/EventLog.java",
-        "base/android/java/src/org/chromium/base/FeatureList.java",
-        "base/android/java/src/org/chromium/base/Features.java",
-        "base/android/java/src/org/chromium/base/FieldTrialList.java",
-        "base/android/java/src/org/chromium/base/FileUtils.java",
-        "base/android/java/src/org/chromium/base/ImportantFileWriterAndroid.java",
-        "base/android/java/src/org/chromium/base/IntStringCallback.java",
-        "base/android/java/src/org/chromium/base/JNIUtils.java",
-        "base/android/java/src/org/chromium/base/JavaExceptionReporter.java",
-        "base/android/java/src/org/chromium/base/JavaHandlerThread.java",
-        "base/android/java/src/org/chromium/base/LocaleUtils.java",
-        "base/android/java/src/org/chromium/base/MemoryPressureListener.java",
-        "base/android/java/src/org/chromium/base/PathService.java",
-        "base/android/java/src/org/chromium/base/PathUtils.java",
-        "base/android/java/src/org/chromium/base/PowerMonitor.java",
-        "base/android/java/src/org/chromium/base/RadioUtils.java",
-        "base/android/java/src/org/chromium/base/SysUtils.java",
-        "base/android/java/src/org/chromium/base/ThreadUtils.java",
-        "base/android/java/src/org/chromium/base/TimezoneUtils.java",
-        "base/android/java/src/org/chromium/base/TraceEvent.java",
-        "base/android/java/src/org/chromium/base/UnguessableToken.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/JankMetricUMARecorder.java",
-        "base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java",
-        "base/android/java/src/org/chromium/base/library_loader/LibraryPrefetcher.java",
-        "base/android/java/src/org/chromium/base/memory/JavaHeapDumpGenerator.java",
-        "base/android/java/src/org/chromium/base/metrics/NativeUmaRecorder.java",
-        "base/android/java/src/org/chromium/base/metrics/StatisticsRecorderAndroid.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildProcessService.java",
-        "base/android/java/src/org/chromium/base/task/PostTask.java",
-        "base/android/java/src/org/chromium/base/task/TaskRunnerImpl.java",
-    ],
-    cmd: "$(location base/android/jni_generator/jni_generator.py) --ptr_type " +
-         "long " +
-         "--output_dir " +
-         "$(genDir)/base/base_jni_headers " +
-         "--includes " +
-         "base/android/jni_generator/jni_generator_helper.h " +
-         "--use_proxy_hash " +
-         "--output_name " +
-         "ApkAssets_jni.h " +
-         "--output_name " +
-         "ApplicationStatus_jni.h " +
-         "--output_name " +
-         "BaseFeatureList_jni.h " +
-         "--output_name " +
-         "BuildInfo_jni.h " +
-         "--output_name " +
-         "BundleUtils_jni.h " +
-         "--output_name " +
-         "Callback_jni.h " +
-         "--output_name " +
-         "CommandLine_jni.h " +
-         "--output_name " +
-         "ContentUriUtils_jni.h " +
-         "--output_name " +
-         "CpuFeatures_jni.h " +
-         "--output_name " +
-         "EarlyTraceEvent_jni.h " +
-         "--output_name " +
-         "EventLog_jni.h " +
-         "--output_name " +
-         "FeatureList_jni.h " +
-         "--output_name " +
-         "Features_jni.h " +
-         "--output_name " +
-         "FieldTrialList_jni.h " +
-         "--output_name " +
-         "FileUtils_jni.h " +
-         "--output_name " +
-         "ImportantFileWriterAndroid_jni.h " +
-         "--output_name " +
-         "IntStringCallback_jni.h " +
-         "--output_name " +
-         "JNIUtils_jni.h " +
-         "--output_name " +
-         "JavaExceptionReporter_jni.h " +
-         "--output_name " +
-         "JavaHandlerThread_jni.h " +
-         "--output_name " +
-         "LocaleUtils_jni.h " +
-         "--output_name " +
-         "MemoryPressureListener_jni.h " +
-         "--output_name " +
-         "PathService_jni.h " +
-         "--output_name " +
-         "PathUtils_jni.h " +
-         "--output_name " +
-         "PowerMonitor_jni.h " +
-         "--output_name " +
-         "RadioUtils_jni.h " +
-         "--output_name " +
-         "SysUtils_jni.h " +
-         "--output_name " +
-         "ThreadUtils_jni.h " +
-         "--output_name " +
-         "TimezoneUtils_jni.h " +
-         "--output_name " +
-         "TraceEvent_jni.h " +
-         "--output_name " +
-         "UnguessableToken_jni.h " +
-         "--output_name " +
-         "JankMetricUMARecorder_jni.h " +
-         "--output_name " +
-         "LibraryLoader_jni.h " +
-         "--output_name " +
-         "LibraryPrefetcher_jni.h " +
-         "--output_name " +
-         "JavaHeapDumpGenerator_jni.h " +
-         "--output_name " +
-         "NativeUmaRecorder_jni.h " +
-         "--output_name " +
-         "StatisticsRecorderAndroid_jni.h " +
-         "--output_name " +
-         "ChildProcessService_jni.h " +
-         "--output_name " +
-         "PostTask_jni.h " +
-         "--output_name " +
-         "TaskRunnerImpl_jni.h " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/ApkAssets.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/ApplicationStatus.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/BaseFeatureList.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/BuildInfo.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/BundleUtils.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/Callback.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/CommandLine.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/ContentUriUtils.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/CpuFeatures.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/EarlyTraceEvent.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/EventLog.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/FeatureList.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/Features.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/FieldTrialList.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/FileUtils.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/ImportantFileWriterAndroid.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/IntStringCallback.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/JNIUtils.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/JavaExceptionReporter.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/JavaHandlerThread.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/LocaleUtils.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/MemoryPressureListener.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/PathService.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/PathUtils.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/PowerMonitor.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/RadioUtils.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/SysUtils.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/ThreadUtils.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/TimezoneUtils.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/TraceEvent.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/UnguessableToken.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/jank_tracker/JankMetricUMARecorder.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/library_loader/LibraryPrefetcher.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/memory/JavaHeapDumpGenerator.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/metrics/NativeUmaRecorder.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/metrics/StatisticsRecorderAndroid.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/process_launcher/ChildProcessService.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/task/PostTask.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/task/TaskRunnerImpl.java)",
-    out: [
-        "base/base_jni_headers/ApkAssets_jni.h",
-        "base/base_jni_headers/ApplicationStatus_jni.h",
-        "base/base_jni_headers/BaseFeatureList_jni.h",
-        "base/base_jni_headers/BuildInfo_jni.h",
-        "base/base_jni_headers/BundleUtils_jni.h",
-        "base/base_jni_headers/Callback_jni.h",
-        "base/base_jni_headers/ChildProcessService_jni.h",
-        "base/base_jni_headers/CommandLine_jni.h",
-        "base/base_jni_headers/ContentUriUtils_jni.h",
-        "base/base_jni_headers/CpuFeatures_jni.h",
-        "base/base_jni_headers/EarlyTraceEvent_jni.h",
-        "base/base_jni_headers/EventLog_jni.h",
-        "base/base_jni_headers/FeatureList_jni.h",
-        "base/base_jni_headers/Features_jni.h",
-        "base/base_jni_headers/FieldTrialList_jni.h",
-        "base/base_jni_headers/FileUtils_jni.h",
-        "base/base_jni_headers/ImportantFileWriterAndroid_jni.h",
-        "base/base_jni_headers/IntStringCallback_jni.h",
-        "base/base_jni_headers/JNIUtils_jni.h",
-        "base/base_jni_headers/JankMetricUMARecorder_jni.h",
-        "base/base_jni_headers/JavaExceptionReporter_jni.h",
-        "base/base_jni_headers/JavaHandlerThread_jni.h",
-        "base/base_jni_headers/JavaHeapDumpGenerator_jni.h",
-        "base/base_jni_headers/LibraryLoader_jni.h",
-        "base/base_jni_headers/LibraryPrefetcher_jni.h",
-        "base/base_jni_headers/LocaleUtils_jni.h",
-        "base/base_jni_headers/MemoryPressureListener_jni.h",
-        "base/base_jni_headers/NativeUmaRecorder_jni.h",
-        "base/base_jni_headers/PathService_jni.h",
-        "base/base_jni_headers/PathUtils_jni.h",
-        "base/base_jni_headers/PostTask_jni.h",
-        "base/base_jni_headers/PowerMonitor_jni.h",
-        "base/base_jni_headers/RadioUtils_jni.h",
-        "base/base_jni_headers/StatisticsRecorderAndroid_jni.h",
-        "base/base_jni_headers/SysUtils_jni.h",
-        "base/base_jni_headers/TaskRunnerImpl_jni.h",
-        "base/base_jni_headers/ThreadUtils_jni.h",
-        "base/base_jni_headers/TimezoneUtils_jni.h",
-        "base/base_jni_headers/TraceEvent_jni.h",
-        "base/base_jni_headers/UnguessableToken_jni.h",
-    ],
-    tool_files: [
-        "base/android/jni_generator/android_jar.classes",
-        "base/android/jni_generator/jni_generator.py",
-        "build/android/gyp/util/__init__.py",
-        "build/android/gyp/util/build_utils.py",
-        "build/gn_helpers.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:base_jni_headers__android_x86
-cc_genrule {
-    name: "cronet_aml_base_base_jni_headers__android_x86",
-    srcs: [
-        "base/android/java/src/org/chromium/base/ApkAssets.java",
-        "base/android/java/src/org/chromium/base/ApplicationStatus.java",
-        "base/android/java/src/org/chromium/base/BaseFeatureList.java",
-        "base/android/java/src/org/chromium/base/BuildInfo.java",
-        "base/android/java/src/org/chromium/base/BundleUtils.java",
-        "base/android/java/src/org/chromium/base/Callback.java",
-        "base/android/java/src/org/chromium/base/CommandLine.java",
-        "base/android/java/src/org/chromium/base/ContentUriUtils.java",
-        "base/android/java/src/org/chromium/base/CpuFeatures.java",
-        "base/android/java/src/org/chromium/base/EarlyTraceEvent.java",
-        "base/android/java/src/org/chromium/base/EventLog.java",
-        "base/android/java/src/org/chromium/base/FeatureList.java",
-        "base/android/java/src/org/chromium/base/Features.java",
-        "base/android/java/src/org/chromium/base/FieldTrialList.java",
-        "base/android/java/src/org/chromium/base/FileUtils.java",
-        "base/android/java/src/org/chromium/base/ImportantFileWriterAndroid.java",
-        "base/android/java/src/org/chromium/base/IntStringCallback.java",
-        "base/android/java/src/org/chromium/base/JNIUtils.java",
-        "base/android/java/src/org/chromium/base/JavaExceptionReporter.java",
-        "base/android/java/src/org/chromium/base/JavaHandlerThread.java",
-        "base/android/java/src/org/chromium/base/LocaleUtils.java",
-        "base/android/java/src/org/chromium/base/MemoryPressureListener.java",
-        "base/android/java/src/org/chromium/base/PathService.java",
-        "base/android/java/src/org/chromium/base/PathUtils.java",
-        "base/android/java/src/org/chromium/base/PowerMonitor.java",
-        "base/android/java/src/org/chromium/base/RadioUtils.java",
-        "base/android/java/src/org/chromium/base/SysUtils.java",
-        "base/android/java/src/org/chromium/base/ThreadUtils.java",
-        "base/android/java/src/org/chromium/base/TimezoneUtils.java",
-        "base/android/java/src/org/chromium/base/TraceEvent.java",
-        "base/android/java/src/org/chromium/base/UnguessableToken.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/JankMetricUMARecorder.java",
-        "base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java",
-        "base/android/java/src/org/chromium/base/library_loader/LibraryPrefetcher.java",
-        "base/android/java/src/org/chromium/base/memory/JavaHeapDumpGenerator.java",
-        "base/android/java/src/org/chromium/base/metrics/NativeUmaRecorder.java",
-        "base/android/java/src/org/chromium/base/metrics/StatisticsRecorderAndroid.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildProcessService.java",
-        "base/android/java/src/org/chromium/base/task/PostTask.java",
-        "base/android/java/src/org/chromium/base/task/TaskRunnerImpl.java",
-    ],
-    cmd: "$(location base/android/jni_generator/jni_generator.py) --ptr_type " +
-         "long " +
-         "--output_dir " +
-         "$(genDir)/base/base_jni_headers " +
-         "--includes " +
-         "base/android/jni_generator/jni_generator_helper.h " +
-         "--use_proxy_hash " +
-         "--output_name " +
-         "ApkAssets_jni.h " +
-         "--output_name " +
-         "ApplicationStatus_jni.h " +
-         "--output_name " +
-         "BaseFeatureList_jni.h " +
-         "--output_name " +
-         "BuildInfo_jni.h " +
-         "--output_name " +
-         "BundleUtils_jni.h " +
-         "--output_name " +
-         "Callback_jni.h " +
-         "--output_name " +
-         "CommandLine_jni.h " +
-         "--output_name " +
-         "ContentUriUtils_jni.h " +
-         "--output_name " +
-         "CpuFeatures_jni.h " +
-         "--output_name " +
-         "EarlyTraceEvent_jni.h " +
-         "--output_name " +
-         "EventLog_jni.h " +
-         "--output_name " +
-         "FeatureList_jni.h " +
-         "--output_name " +
-         "Features_jni.h " +
-         "--output_name " +
-         "FieldTrialList_jni.h " +
-         "--output_name " +
-         "FileUtils_jni.h " +
-         "--output_name " +
-         "ImportantFileWriterAndroid_jni.h " +
-         "--output_name " +
-         "IntStringCallback_jni.h " +
-         "--output_name " +
-         "JNIUtils_jni.h " +
-         "--output_name " +
-         "JavaExceptionReporter_jni.h " +
-         "--output_name " +
-         "JavaHandlerThread_jni.h " +
-         "--output_name " +
-         "LocaleUtils_jni.h " +
-         "--output_name " +
-         "MemoryPressureListener_jni.h " +
-         "--output_name " +
-         "PathService_jni.h " +
-         "--output_name " +
-         "PathUtils_jni.h " +
-         "--output_name " +
-         "PowerMonitor_jni.h " +
-         "--output_name " +
-         "RadioUtils_jni.h " +
-         "--output_name " +
-         "SysUtils_jni.h " +
-         "--output_name " +
-         "ThreadUtils_jni.h " +
-         "--output_name " +
-         "TimezoneUtils_jni.h " +
-         "--output_name " +
-         "TraceEvent_jni.h " +
-         "--output_name " +
-         "UnguessableToken_jni.h " +
-         "--output_name " +
-         "JankMetricUMARecorder_jni.h " +
-         "--output_name " +
-         "LibraryLoader_jni.h " +
-         "--output_name " +
-         "LibraryPrefetcher_jni.h " +
-         "--output_name " +
-         "JavaHeapDumpGenerator_jni.h " +
-         "--output_name " +
-         "NativeUmaRecorder_jni.h " +
-         "--output_name " +
-         "StatisticsRecorderAndroid_jni.h " +
-         "--output_name " +
-         "ChildProcessService_jni.h " +
-         "--output_name " +
-         "PostTask_jni.h " +
-         "--output_name " +
-         "TaskRunnerImpl_jni.h " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/ApkAssets.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/ApplicationStatus.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/BaseFeatureList.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/BuildInfo.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/BundleUtils.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/Callback.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/CommandLine.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/ContentUriUtils.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/CpuFeatures.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/EarlyTraceEvent.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/EventLog.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/FeatureList.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/Features.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/FieldTrialList.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/FileUtils.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/ImportantFileWriterAndroid.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/IntStringCallback.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/JNIUtils.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/JavaExceptionReporter.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/JavaHandlerThread.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/LocaleUtils.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/MemoryPressureListener.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/PathService.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/PathUtils.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/PowerMonitor.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/RadioUtils.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/SysUtils.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/ThreadUtils.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/TimezoneUtils.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/TraceEvent.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/UnguessableToken.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/jank_tracker/JankMetricUMARecorder.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/library_loader/LibraryPrefetcher.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/memory/JavaHeapDumpGenerator.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/metrics/NativeUmaRecorder.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/metrics/StatisticsRecorderAndroid.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/process_launcher/ChildProcessService.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/task/PostTask.java) " +
-         "--input_file " +
-         "$(location base/android/java/src/org/chromium/base/task/TaskRunnerImpl.java)",
-    out: [
-        "base/base_jni_headers/ApkAssets_jni.h",
-        "base/base_jni_headers/ApplicationStatus_jni.h",
-        "base/base_jni_headers/BaseFeatureList_jni.h",
-        "base/base_jni_headers/BuildInfo_jni.h",
-        "base/base_jni_headers/BundleUtils_jni.h",
-        "base/base_jni_headers/Callback_jni.h",
-        "base/base_jni_headers/ChildProcessService_jni.h",
-        "base/base_jni_headers/CommandLine_jni.h",
-        "base/base_jni_headers/ContentUriUtils_jni.h",
-        "base/base_jni_headers/CpuFeatures_jni.h",
-        "base/base_jni_headers/EarlyTraceEvent_jni.h",
-        "base/base_jni_headers/EventLog_jni.h",
-        "base/base_jni_headers/FeatureList_jni.h",
-        "base/base_jni_headers/Features_jni.h",
-        "base/base_jni_headers/FieldTrialList_jni.h",
-        "base/base_jni_headers/FileUtils_jni.h",
-        "base/base_jni_headers/ImportantFileWriterAndroid_jni.h",
-        "base/base_jni_headers/IntStringCallback_jni.h",
-        "base/base_jni_headers/JNIUtils_jni.h",
-        "base/base_jni_headers/JankMetricUMARecorder_jni.h",
-        "base/base_jni_headers/JavaExceptionReporter_jni.h",
-        "base/base_jni_headers/JavaHandlerThread_jni.h",
-        "base/base_jni_headers/JavaHeapDumpGenerator_jni.h",
-        "base/base_jni_headers/LibraryLoader_jni.h",
-        "base/base_jni_headers/LibraryPrefetcher_jni.h",
-        "base/base_jni_headers/LocaleUtils_jni.h",
-        "base/base_jni_headers/MemoryPressureListener_jni.h",
-        "base/base_jni_headers/NativeUmaRecorder_jni.h",
-        "base/base_jni_headers/PathService_jni.h",
-        "base/base_jni_headers/PathUtils_jni.h",
-        "base/base_jni_headers/PostTask_jni.h",
-        "base/base_jni_headers/PowerMonitor_jni.h",
-        "base/base_jni_headers/RadioUtils_jni.h",
-        "base/base_jni_headers/StatisticsRecorderAndroid_jni.h",
-        "base/base_jni_headers/SysUtils_jni.h",
-        "base/base_jni_headers/TaskRunnerImpl_jni.h",
-        "base/base_jni_headers/ThreadUtils_jni.h",
-        "base/base_jni_headers/TimezoneUtils_jni.h",
-        "base/base_jni_headers/TraceEvent_jni.h",
-        "base/base_jni_headers/UnguessableToken_jni.h",
-    ],
-    tool_files: [
-        "base/android/jni_generator/android_jar.classes",
-        "base/android/jni_generator/jni_generator.py",
-        "build/android/gyp/util/__init__.py",
-        "build/android/gyp/util/build_utils.py",
-        "build/gn_helpers.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:base_jni_headers__android_x86_64
-cc_genrule {
-    name: "cronet_aml_base_base_jni_headers__android_x86_64",
+    name: "cronet_aml_base_base_jni_headers",
     srcs: [
         "base/android/java/src/org/chromium/base/ApkAssets.java",
         "base/android/java/src/org/chromium/base/ApplicationStatus.java",
@@ -3433,15 +1280,23 @@
     srcs: [
         "base/base_switches.cc",
     ],
-    host_supported: true,
+    generated_headers: [
+        "cronet_aml_build_chromeos_buildflags",
+    ],
+    export_generated_headers: [
+        "cronet_aml_build_chromeos_buildflags",
+    ],
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -3459,84 +1314,22 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-            ],
-            export_generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-            ],
-            export_generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-            ],
-            export_generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-            ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-            ],
-            export_generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
-                "-msse3",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__host",
-            ],
-            export_generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__host",
-            ],
         },
     },
 }
 
-// GN: //base:build_date__android_arm
+// GN: //base:build_date
 cc_genrule {
-    name: "cronet_aml_base_build_date__android_arm",
+    name: "cronet_aml_base_build_date",
     cmd: "$(location build/write_build_date_header.py) $(out) " +
          "1664686800",
     out: [
@@ -3550,75 +1343,9 @@
     ],
 }
 
-// GN: //base:build_date__android_arm64
+// GN: //base:cfi_buildflags
 cc_genrule {
-    name: "cronet_aml_base_build_date__android_arm64",
-    cmd: "$(location build/write_build_date_header.py) $(out) " +
-         "1664686800",
-    out: [
-        "base/generated_build_date.h",
-    ],
-    tool_files: [
-        "build/write_build_date_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:build_date__android_x86
-cc_genrule {
-    name: "cronet_aml_base_build_date__android_x86",
-    cmd: "$(location build/write_build_date_header.py) $(out) " +
-         "1664686800",
-    out: [
-        "base/generated_build_date.h",
-    ],
-    tool_files: [
-        "build/write_build_date_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:build_date__android_x86_64
-cc_genrule {
-    name: "cronet_aml_base_build_date__android_x86_64",
-    cmd: "$(location build/write_build_date_header.py) $(out) " +
-         "1664686800",
-    out: [
-        "base/generated_build_date.h",
-    ],
-    tool_files: [
-        "build/write_build_date_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:build_date__host
-cc_genrule {
-    name: "cronet_aml_base_build_date__host",
-    cmd: "$(location build/write_build_date_header.py) $(out) " +
-         "1664686800",
-    host_supported: true,
-    device_supported: false,
-    out: [
-        "base/generated_build_date.h",
-    ],
-    tool_files: [
-        "build/write_build_date_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:cfi_buildflags__android_arm
-cc_genrule {
-    name: "cronet_aml_base_cfi_buildflags__android_arm",
+    name: "cronet_aml_base_cfi_buildflags",
     cmd: "echo '--flags CFI_CAST_CHECK=\"false && false\" CFI_DIAG=\"false && false\" CFI_ICALL_CHECK=\"false && false\" CFI_ENFORCEMENT_TRAP=\"false && !false\" CFI_ENFORCEMENT_DIAGNOSTIC=\"false && false && !false\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
@@ -3639,103 +1366,9 @@
     ],
 }
 
-// GN: //base:cfi_buildflags__android_arm64
+// GN: //base:clang_profiling_buildflags
 cc_genrule {
-    name: "cronet_aml_base_cfi_buildflags__android_arm64",
-    cmd: "echo '--flags CFI_CAST_CHECK=\"false && false\" CFI_DIAG=\"false && false\" CFI_ICALL_CHECK=\"false && false\" CFI_ENFORCEMENT_TRAP=\"false && !false\" CFI_ENFORCEMENT_DIAGNOSTIC=\"false && false && !false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:cfi_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/cfi_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:cfi_buildflags__android_x86
-cc_genrule {
-    name: "cronet_aml_base_cfi_buildflags__android_x86",
-    cmd: "echo '--flags CFI_CAST_CHECK=\"false && false\" CFI_DIAG=\"false && false\" CFI_ICALL_CHECK=\"false && false\" CFI_ENFORCEMENT_TRAP=\"false && !false\" CFI_ENFORCEMENT_DIAGNOSTIC=\"false && false && !false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:cfi_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/cfi_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:cfi_buildflags__android_x86_64
-cc_genrule {
-    name: "cronet_aml_base_cfi_buildflags__android_x86_64",
-    cmd: "echo '--flags CFI_CAST_CHECK=\"false && false\" CFI_DIAG=\"false && false\" CFI_ICALL_CHECK=\"false && false\" CFI_ENFORCEMENT_TRAP=\"false && !false\" CFI_ENFORCEMENT_DIAGNOSTIC=\"false && false && !false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:cfi_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/cfi_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:cfi_buildflags__host
-cc_genrule {
-    name: "cronet_aml_base_cfi_buildflags__host",
-    cmd: "echo '--flags CFI_CAST_CHECK=\"false && false\" CFI_DIAG=\"false && false\" CFI_ICALL_CHECK=\"false && false\" CFI_ENFORCEMENT_TRAP=\"false && !false\" CFI_ENFORCEMENT_DIAGNOSTIC=\"false && false && !false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:cfi_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    host_supported: true,
-    device_supported: false,
-    out: [
-        "base/cfi_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:clang_profiling_buildflags__android_arm
-cc_genrule {
-    name: "cronet_aml_base_clang_profiling_buildflags__android_arm",
+    name: "cronet_aml_base_clang_profiling_buildflags",
     cmd: "echo '--flags CLANG_PROFILING=\"false\" CLANG_PROFILING_INSIDE_SANDBOX=\"false\" USE_CLANG_COVERAGE=\"false\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
@@ -3756,104 +1389,12 @@
     ],
 }
 
-// GN: //base:clang_profiling_buildflags__android_arm64
+// GN: //base:debugging_buildflags
 cc_genrule {
-    name: "cronet_aml_base_clang_profiling_buildflags__android_arm64",
-    cmd: "echo '--flags CLANG_PROFILING=\"false\" CLANG_PROFILING_INSIDE_SANDBOX=\"false\" USE_CLANG_COVERAGE=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:clang_profiling_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/clang_profiling_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:clang_profiling_buildflags__android_x86
-cc_genrule {
-    name: "cronet_aml_base_clang_profiling_buildflags__android_x86",
-    cmd: "echo '--flags CLANG_PROFILING=\"false\" CLANG_PROFILING_INSIDE_SANDBOX=\"false\" USE_CLANG_COVERAGE=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:clang_profiling_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/clang_profiling_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:clang_profiling_buildflags__android_x86_64
-cc_genrule {
-    name: "cronet_aml_base_clang_profiling_buildflags__android_x86_64",
-    cmd: "echo '--flags CLANG_PROFILING=\"false\" CLANG_PROFILING_INSIDE_SANDBOX=\"false\" USE_CLANG_COVERAGE=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:clang_profiling_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/clang_profiling_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:clang_profiling_buildflags__host
-cc_genrule {
-    name: "cronet_aml_base_clang_profiling_buildflags__host",
-    cmd: "echo '--flags CLANG_PROFILING=\"false\" CLANG_PROFILING_INSIDE_SANDBOX=\"false\" USE_CLANG_COVERAGE=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:clang_profiling_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    host_supported: true,
-    device_supported: false,
-    out: [
-        "base/clang_profiling_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:debugging_buildflags__android_arm
-cc_genrule {
-    name: "cronet_aml_base_debugging_buildflags__android_arm",
-    cmd: "echo '--flags DCHECK_IS_CONFIGURABLE=\"false\" ENABLE_LOCATION_SOURCE=\"true\" ENABLE_PROFILING=\"false\" CAN_UNWIND_WITH_FRAME_POINTERS=\"false\" UNSAFE_DEVELOPER_BUILD=\"true\" CAN_UNWIND_WITH_CFI_TABLE=\"true\" EXCLUDE_UNWIND_TABLES=\"false\" ENABLE_GDBINIT_WARNING=\"true\" ENABLE_LLDBINIT_WARNING=\"false\" EXPENSIVE_DCHECKS_ARE_ON=\"true\" ENABLE_STACK_TRACE_LINE_NUMBERS=\"false\"' | " +
+    name: "cronet_aml_base_debugging_buildflags",
+    cmd: "if [[ ( $$CC_ARCH == 'x86_64' && $$CC_OS == 'android' ) ]]; " +
+         "then " +
+         "echo '--flags DCHECK_IS_CONFIGURABLE=\"false\" ENABLE_LOCATION_SOURCE=\"true\" ENABLE_PROFILING=\"false\" CAN_UNWIND_WITH_FRAME_POINTERS=\"false\" UNSAFE_DEVELOPER_BUILD=\"true\" CAN_UNWIND_WITH_CFI_TABLE=\"false\" EXCLUDE_UNWIND_TABLES=\"false\" ENABLE_GDBINIT_WARNING=\"true\" ENABLE_LLDBINIT_WARNING=\"false\" EXPENSIVE_DCHECKS_ARE_ON=\"true\" ENABLE_STACK_TRACE_LINE_NUMBERS=\"false\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
          "--rulename " +
@@ -3861,7 +1402,44 @@
          "--gen-dir " +
          ". " +
          "--definitions " +
-         "/dev/stdin",
+         "/dev/stdin; " +
+         "fi; " +
+         "if [[ ( $$CC_ARCH == 'x86' && $$CC_OS == 'android' ) ]]; " +
+         "then " +
+         "echo '--flags DCHECK_IS_CONFIGURABLE=\"false\" ENABLE_LOCATION_SOURCE=\"true\" ENABLE_PROFILING=\"false\" CAN_UNWIND_WITH_FRAME_POINTERS=\"true\" UNSAFE_DEVELOPER_BUILD=\"true\" CAN_UNWIND_WITH_CFI_TABLE=\"false\" EXCLUDE_UNWIND_TABLES=\"false\" ENABLE_GDBINIT_WARNING=\"true\" ENABLE_LLDBINIT_WARNING=\"false\" EXPENSIVE_DCHECKS_ARE_ON=\"true\" ENABLE_STACK_TRACE_LINE_NUMBERS=\"false\"' | " +
+         "$(location build/write_buildflag_header.py) --output " +
+         "$(out) " +
+         "--rulename " +
+         "//base:debugging_buildflags " +
+         "--gen-dir " +
+         ". " +
+         "--definitions " +
+         "/dev/stdin; " +
+         "fi; " +
+         "if [[ ( $$CC_ARCH == 'arm' && $$CC_OS == 'android' ) ]]; " +
+         "then " +
+         "echo '--flags DCHECK_IS_CONFIGURABLE=\"false\" ENABLE_LOCATION_SOURCE=\"true\" ENABLE_PROFILING=\"false\" CAN_UNWIND_WITH_FRAME_POINTERS=\"false\" UNSAFE_DEVELOPER_BUILD=\"true\" CAN_UNWIND_WITH_CFI_TABLE=\"true\" EXCLUDE_UNWIND_TABLES=\"false\" ENABLE_GDBINIT_WARNING=\"true\" ENABLE_LLDBINIT_WARNING=\"false\" EXPENSIVE_DCHECKS_ARE_ON=\"true\" ENABLE_STACK_TRACE_LINE_NUMBERS=\"false\"' | " +
+         "$(location build/write_buildflag_header.py) --output " +
+         "$(out) " +
+         "--rulename " +
+         "//base:debugging_buildflags " +
+         "--gen-dir " +
+         ". " +
+         "--definitions " +
+         "/dev/stdin; " +
+         "fi; " +
+         "if [[ ( $$CC_ARCH == 'arm64' && $$CC_OS == 'android' ) ]]; " +
+         "then " +
+         "echo '--flags DCHECK_IS_CONFIGURABLE=\"false\" ENABLE_LOCATION_SOURCE=\"true\" ENABLE_PROFILING=\"false\" CAN_UNWIND_WITH_FRAME_POINTERS=\"true\" UNSAFE_DEVELOPER_BUILD=\"true\" CAN_UNWIND_WITH_CFI_TABLE=\"false\" EXCLUDE_UNWIND_TABLES=\"false\" ENABLE_GDBINIT_WARNING=\"true\" ENABLE_LLDBINIT_WARNING=\"false\" EXPENSIVE_DCHECKS_ARE_ON=\"true\" ENABLE_STACK_TRACE_LINE_NUMBERS=\"false\"' | " +
+         "$(location build/write_buildflag_header.py) --output " +
+         "$(out) " +
+         "--rulename " +
+         "//base:debugging_buildflags " +
+         "--gen-dir " +
+         ". " +
+         "--definitions " +
+         "/dev/stdin; " +
+         "fi;",
     out: [
         "base/debug/debugging_buildflags.h",
     ],
@@ -3873,103 +1451,9 @@
     ],
 }
 
-// GN: //base:debugging_buildflags__android_arm64
+// GN: //base:feature_list_buildflags
 cc_genrule {
-    name: "cronet_aml_base_debugging_buildflags__android_arm64",
-    cmd: "echo '--flags DCHECK_IS_CONFIGURABLE=\"false\" ENABLE_LOCATION_SOURCE=\"true\" ENABLE_PROFILING=\"false\" CAN_UNWIND_WITH_FRAME_POINTERS=\"true\" UNSAFE_DEVELOPER_BUILD=\"true\" CAN_UNWIND_WITH_CFI_TABLE=\"false\" EXCLUDE_UNWIND_TABLES=\"false\" ENABLE_GDBINIT_WARNING=\"true\" ENABLE_LLDBINIT_WARNING=\"false\" EXPENSIVE_DCHECKS_ARE_ON=\"true\" ENABLE_STACK_TRACE_LINE_NUMBERS=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:debugging_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/debug/debugging_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:debugging_buildflags__android_x86
-cc_genrule {
-    name: "cronet_aml_base_debugging_buildflags__android_x86",
-    cmd: "echo '--flags DCHECK_IS_CONFIGURABLE=\"false\" ENABLE_LOCATION_SOURCE=\"true\" ENABLE_PROFILING=\"false\" CAN_UNWIND_WITH_FRAME_POINTERS=\"true\" UNSAFE_DEVELOPER_BUILD=\"true\" CAN_UNWIND_WITH_CFI_TABLE=\"false\" EXCLUDE_UNWIND_TABLES=\"false\" ENABLE_GDBINIT_WARNING=\"true\" ENABLE_LLDBINIT_WARNING=\"false\" EXPENSIVE_DCHECKS_ARE_ON=\"true\" ENABLE_STACK_TRACE_LINE_NUMBERS=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:debugging_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/debug/debugging_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:debugging_buildflags__android_x86_64
-cc_genrule {
-    name: "cronet_aml_base_debugging_buildflags__android_x86_64",
-    cmd: "echo '--flags DCHECK_IS_CONFIGURABLE=\"false\" ENABLE_LOCATION_SOURCE=\"true\" ENABLE_PROFILING=\"false\" CAN_UNWIND_WITH_FRAME_POINTERS=\"false\" UNSAFE_DEVELOPER_BUILD=\"true\" CAN_UNWIND_WITH_CFI_TABLE=\"false\" EXCLUDE_UNWIND_TABLES=\"false\" ENABLE_GDBINIT_WARNING=\"true\" ENABLE_LLDBINIT_WARNING=\"false\" EXPENSIVE_DCHECKS_ARE_ON=\"true\" ENABLE_STACK_TRACE_LINE_NUMBERS=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:debugging_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/debug/debugging_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:debugging_buildflags__host
-cc_genrule {
-    name: "cronet_aml_base_debugging_buildflags__host",
-    cmd: "echo '--flags DCHECK_IS_CONFIGURABLE=\"false\" ENABLE_LOCATION_SOURCE=\"true\" ENABLE_PROFILING=\"false\" CAN_UNWIND_WITH_FRAME_POINTERS=\"true\" UNSAFE_DEVELOPER_BUILD=\"true\" CAN_UNWIND_WITH_CFI_TABLE=\"false\" EXCLUDE_UNWIND_TABLES=\"false\" ENABLE_GDBINIT_WARNING=\"true\" ENABLE_LLDBINIT_WARNING=\"false\" EXPENSIVE_DCHECKS_ARE_ON=\"true\" ENABLE_STACK_TRACE_LINE_NUMBERS=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:debugging_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    host_supported: true,
-    device_supported: false,
-    out: [
-        "base/debug/debugging_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:feature_list_buildflags__android_arm
-cc_genrule {
-    name: "cronet_aml_base_feature_list_buildflags__android_arm",
+    name: "cronet_aml_base_feature_list_buildflags",
     cmd: "echo '--flags ENABLE_BANNED_BASE_FEATURE_PREFIX=\"false\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
@@ -3990,103 +1474,9 @@
     ],
 }
 
-// GN: //base:feature_list_buildflags__android_arm64
+// GN: //base:ios_cronet_buildflags
 cc_genrule {
-    name: "cronet_aml_base_feature_list_buildflags__android_arm64",
-    cmd: "echo '--flags ENABLE_BANNED_BASE_FEATURE_PREFIX=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:feature_list_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/feature_list_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:feature_list_buildflags__android_x86
-cc_genrule {
-    name: "cronet_aml_base_feature_list_buildflags__android_x86",
-    cmd: "echo '--flags ENABLE_BANNED_BASE_FEATURE_PREFIX=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:feature_list_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/feature_list_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:feature_list_buildflags__android_x86_64
-cc_genrule {
-    name: "cronet_aml_base_feature_list_buildflags__android_x86_64",
-    cmd: "echo '--flags ENABLE_BANNED_BASE_FEATURE_PREFIX=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:feature_list_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/feature_list_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:feature_list_buildflags__host
-cc_genrule {
-    name: "cronet_aml_base_feature_list_buildflags__host",
-    cmd: "echo '--flags ENABLE_BANNED_BASE_FEATURE_PREFIX=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:feature_list_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    host_supported: true,
-    device_supported: false,
-    out: [
-        "base/feature_list_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:ios_cronet_buildflags__android_arm
-cc_genrule {
-    name: "cronet_aml_base_ios_cronet_buildflags__android_arm",
+    name: "cronet_aml_base_ios_cronet_buildflags",
     cmd: "echo '--flags CRONET_BUILD=\"false\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
@@ -4107,100 +1497,6 @@
     ],
 }
 
-// GN: //base:ios_cronet_buildflags__android_arm64
-cc_genrule {
-    name: "cronet_aml_base_ios_cronet_buildflags__android_arm64",
-    cmd: "echo '--flags CRONET_BUILD=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:ios_cronet_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/message_loop/ios_cronet_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:ios_cronet_buildflags__android_x86
-cc_genrule {
-    name: "cronet_aml_base_ios_cronet_buildflags__android_x86",
-    cmd: "echo '--flags CRONET_BUILD=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:ios_cronet_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/message_loop/ios_cronet_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:ios_cronet_buildflags__android_x86_64
-cc_genrule {
-    name: "cronet_aml_base_ios_cronet_buildflags__android_x86_64",
-    cmd: "echo '--flags CRONET_BUILD=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:ios_cronet_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/message_loop/ios_cronet_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:ios_cronet_buildflags__host
-cc_genrule {
-    name: "cronet_aml_base_ios_cronet_buildflags__host",
-    cmd: "echo '--flags CRONET_BUILD=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:ios_cronet_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    host_supported: true,
-    device_supported: false,
-    out: [
-        "base/message_loop/ios_cronet_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
 // GN: //base:java_features_srcjar
 java_genrule {
     name: "cronet_aml_base_java_features_srcjar",
@@ -4253,9 +1549,9 @@
     ],
 }
 
-// GN: //base:logging_buildflags__android_arm
+// GN: //base:logging_buildflags
 cc_genrule {
-    name: "cronet_aml_base_logging_buildflags__android_arm",
+    name: "cronet_aml_base_logging_buildflags",
     cmd: "echo '--flags ENABLE_LOG_ERROR_NOT_REACHED=\"false\" USE_RUNTIME_VLOG=\"true\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
@@ -4276,103 +1572,9 @@
     ],
 }
 
-// GN: //base:logging_buildflags__android_arm64
+// GN: //base:message_pump_buildflags
 cc_genrule {
-    name: "cronet_aml_base_logging_buildflags__android_arm64",
-    cmd: "echo '--flags ENABLE_LOG_ERROR_NOT_REACHED=\"false\" USE_RUNTIME_VLOG=\"true\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:logging_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/logging_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:logging_buildflags__android_x86
-cc_genrule {
-    name: "cronet_aml_base_logging_buildflags__android_x86",
-    cmd: "echo '--flags ENABLE_LOG_ERROR_NOT_REACHED=\"false\" USE_RUNTIME_VLOG=\"true\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:logging_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/logging_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:logging_buildflags__android_x86_64
-cc_genrule {
-    name: "cronet_aml_base_logging_buildflags__android_x86_64",
-    cmd: "echo '--flags ENABLE_LOG_ERROR_NOT_REACHED=\"false\" USE_RUNTIME_VLOG=\"true\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:logging_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/logging_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:logging_buildflags__host
-cc_genrule {
-    name: "cronet_aml_base_logging_buildflags__host",
-    cmd: "echo '--flags ENABLE_LOG_ERROR_NOT_REACHED=\"false\" USE_RUNTIME_VLOG=\"true\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:logging_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    host_supported: true,
-    device_supported: false,
-    out: [
-        "base/logging_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:message_pump_buildflags__android_arm
-cc_genrule {
-    name: "cronet_aml_base_message_pump_buildflags__android_arm",
+    name: "cronet_aml_base_message_pump_buildflags",
     cmd: "echo '--flags ENABLE_MESSAGE_PUMP_EPOLL=\"true\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
@@ -4393,112 +1595,20 @@
     ],
 }
 
-// GN: //base:message_pump_buildflags__android_arm64
-cc_genrule {
-    name: "cronet_aml_base_message_pump_buildflags__android_arm64",
-    cmd: "echo '--flags ENABLE_MESSAGE_PUMP_EPOLL=\"true\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:message_pump_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/message_loop/message_pump_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:message_pump_buildflags__android_x86
-cc_genrule {
-    name: "cronet_aml_base_message_pump_buildflags__android_x86",
-    cmd: "echo '--flags ENABLE_MESSAGE_PUMP_EPOLL=\"true\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:message_pump_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/message_loop/message_pump_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:message_pump_buildflags__android_x86_64
-cc_genrule {
-    name: "cronet_aml_base_message_pump_buildflags__android_x86_64",
-    cmd: "echo '--flags ENABLE_MESSAGE_PUMP_EPOLL=\"true\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:message_pump_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/message_loop/message_pump_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:message_pump_buildflags__host
-cc_genrule {
-    name: "cronet_aml_base_message_pump_buildflags__host",
-    cmd: "echo '--flags ENABLE_MESSAGE_PUMP_EPOLL=\"true\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:message_pump_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    host_supported: true,
-    device_supported: false,
-    out: [
-        "base/message_loop/message_pump_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
 // GN: //base/numerics:base_numerics
 cc_object {
     name: "cronet_aml_base_numerics_base_numerics",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -4516,54 +1626,22 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
     },
 }
 
-// GN: //base:orderfile_buildflags__android_arm
+// GN: //base:orderfile_buildflags
 cc_genrule {
-    name: "cronet_aml_base_orderfile_buildflags__android_arm",
+    name: "cronet_aml_base_orderfile_buildflags",
     cmd: "echo '--flags DEVTOOLS_INSTRUMENTATION_DUMPING=\"false\" ORDERFILE_INSTRUMENTATION=\"false\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
@@ -4584,103 +1662,9 @@
     ],
 }
 
-// GN: //base:orderfile_buildflags__android_arm64
+// GN: //base:parsing_buildflags
 cc_genrule {
-    name: "cronet_aml_base_orderfile_buildflags__android_arm64",
-    cmd: "echo '--flags DEVTOOLS_INSTRUMENTATION_DUMPING=\"false\" ORDERFILE_INSTRUMENTATION=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:orderfile_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/android/orderfile/orderfile_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:orderfile_buildflags__android_x86
-cc_genrule {
-    name: "cronet_aml_base_orderfile_buildflags__android_x86",
-    cmd: "echo '--flags DEVTOOLS_INSTRUMENTATION_DUMPING=\"false\" ORDERFILE_INSTRUMENTATION=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:orderfile_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/android/orderfile/orderfile_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:orderfile_buildflags__android_x86_64
-cc_genrule {
-    name: "cronet_aml_base_orderfile_buildflags__android_x86_64",
-    cmd: "echo '--flags DEVTOOLS_INSTRUMENTATION_DUMPING=\"false\" ORDERFILE_INSTRUMENTATION=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:orderfile_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/android/orderfile/orderfile_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:orderfile_buildflags__host
-cc_genrule {
-    name: "cronet_aml_base_orderfile_buildflags__host",
-    cmd: "echo '--flags DEVTOOLS_INSTRUMENTATION_DUMPING=\"false\" ORDERFILE_INSTRUMENTATION=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:orderfile_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    host_supported: true,
-    device_supported: false,
-    out: [
-        "base/android/orderfile/orderfile_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:parsing_buildflags__android_arm
-cc_genrule {
-    name: "cronet_aml_base_parsing_buildflags__android_arm",
+    name: "cronet_aml_base_parsing_buildflags",
     cmd: "echo '--flags BUILD_RUST_JSON_PARSER=\"false\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
@@ -4701,103 +1685,9 @@
     ],
 }
 
-// GN: //base:parsing_buildflags__android_arm64
+// GN: //base:power_monitor_buildflags
 cc_genrule {
-    name: "cronet_aml_base_parsing_buildflags__android_arm64",
-    cmd: "echo '--flags BUILD_RUST_JSON_PARSER=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:parsing_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/parsing_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:parsing_buildflags__android_x86
-cc_genrule {
-    name: "cronet_aml_base_parsing_buildflags__android_x86",
-    cmd: "echo '--flags BUILD_RUST_JSON_PARSER=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:parsing_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/parsing_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:parsing_buildflags__android_x86_64
-cc_genrule {
-    name: "cronet_aml_base_parsing_buildflags__android_x86_64",
-    cmd: "echo '--flags BUILD_RUST_JSON_PARSER=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:parsing_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/parsing_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:parsing_buildflags__host
-cc_genrule {
-    name: "cronet_aml_base_parsing_buildflags__host",
-    cmd: "echo '--flags BUILD_RUST_JSON_PARSER=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:parsing_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    host_supported: true,
-    device_supported: false,
-    out: [
-        "base/parsing_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:power_monitor_buildflags__android_arm
-cc_genrule {
-    name: "cronet_aml_base_power_monitor_buildflags__android_arm",
+    name: "cronet_aml_base_power_monitor_buildflags",
     cmd: "echo '--flags HAS_BATTERY_LEVEL_PROVIDER_IMPL=\"false\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
@@ -4818,104 +1708,12 @@
     ],
 }
 
-// GN: //base:power_monitor_buildflags__android_arm64
+// GN: //base:profiler_buildflags
 cc_genrule {
-    name: "cronet_aml_base_power_monitor_buildflags__android_arm64",
-    cmd: "echo '--flags HAS_BATTERY_LEVEL_PROVIDER_IMPL=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:power_monitor_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/power_monitor/power_monitor_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:power_monitor_buildflags__android_x86
-cc_genrule {
-    name: "cronet_aml_base_power_monitor_buildflags__android_x86",
-    cmd: "echo '--flags HAS_BATTERY_LEVEL_PROVIDER_IMPL=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:power_monitor_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/power_monitor/power_monitor_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:power_monitor_buildflags__android_x86_64
-cc_genrule {
-    name: "cronet_aml_base_power_monitor_buildflags__android_x86_64",
-    cmd: "echo '--flags HAS_BATTERY_LEVEL_PROVIDER_IMPL=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:power_monitor_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/power_monitor/power_monitor_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:power_monitor_buildflags__host
-cc_genrule {
-    name: "cronet_aml_base_power_monitor_buildflags__host",
-    cmd: "echo '--flags HAS_BATTERY_LEVEL_PROVIDER_IMPL=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:power_monitor_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    host_supported: true,
-    device_supported: false,
-    out: [
-        "base/power_monitor/power_monitor_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:profiler_buildflags__android_arm
-cc_genrule {
-    name: "cronet_aml_base_profiler_buildflags__android_arm",
-    cmd: "echo '--flags ENABLE_ARM_CFI_TABLE=\"true\" IOS_STACK_PROFILER_ENABLED=\"true\" USE_ANDROID_UNWINDER_V2=\"true\"' | " +
+    name: "cronet_aml_base_profiler_buildflags",
+    cmd: "if [[ ( $$CC_ARCH == 'x86_64' && $$CC_OS == 'android' ) ]]; " +
+         "then " +
+         "echo '--flags ENABLE_ARM_CFI_TABLE=\"false\" IOS_STACK_PROFILER_ENABLED=\"true\" USE_ANDROID_UNWINDER_V2=\"true\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
          "--rulename " +
@@ -4923,7 +1721,44 @@
          "--gen-dir " +
          ". " +
          "--definitions " +
-         "/dev/stdin",
+         "/dev/stdin; " +
+         "fi; " +
+         "if [[ ( $$CC_ARCH == 'x86' && $$CC_OS == 'android' ) ]]; " +
+         "then " +
+         "echo '--flags ENABLE_ARM_CFI_TABLE=\"false\" IOS_STACK_PROFILER_ENABLED=\"true\" USE_ANDROID_UNWINDER_V2=\"true\"' | " +
+         "$(location build/write_buildflag_header.py) --output " +
+         "$(out) " +
+         "--rulename " +
+         "//base:profiler_buildflags " +
+         "--gen-dir " +
+         ". " +
+         "--definitions " +
+         "/dev/stdin; " +
+         "fi; " +
+         "if [[ ( $$CC_ARCH == 'arm' && $$CC_OS == 'android' ) ]]; " +
+         "then " +
+         "echo '--flags ENABLE_ARM_CFI_TABLE=\"true\" IOS_STACK_PROFILER_ENABLED=\"true\" USE_ANDROID_UNWINDER_V2=\"true\"' | " +
+         "$(location build/write_buildflag_header.py) --output " +
+         "$(out) " +
+         "--rulename " +
+         "//base:profiler_buildflags " +
+         "--gen-dir " +
+         ". " +
+         "--definitions " +
+         "/dev/stdin; " +
+         "fi; " +
+         "if [[ ( $$CC_ARCH == 'arm64' && $$CC_OS == 'android' ) ]]; " +
+         "then " +
+         "echo '--flags ENABLE_ARM_CFI_TABLE=\"false\" IOS_STACK_PROFILER_ENABLED=\"true\" USE_ANDROID_UNWINDER_V2=\"true\"' | " +
+         "$(location build/write_buildflag_header.py) --output " +
+         "$(out) " +
+         "--rulename " +
+         "//base:profiler_buildflags " +
+         "--gen-dir " +
+         ". " +
+         "--definitions " +
+         "/dev/stdin; " +
+         "fi;",
     out: [
         "base/profiler/profiler_buildflags.h",
     ],
@@ -4935,103 +1770,9 @@
     ],
 }
 
-// GN: //base:profiler_buildflags__android_arm64
+// GN: //base:sanitizer_buildflags
 cc_genrule {
-    name: "cronet_aml_base_profiler_buildflags__android_arm64",
-    cmd: "echo '--flags ENABLE_ARM_CFI_TABLE=\"false\" IOS_STACK_PROFILER_ENABLED=\"true\" USE_ANDROID_UNWINDER_V2=\"true\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:profiler_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/profiler/profiler_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:profiler_buildflags__android_x86
-cc_genrule {
-    name: "cronet_aml_base_profiler_buildflags__android_x86",
-    cmd: "echo '--flags ENABLE_ARM_CFI_TABLE=\"false\" IOS_STACK_PROFILER_ENABLED=\"true\" USE_ANDROID_UNWINDER_V2=\"true\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:profiler_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/profiler/profiler_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:profiler_buildflags__android_x86_64
-cc_genrule {
-    name: "cronet_aml_base_profiler_buildflags__android_x86_64",
-    cmd: "echo '--flags ENABLE_ARM_CFI_TABLE=\"false\" IOS_STACK_PROFILER_ENABLED=\"true\" USE_ANDROID_UNWINDER_V2=\"true\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:profiler_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/profiler/profiler_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:profiler_buildflags__host
-cc_genrule {
-    name: "cronet_aml_base_profiler_buildflags__host",
-    cmd: "echo '--flags ENABLE_ARM_CFI_TABLE=\"false\" IOS_STACK_PROFILER_ENABLED=\"true\" USE_ANDROID_UNWINDER_V2=\"true\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:profiler_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    host_supported: true,
-    device_supported: false,
-    out: [
-        "base/profiler/profiler_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:sanitizer_buildflags__android_arm
-cc_genrule {
-    name: "cronet_aml_base_sanitizer_buildflags__android_arm",
+    name: "cronet_aml_base_sanitizer_buildflags",
     cmd: "echo '--flags IS_HWASAN=\"false\" USING_SANITIZER=\"false\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
@@ -5052,103 +1793,9 @@
     ],
 }
 
-// GN: //base:sanitizer_buildflags__android_arm64
+// GN: //base:synchronization_buildflags
 cc_genrule {
-    name: "cronet_aml_base_sanitizer_buildflags__android_arm64",
-    cmd: "echo '--flags IS_HWASAN=\"false\" USING_SANITIZER=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:sanitizer_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/sanitizer_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:sanitizer_buildflags__android_x86
-cc_genrule {
-    name: "cronet_aml_base_sanitizer_buildflags__android_x86",
-    cmd: "echo '--flags IS_HWASAN=\"false\" USING_SANITIZER=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:sanitizer_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/sanitizer_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:sanitizer_buildflags__android_x86_64
-cc_genrule {
-    name: "cronet_aml_base_sanitizer_buildflags__android_x86_64",
-    cmd: "echo '--flags IS_HWASAN=\"false\" USING_SANITIZER=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:sanitizer_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/sanitizer_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:sanitizer_buildflags__host
-cc_genrule {
-    name: "cronet_aml_base_sanitizer_buildflags__host",
-    cmd: "echo '--flags IS_HWASAN=\"false\" USING_SANITIZER=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:sanitizer_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    host_supported: true,
-    device_supported: false,
-    out: [
-        "base/sanitizer_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:synchronization_buildflags__android_arm
-cc_genrule {
-    name: "cronet_aml_base_synchronization_buildflags__android_arm",
+    name: "cronet_aml_base_synchronization_buildflags",
     cmd: "echo '--flags ENABLE_MUTEX_PRIORITY_INHERITANCE=\"false\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
@@ -5169,100 +1816,6 @@
     ],
 }
 
-// GN: //base:synchronization_buildflags__android_arm64
-cc_genrule {
-    name: "cronet_aml_base_synchronization_buildflags__android_arm64",
-    cmd: "echo '--flags ENABLE_MUTEX_PRIORITY_INHERITANCE=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:synchronization_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/synchronization/synchronization_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:synchronization_buildflags__android_x86
-cc_genrule {
-    name: "cronet_aml_base_synchronization_buildflags__android_x86",
-    cmd: "echo '--flags ENABLE_MUTEX_PRIORITY_INHERITANCE=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:synchronization_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/synchronization/synchronization_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:synchronization_buildflags__android_x86_64
-cc_genrule {
-    name: "cronet_aml_base_synchronization_buildflags__android_x86_64",
-    cmd: "echo '--flags ENABLE_MUTEX_PRIORITY_INHERITANCE=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:synchronization_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/synchronization/synchronization_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:synchronization_buildflags__host
-cc_genrule {
-    name: "cronet_aml_base_synchronization_buildflags__host",
-    cmd: "echo '--flags ENABLE_MUTEX_PRIORITY_INHERITANCE=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:synchronization_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    host_supported: true,
-    device_supported: false,
-    out: [
-        "base/synchronization/synchronization_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
 // GN: //base/third_party/double_conversion:double_conversion
 cc_library_static {
     name: "cronet_aml_base_third_party_double_conversion_double_conversion",
@@ -5276,15 +1829,17 @@
         "base/third_party/double_conversion/double-conversion/string-to-double.cc",
         "base/third_party/double_conversion/double-conversion/strtod.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -5302,45 +1857,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -5353,15 +1876,17 @@
     srcs: [
         "base/third_party/dynamic_annotations/dynamic_annotations.c",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -5377,185 +1902,22 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
     },
 }
 
-// GN: //base/third_party/symbolize:symbolize
-cc_library_static {
-    name: "cronet_aml_base_third_party_symbolize_symbolize",
-    srcs: [
-        "base/third_party/symbolize/demangle.cc",
-        "base/third_party/symbolize/symbolize.cc",
-    ],
-    host_supported: true,
-    device_supported: false,
-    defaults: [
-        "cronet_aml_defaults",
-    ],
-    cflags: [
-        "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
-        "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
-        "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-        "-DDCHECK_ALWAYS_ON=1",
-        "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
-        "-DGLOG_EXPORT=",
-        "-DUSE_AURA=1",
-        "-DUSE_OZONE=1",
-        "-DUSE_UDEV",
-        "-D_DEBUG",
-        "-D_FILE_OFFSET_BITS=64",
-        "-D_GNU_SOURCE",
-        "-D_LARGEFILE64_SOURCE",
-        "-D_LARGEFILE_SOURCE",
-        "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
-        "-D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS",
-        "-D_LIBCPP_ENABLE_ASSERTIONS_DEFAULT=1",
-        "-D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS",
-        "-msse3",
-    ],
-    local_include_dirs: [
-        "./",
-        "buildtools/third_party/libc++/",
-        "buildtools/third_party/libc++/trunk/include",
-        "buildtools/third_party/libc++abi/trunk/include",
-    ],
-    cpp_std: "c++20",
-}
-
-// GN: //base/third_party/xdg_mime:xdg_mime
-cc_library_static {
-    name: "cronet_aml_base_third_party_xdg_mime_xdg_mime",
-    srcs: [
-        "base/third_party/xdg_mime/xdgmime.c",
-        "base/third_party/xdg_mime/xdgmimealias.c",
-        "base/third_party/xdg_mime/xdgmimecache.c",
-        "base/third_party/xdg_mime/xdgmimeglob.c",
-        "base/third_party/xdg_mime/xdgmimeicon.c",
-        "base/third_party/xdg_mime/xdgmimeint.c",
-        "base/third_party/xdg_mime/xdgmimemagic.c",
-        "base/third_party/xdg_mime/xdgmimeparent.c",
-    ],
-    host_supported: true,
-    device_supported: false,
-    defaults: [
-        "cronet_aml_defaults",
-    ],
-    cflags: [
-        "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
-        "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
-        "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-        "-DDCHECK_ALWAYS_ON=1",
-        "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
-        "-DUSE_AURA=1",
-        "-DUSE_OZONE=1",
-        "-DUSE_UDEV",
-        "-D_DEBUG",
-        "-D_FILE_OFFSET_BITS=64",
-        "-D_GNU_SOURCE",
-        "-D_LARGEFILE64_SOURCE",
-        "-D_LARGEFILE_SOURCE",
-        "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
-        "-D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS",
-        "-D_LIBCPP_ENABLE_ASSERTIONS_DEFAULT=1",
-        "-D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS",
-        "-msse3",
-    ],
-    local_include_dirs: [
-        "./",
-        "buildtools/third_party/libc++/",
-        "buildtools/third_party/libc++/trunk/include",
-        "buildtools/third_party/libc++abi/trunk/include",
-    ],
-    cpp_std: "c++20",
-}
-
-// GN: //base/third_party/xdg_user_dirs:xdg_user_dirs
-cc_library_static {
-    name: "cronet_aml_base_third_party_xdg_user_dirs_xdg_user_dirs",
-    srcs: [
-        "base/third_party/xdg_user_dirs/xdg_user_dir_lookup.cc",
-    ],
-    host_supported: true,
-    device_supported: false,
-    defaults: [
-        "cronet_aml_defaults",
-    ],
-    cflags: [
-        "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
-        "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
-        "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-        "-DDCHECK_ALWAYS_ON=1",
-        "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
-        "-DUSE_AURA=1",
-        "-DUSE_OZONE=1",
-        "-DUSE_UDEV",
-        "-D_DEBUG",
-        "-D_FILE_OFFSET_BITS=64",
-        "-D_GNU_SOURCE",
-        "-D_LARGEFILE64_SOURCE",
-        "-D_LARGEFILE_SOURCE",
-        "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
-        "-D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS",
-        "-D_LIBCPP_ENABLE_ASSERTIONS_DEFAULT=1",
-        "-D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS",
-        "-D__STDC_CONSTANT_MACROS",
-        "-D__STDC_FORMAT_MACROS",
-        "-msse3",
-    ],
-    local_include_dirs: [
-        "./",
-        "buildtools/third_party/libc++/",
-        "buildtools/third_party/libc++/trunk/include",
-        "buildtools/third_party/libc++abi/trunk/include",
-    ],
-    cpp_std: "c++20",
-}
-
-// GN: //base:tracing_buildflags__android_arm
+// GN: //base:tracing_buildflags
 cc_genrule {
-    name: "cronet_aml_base_tracing_buildflags__android_arm",
+    name: "cronet_aml_base_tracing_buildflags",
     cmd: "echo '--flags ENABLE_BASE_TRACING=\"false\" USE_PERFETTO_CLIENT_LIBRARY=\"false\" OPTIONAL_TRACE_EVENTS_ENABLED=\"false\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
@@ -5576,100 +1938,6 @@
     ],
 }
 
-// GN: //base:tracing_buildflags__android_arm64
-cc_genrule {
-    name: "cronet_aml_base_tracing_buildflags__android_arm64",
-    cmd: "echo '--flags ENABLE_BASE_TRACING=\"false\" USE_PERFETTO_CLIENT_LIBRARY=\"false\" OPTIONAL_TRACE_EVENTS_ENABLED=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:tracing_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/tracing_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:tracing_buildflags__android_x86
-cc_genrule {
-    name: "cronet_aml_base_tracing_buildflags__android_x86",
-    cmd: "echo '--flags ENABLE_BASE_TRACING=\"false\" USE_PERFETTO_CLIENT_LIBRARY=\"false\" OPTIONAL_TRACE_EVENTS_ENABLED=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:tracing_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/tracing_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:tracing_buildflags__android_x86_64
-cc_genrule {
-    name: "cronet_aml_base_tracing_buildflags__android_x86_64",
-    cmd: "echo '--flags ENABLE_BASE_TRACING=\"false\" USE_PERFETTO_CLIENT_LIBRARY=\"false\" OPTIONAL_TRACE_EVENTS_ENABLED=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:tracing_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "base/tracing_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //base:tracing_buildflags__host
-cc_genrule {
-    name: "cronet_aml_base_tracing_buildflags__host",
-    cmd: "echo '--flags ENABLE_BASE_TRACING=\"false\" USE_PERFETTO_CLIENT_LIBRARY=\"false\" OPTIONAL_TRACE_EVENTS_ENABLED=\"true\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//base:tracing_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    host_supported: true,
-    device_supported: false,
-    out: [
-        "base/tracing_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
 // GN: //build/android:build_config_gen
 genrule {
     name: "cronet_aml_build_android_build_config_gen",
@@ -5731,9 +1999,9 @@
     ],
 }
 
-// GN: //build:branding_buildflags__android_arm
+// GN: //build:branding_buildflags
 cc_genrule {
-    name: "cronet_aml_build_branding_buildflags__android_arm",
+    name: "cronet_aml_build_branding_buildflags",
     cmd: "echo '--flags CHROMIUM_BRANDING=\"1\" GOOGLE_CHROME_BRANDING=\"0\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
@@ -5754,112 +2022,20 @@
     ],
 }
 
-// GN: //build:branding_buildflags__android_arm64
-cc_genrule {
-    name: "cronet_aml_build_branding_buildflags__android_arm64",
-    cmd: "echo '--flags CHROMIUM_BRANDING=\"1\" GOOGLE_CHROME_BRANDING=\"0\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//build:branding_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "build/branding_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //build:branding_buildflags__android_x86
-cc_genrule {
-    name: "cronet_aml_build_branding_buildflags__android_x86",
-    cmd: "echo '--flags CHROMIUM_BRANDING=\"1\" GOOGLE_CHROME_BRANDING=\"0\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//build:branding_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "build/branding_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //build:branding_buildflags__android_x86_64
-cc_genrule {
-    name: "cronet_aml_build_branding_buildflags__android_x86_64",
-    cmd: "echo '--flags CHROMIUM_BRANDING=\"1\" GOOGLE_CHROME_BRANDING=\"0\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//build:branding_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "build/branding_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //build:branding_buildflags__host
-cc_genrule {
-    name: "cronet_aml_build_branding_buildflags__host",
-    cmd: "echo '--flags CHROMIUM_BRANDING=\"1\" GOOGLE_CHROME_BRANDING=\"0\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//build:branding_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    host_supported: true,
-    device_supported: false,
-    out: [
-        "build/branding_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
 // GN: //build:buildflag_header_h
 cc_object {
     name: "cronet_aml_build_buildflag_header_h",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -5877,54 +2053,22 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
     },
 }
 
-// GN: //build:chromecast_buildflags__android_arm
+// GN: //build:chromecast_buildflags
 cc_genrule {
-    name: "cronet_aml_build_chromecast_buildflags__android_arm",
+    name: "cronet_aml_build_chromecast_buildflags",
     cmd: "echo '--flags IS_CASTOS=\"false\" IS_CAST_ANDROID=\"false\" ENABLE_CAST_RECEIVER=\"false\" IS_CHROMECAST=\"false\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
@@ -5945,103 +2089,9 @@
     ],
 }
 
-// GN: //build:chromecast_buildflags__android_arm64
+// GN: //build:chromeos_buildflags
 cc_genrule {
-    name: "cronet_aml_build_chromecast_buildflags__android_arm64",
-    cmd: "echo '--flags IS_CASTOS=\"false\" IS_CAST_ANDROID=\"false\" ENABLE_CAST_RECEIVER=\"false\" IS_CHROMECAST=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//build:chromecast_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "build/chromecast_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //build:chromecast_buildflags__android_x86
-cc_genrule {
-    name: "cronet_aml_build_chromecast_buildflags__android_x86",
-    cmd: "echo '--flags IS_CASTOS=\"false\" IS_CAST_ANDROID=\"false\" ENABLE_CAST_RECEIVER=\"false\" IS_CHROMECAST=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//build:chromecast_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "build/chromecast_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //build:chromecast_buildflags__android_x86_64
-cc_genrule {
-    name: "cronet_aml_build_chromecast_buildflags__android_x86_64",
-    cmd: "echo '--flags IS_CASTOS=\"false\" IS_CAST_ANDROID=\"false\" ENABLE_CAST_RECEIVER=\"false\" IS_CHROMECAST=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//build:chromecast_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "build/chromecast_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //build:chromecast_buildflags__host
-cc_genrule {
-    name: "cronet_aml_build_chromecast_buildflags__host",
-    cmd: "echo '--flags IS_CASTOS=\"false\" IS_CAST_ANDROID=\"false\" ENABLE_CAST_RECEIVER=\"false\" IS_CHROMECAST=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//build:chromecast_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    host_supported: true,
-    device_supported: false,
-    out: [
-        "build/chromecast_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //build:chromeos_buildflags__android_arm
-cc_genrule {
-    name: "cronet_aml_build_chromeos_buildflags__android_arm",
+    name: "cronet_aml_build_chromeos_buildflags",
     cmd: "echo '--flags IS_CHROMEOS_DEVICE=\"false\" IS_CHROMEOS_LACROS=\"false\" IS_CHROMEOS_ASH=\"false\" IS_CHROMEOS_WITH_HW_DETAILS=\"false\" IS_REVEN=\"false\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
@@ -6062,103 +2112,9 @@
     ],
 }
 
-// GN: //build:chromeos_buildflags__android_arm64
+// GN: //build/config/compiler:compiler_buildflags
 cc_genrule {
-    name: "cronet_aml_build_chromeos_buildflags__android_arm64",
-    cmd: "echo '--flags IS_CHROMEOS_DEVICE=\"false\" IS_CHROMEOS_LACROS=\"false\" IS_CHROMEOS_ASH=\"false\" IS_CHROMEOS_WITH_HW_DETAILS=\"false\" IS_REVEN=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//build:chromeos_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "build/chromeos_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //build:chromeos_buildflags__android_x86
-cc_genrule {
-    name: "cronet_aml_build_chromeos_buildflags__android_x86",
-    cmd: "echo '--flags IS_CHROMEOS_DEVICE=\"false\" IS_CHROMEOS_LACROS=\"false\" IS_CHROMEOS_ASH=\"false\" IS_CHROMEOS_WITH_HW_DETAILS=\"false\" IS_REVEN=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//build:chromeos_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "build/chromeos_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //build:chromeos_buildflags__android_x86_64
-cc_genrule {
-    name: "cronet_aml_build_chromeos_buildflags__android_x86_64",
-    cmd: "echo '--flags IS_CHROMEOS_DEVICE=\"false\" IS_CHROMEOS_LACROS=\"false\" IS_CHROMEOS_ASH=\"false\" IS_CHROMEOS_WITH_HW_DETAILS=\"false\" IS_REVEN=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//build:chromeos_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "build/chromeos_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //build:chromeos_buildflags__host
-cc_genrule {
-    name: "cronet_aml_build_chromeos_buildflags__host",
-    cmd: "echo '--flags IS_CHROMEOS_DEVICE=\"false\" IS_CHROMEOS_LACROS=\"false\" IS_CHROMEOS_ASH=\"false\" IS_CHROMEOS_WITH_HW_DETAILS=\"false\" IS_REVEN=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//build:chromeos_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    host_supported: true,
-    device_supported: false,
-    out: [
-        "build/chromeos_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //build/config/compiler:compiler_buildflags__android_arm
-cc_genrule {
-    name: "cronet_aml_build_config_compiler_compiler_buildflags__android_arm",
+    name: "cronet_aml_build_config_compiler_compiler_buildflags",
     cmd: "echo '--flags CLANG_PGO=\"0\" SYMBOL_LEVEL=\"1\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
@@ -6179,100 +2135,6 @@
     ],
 }
 
-// GN: //build/config/compiler:compiler_buildflags__android_arm64
-cc_genrule {
-    name: "cronet_aml_build_config_compiler_compiler_buildflags__android_arm64",
-    cmd: "echo '--flags CLANG_PGO=\"0\" SYMBOL_LEVEL=\"1\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//build/config/compiler:compiler_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "build/config/compiler/compiler_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //build/config/compiler:compiler_buildflags__android_x86
-cc_genrule {
-    name: "cronet_aml_build_config_compiler_compiler_buildflags__android_x86",
-    cmd: "echo '--flags CLANG_PGO=\"0\" SYMBOL_LEVEL=\"1\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//build/config/compiler:compiler_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "build/config/compiler/compiler_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //build/config/compiler:compiler_buildflags__android_x86_64
-cc_genrule {
-    name: "cronet_aml_build_config_compiler_compiler_buildflags__android_x86_64",
-    cmd: "echo '--flags CLANG_PGO=\"0\" SYMBOL_LEVEL=\"1\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//build/config/compiler:compiler_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "build/config/compiler/compiler_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //build/config/compiler:compiler_buildflags__host
-cc_genrule {
-    name: "cronet_aml_build_config_compiler_compiler_buildflags__host",
-    cmd: "echo '--flags CLANG_PGO=\"0\" SYMBOL_LEVEL=\"2\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//build/config/compiler:compiler_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    host_supported: true,
-    device_supported: false,
-    out: [
-        "build/config/compiler/compiler_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
 // GN: //buildtools/third_party/libc++:libc++
 cc_object {
     name: "cronet_aml_buildtools_third_party_libc___libc__",
@@ -6510,136 +2372,9 @@
     },
 }
 
-// GN: //buildtools/third_party/libunwind:libunwind
-cc_object {
-    name: "cronet_aml_buildtools_third_party_libunwind_libunwind",
-    srcs: [
-        "buildtools/third_party/libunwind/trunk/src/Unwind-EHABI.cpp",
-        "buildtools/third_party/libunwind/trunk/src/Unwind-sjlj.c",
-        "buildtools/third_party/libunwind/trunk/src/UnwindLevel1-gcc-ext.c",
-        "buildtools/third_party/libunwind/trunk/src/UnwindLevel1.c",
-        "buildtools/third_party/libunwind/trunk/src/UnwindRegistersRestore.S",
-        "buildtools/third_party/libunwind/trunk/src/UnwindRegistersSave.S",
-        "buildtools/third_party/libunwind/trunk/src/libunwind.cpp",
-    ],
-    defaults: [
-        "cronet_aml_defaults",
-    ],
-    cflags: [
-        "-DANDROID",
-        "-DANDROID_NDK_VERSION_ROLL=r23_1",
-        "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
-        "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
-        "-DDCHECK_ALWAYS_ON=1",
-        "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
-        "-DHAVE_SYS_UIO_H",
-        "-D_DEBUG",
-        "-D_GNU_SOURCE",
-        "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
-        "-D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS",
-        "-D_LIBCPP_ENABLE_ASSERTIONS_DEFAULT=1",
-        "-D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS",
-        "-D_LIBUNWIND_DISABLE_VISIBILITY_ANNOTATIONS",
-        "-D_LIBUNWIND_IS_NATIVE_ONLY",
-    ],
-    local_include_dirs: [
-        "./",
-        "buildtools/third_party/libc++/",
-        "buildtools/third_party/libc++/trunk/include",
-        "buildtools/third_party/libc++abi/trunk/include",
-        "buildtools/third_party/libunwind/trunk/include/",
-    ],
-    cpp_std: "c++20",
-    cppflags: [
-        "-fexceptions",
-    ],
-    rtti: true,
-    target: {
-        android_x86: {
-            cflags: [
-                "-msse3",
-            ],
-        },
-        android_x86_64: {
-            cflags: [
-                "-msse3",
-            ],
-        },
-    },
-}
-
-// GN: //components/cronet/android:buildflags__android_arm
+// GN: //components/cronet/android:buildflags
 cc_genrule {
-    name: "cronet_aml_components_cronet_android_buildflags__android_arm",
-    cmd: "echo '--flags INTEGRATED_MODE=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//components/cronet/android:buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "components/cronet/android/buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //components/cronet/android:buildflags__android_arm64
-cc_genrule {
-    name: "cronet_aml_components_cronet_android_buildflags__android_arm64",
-    cmd: "echo '--flags INTEGRATED_MODE=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//components/cronet/android:buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "components/cronet/android/buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //components/cronet/android:buildflags__android_x86
-cc_genrule {
-    name: "cronet_aml_components_cronet_android_buildflags__android_x86",
-    cmd: "echo '--flags INTEGRATED_MODE=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//components/cronet/android:buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "components/cronet/android/buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //components/cronet/android:buildflags__android_x86_64
-cc_genrule {
-    name: "cronet_aml_components_cronet_android_buildflags__android_x86_64",
+    name: "cronet_aml_components_cronet_android_buildflags",
     cmd: "echo '--flags INTEGRATED_MODE=\"false\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
@@ -6666,7 +2401,6 @@
     srcs: [
         ":cronet_aml_buildtools_third_party_libc___libc__",
         ":cronet_aml_buildtools_third_party_libc__abi_libc__abi",
-        ":cronet_aml_buildtools_third_party_libunwind_libunwind",
         ":cronet_aml_components_cronet_android_cronet_static",
         ":cronet_aml_components_cronet_cronet_common",
         ":cronet_aml_components_cronet_metrics_util",
@@ -6703,10 +2437,28 @@
         "cronet_aml_url_url",
     ],
     generated_headers: [
+        "cronet_aml_base_debugging_buildflags",
+        "cronet_aml_base_logging_buildflags",
+        "cronet_aml_build_chromeos_buildflags",
+        "cronet_aml_components_cronet_android_buildflags",
+        "cronet_aml_components_cronet_android_cronet_jni_headers",
+        "cronet_aml_components_cronet_android_cronet_jni_registration",
+        "cronet_aml_components_cronet_cronet_buildflags",
+        "cronet_aml_components_cronet_cronet_version_header_action",
         "cronet_aml_third_party_metrics_proto_metrics_proto_gen_headers",
+        "cronet_aml_url_buildflags",
     ],
     export_generated_headers: [
+        "cronet_aml_base_debugging_buildflags",
+        "cronet_aml_base_logging_buildflags",
+        "cronet_aml_build_chromeos_buildflags",
+        "cronet_aml_components_cronet_android_buildflags",
+        "cronet_aml_components_cronet_android_cronet_jni_headers",
+        "cronet_aml_components_cronet_android_cronet_jni_registration",
+        "cronet_aml_components_cronet_cronet_buildflags",
+        "cronet_aml_components_cronet_cronet_version_header_action",
         "cronet_aml_third_party_metrics_proto_metrics_proto_gen_headers",
+        "cronet_aml_url_buildflags",
     ],
     defaults: [
         "cronet_aml_defaults",
@@ -6750,114 +2502,22 @@
     ],
     stem: "libcronet.109.0.5386.0",
     target: {
-        android_arm: {
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm",
-                "cronet_aml_base_logging_buildflags__android_arm",
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-                "cronet_aml_components_cronet_android_buildflags__android_arm",
-                "cronet_aml_components_cronet_android_cronet_jni_headers__android_arm",
-                "cronet_aml_components_cronet_android_cronet_jni_registration__android_arm",
-                "cronet_aml_components_cronet_cronet_buildflags__android_arm",
-                "cronet_aml_components_cronet_cronet_version_header_action__android_arm",
-                "cronet_aml_url_buildflags__android_arm",
-            ],
-            export_generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm",
-                "cronet_aml_base_logging_buildflags__android_arm",
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-                "cronet_aml_components_cronet_android_buildflags__android_arm",
-                "cronet_aml_components_cronet_android_cronet_jni_headers__android_arm",
-                "cronet_aml_components_cronet_android_cronet_jni_registration__android_arm",
-                "cronet_aml_components_cronet_cronet_buildflags__android_arm",
-                "cronet_aml_components_cronet_cronet_version_header_action__android_arm",
-                "cronet_aml_url_buildflags__android_arm",
-            ],
-        },
-        android_arm64: {
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm64",
-                "cronet_aml_base_logging_buildflags__android_arm64",
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-                "cronet_aml_components_cronet_android_buildflags__android_arm64",
-                "cronet_aml_components_cronet_android_cronet_jni_headers__android_arm64",
-                "cronet_aml_components_cronet_android_cronet_jni_registration__android_arm64",
-                "cronet_aml_components_cronet_cronet_buildflags__android_arm64",
-                "cronet_aml_components_cronet_cronet_version_header_action__android_arm64",
-                "cronet_aml_url_buildflags__android_arm64",
-            ],
-            export_generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm64",
-                "cronet_aml_base_logging_buildflags__android_arm64",
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-                "cronet_aml_components_cronet_android_buildflags__android_arm64",
-                "cronet_aml_components_cronet_android_cronet_jni_headers__android_arm64",
-                "cronet_aml_components_cronet_android_cronet_jni_registration__android_arm64",
-                "cronet_aml_components_cronet_cronet_buildflags__android_arm64",
-                "cronet_aml_components_cronet_cronet_version_header_action__android_arm64",
-                "cronet_aml_url_buildflags__android_arm64",
-            ],
-        },
         android_x86: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86",
-                "cronet_aml_base_logging_buildflags__android_x86",
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-                "cronet_aml_components_cronet_android_buildflags__android_x86",
-                "cronet_aml_components_cronet_android_cronet_jni_headers__android_x86",
-                "cronet_aml_components_cronet_android_cronet_jni_registration__android_x86",
-                "cronet_aml_components_cronet_cronet_buildflags__android_x86",
-                "cronet_aml_components_cronet_cronet_version_header_action__android_x86",
-                "cronet_aml_url_buildflags__android_x86",
-            ],
-            export_generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86",
-                "cronet_aml_base_logging_buildflags__android_x86",
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-                "cronet_aml_components_cronet_android_buildflags__android_x86",
-                "cronet_aml_components_cronet_android_cronet_jni_headers__android_x86",
-                "cronet_aml_components_cronet_android_cronet_jni_registration__android_x86",
-                "cronet_aml_components_cronet_cronet_buildflags__android_x86",
-                "cronet_aml_components_cronet_cronet_version_header_action__android_x86",
-                "cronet_aml_url_buildflags__android_x86",
-            ],
         },
         android_x86_64: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86_64",
-                "cronet_aml_base_logging_buildflags__android_x86_64",
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-                "cronet_aml_components_cronet_android_buildflags__android_x86_64",
-                "cronet_aml_components_cronet_android_cronet_jni_headers__android_x86_64",
-                "cronet_aml_components_cronet_android_cronet_jni_registration__android_x86_64",
-                "cronet_aml_components_cronet_cronet_buildflags__android_x86_64",
-                "cronet_aml_components_cronet_cronet_version_header_action__android_x86_64",
-                "cronet_aml_url_buildflags__android_x86_64",
-            ],
-            export_generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86_64",
-                "cronet_aml_base_logging_buildflags__android_x86_64",
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-                "cronet_aml_components_cronet_android_buildflags__android_x86_64",
-                "cronet_aml_components_cronet_android_cronet_jni_headers__android_x86_64",
-                "cronet_aml_components_cronet_android_cronet_jni_registration__android_x86_64",
-                "cronet_aml_components_cronet_cronet_buildflags__android_x86_64",
-                "cronet_aml_components_cronet_cronet_version_header_action__android_x86_64",
-                "cronet_aml_url_buildflags__android_x86_64",
-            ],
         },
     },
 }
 
-// GN: //components/cronet/android:cronet_jni_headers__android_arm
+// GN: //components/cronet/android:cronet_jni_headers
 cc_genrule {
-    name: "cronet_aml_components_cronet_android_cronet_jni_headers__android_arm",
+    name: "cronet_aml_components_cronet_android_cronet_jni_headers",
     srcs: [
         "components/cronet/android/java/src/org/chromium/net/impl/CronetBidirectionalStream.java",
         "components/cronet/android/java/src/org/chromium/net/impl/CronetLibraryLoader.java",
@@ -6911,1116 +2571,9 @@
     ],
 }
 
-// GN: //components/cronet/android:cronet_jni_headers__android_arm64
+// GN: //components/cronet/android:cronet_jni_registration
 cc_genrule {
-    name: "cronet_aml_components_cronet_android_cronet_jni_headers__android_arm64",
-    srcs: [
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetBidirectionalStream.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetLibraryLoader.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetUploadDataStream.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetUrlRequest.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetUrlRequestContext.java",
-    ],
-    cmd: "$(location base/android/jni_generator/jni_generator.py) --ptr_type " +
-         "long " +
-         "--output_dir " +
-         "$(genDir)/components/cronet/android/cronet_jni_headers " +
-         "--includes " +
-         "base/android/jni_generator/jni_generator_helper.h " +
-         "--use_proxy_hash " +
-         "--output_name " +
-         "CronetBidirectionalStream_jni.h " +
-         "--output_name " +
-         "CronetLibraryLoader_jni.h " +
-         "--output_name " +
-         "CronetUploadDataStream_jni.h " +
-         "--output_name " +
-         "CronetUrlRequest_jni.h " +
-         "--output_name " +
-         "CronetUrlRequestContext_jni.h " +
-         "--input_file " +
-         "$(location components/cronet/android/java/src/org/chromium/net/impl/CronetBidirectionalStream.java) " +
-         "--input_file " +
-         "$(location components/cronet/android/java/src/org/chromium/net/impl/CronetLibraryLoader.java) " +
-         "--input_file " +
-         "$(location components/cronet/android/java/src/org/chromium/net/impl/CronetUploadDataStream.java) " +
-         "--input_file " +
-         "$(location components/cronet/android/java/src/org/chromium/net/impl/CronetUrlRequest.java) " +
-         "--input_file " +
-         "$(location components/cronet/android/java/src/org/chromium/net/impl/CronetUrlRequestContext.java)",
-    out: [
-        "components/cronet/android/cronet_jni_headers/CronetBidirectionalStream_jni.h",
-        "components/cronet/android/cronet_jni_headers/CronetLibraryLoader_jni.h",
-        "components/cronet/android/cronet_jni_headers/CronetUploadDataStream_jni.h",
-        "components/cronet/android/cronet_jni_headers/CronetUrlRequestContext_jni.h",
-        "components/cronet/android/cronet_jni_headers/CronetUrlRequest_jni.h",
-    ],
-    tool_files: [
-        "base/android/jni_generator/android_jar.classes",
-        "base/android/jni_generator/jni_generator.py",
-        "build/android/gyp/util/__init__.py",
-        "build/android/gyp/util/build_utils.py",
-        "build/gn_helpers.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //components/cronet/android:cronet_jni_headers__android_x86
-cc_genrule {
-    name: "cronet_aml_components_cronet_android_cronet_jni_headers__android_x86",
-    srcs: [
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetBidirectionalStream.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetLibraryLoader.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetUploadDataStream.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetUrlRequest.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetUrlRequestContext.java",
-    ],
-    cmd: "$(location base/android/jni_generator/jni_generator.py) --ptr_type " +
-         "long " +
-         "--output_dir " +
-         "$(genDir)/components/cronet/android/cronet_jni_headers " +
-         "--includes " +
-         "base/android/jni_generator/jni_generator_helper.h " +
-         "--use_proxy_hash " +
-         "--output_name " +
-         "CronetBidirectionalStream_jni.h " +
-         "--output_name " +
-         "CronetLibraryLoader_jni.h " +
-         "--output_name " +
-         "CronetUploadDataStream_jni.h " +
-         "--output_name " +
-         "CronetUrlRequest_jni.h " +
-         "--output_name " +
-         "CronetUrlRequestContext_jni.h " +
-         "--input_file " +
-         "$(location components/cronet/android/java/src/org/chromium/net/impl/CronetBidirectionalStream.java) " +
-         "--input_file " +
-         "$(location components/cronet/android/java/src/org/chromium/net/impl/CronetLibraryLoader.java) " +
-         "--input_file " +
-         "$(location components/cronet/android/java/src/org/chromium/net/impl/CronetUploadDataStream.java) " +
-         "--input_file " +
-         "$(location components/cronet/android/java/src/org/chromium/net/impl/CronetUrlRequest.java) " +
-         "--input_file " +
-         "$(location components/cronet/android/java/src/org/chromium/net/impl/CronetUrlRequestContext.java)",
-    out: [
-        "components/cronet/android/cronet_jni_headers/CronetBidirectionalStream_jni.h",
-        "components/cronet/android/cronet_jni_headers/CronetLibraryLoader_jni.h",
-        "components/cronet/android/cronet_jni_headers/CronetUploadDataStream_jni.h",
-        "components/cronet/android/cronet_jni_headers/CronetUrlRequestContext_jni.h",
-        "components/cronet/android/cronet_jni_headers/CronetUrlRequest_jni.h",
-    ],
-    tool_files: [
-        "base/android/jni_generator/android_jar.classes",
-        "base/android/jni_generator/jni_generator.py",
-        "build/android/gyp/util/__init__.py",
-        "build/android/gyp/util/build_utils.py",
-        "build/gn_helpers.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //components/cronet/android:cronet_jni_headers__android_x86_64
-cc_genrule {
-    name: "cronet_aml_components_cronet_android_cronet_jni_headers__android_x86_64",
-    srcs: [
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetBidirectionalStream.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetLibraryLoader.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetUploadDataStream.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetUrlRequest.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetUrlRequestContext.java",
-    ],
-    cmd: "$(location base/android/jni_generator/jni_generator.py) --ptr_type " +
-         "long " +
-         "--output_dir " +
-         "$(genDir)/components/cronet/android/cronet_jni_headers " +
-         "--includes " +
-         "base/android/jni_generator/jni_generator_helper.h " +
-         "--use_proxy_hash " +
-         "--output_name " +
-         "CronetBidirectionalStream_jni.h " +
-         "--output_name " +
-         "CronetLibraryLoader_jni.h " +
-         "--output_name " +
-         "CronetUploadDataStream_jni.h " +
-         "--output_name " +
-         "CronetUrlRequest_jni.h " +
-         "--output_name " +
-         "CronetUrlRequestContext_jni.h " +
-         "--input_file " +
-         "$(location components/cronet/android/java/src/org/chromium/net/impl/CronetBidirectionalStream.java) " +
-         "--input_file " +
-         "$(location components/cronet/android/java/src/org/chromium/net/impl/CronetLibraryLoader.java) " +
-         "--input_file " +
-         "$(location components/cronet/android/java/src/org/chromium/net/impl/CronetUploadDataStream.java) " +
-         "--input_file " +
-         "$(location components/cronet/android/java/src/org/chromium/net/impl/CronetUrlRequest.java) " +
-         "--input_file " +
-         "$(location components/cronet/android/java/src/org/chromium/net/impl/CronetUrlRequestContext.java)",
-    out: [
-        "components/cronet/android/cronet_jni_headers/CronetBidirectionalStream_jni.h",
-        "components/cronet/android/cronet_jni_headers/CronetLibraryLoader_jni.h",
-        "components/cronet/android/cronet_jni_headers/CronetUploadDataStream_jni.h",
-        "components/cronet/android/cronet_jni_headers/CronetUrlRequestContext_jni.h",
-        "components/cronet/android/cronet_jni_headers/CronetUrlRequest_jni.h",
-    ],
-    tool_files: [
-        "base/android/jni_generator/android_jar.classes",
-        "base/android/jni_generator/jni_generator.py",
-        "build/android/gyp/util/__init__.py",
-        "build/android/gyp/util/build_utils.py",
-        "build/gn_helpers.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //components/cronet/android:cronet_jni_registration__android_arm
-cc_genrule {
-    name: "cronet_aml_components_cronet_android_cronet_jni_registration__android_arm",
-    srcs: [
-        "base/android/java/src/org/chromium/base/ActivityState.java",
-        "base/android/java/src/org/chromium/base/ApiCompatibilityUtils.java",
-        "base/android/java/src/org/chromium/base/ApkAssets.java",
-        "base/android/java/src/org/chromium/base/ApplicationStatus.java",
-        "base/android/java/src/org/chromium/base/BaseFeatureList.java",
-        "base/android/java/src/org/chromium/base/BuildInfo.java",
-        "base/android/java/src/org/chromium/base/BundleUtils.java",
-        "base/android/java/src/org/chromium/base/ByteArrayGenerator.java",
-        "base/android/java/src/org/chromium/base/Callback.java",
-        "base/android/java/src/org/chromium/base/CallbackController.java",
-        "base/android/java/src/org/chromium/base/CollectionUtil.java",
-        "base/android/java/src/org/chromium/base/CommandLine.java",
-        "base/android/java/src/org/chromium/base/CommandLineInitUtil.java",
-        "base/android/java/src/org/chromium/base/Consumer.java",
-        "base/android/java/src/org/chromium/base/ContentUriUtils.java",
-        "base/android/java/src/org/chromium/base/ContextUtils.java",
-        "base/android/java/src/org/chromium/base/CpuFeatures.java",
-        "base/android/java/src/org/chromium/base/DiscardableReferencePool.java",
-        "base/android/java/src/org/chromium/base/EarlyTraceEvent.java",
-        "base/android/java/src/org/chromium/base/EventLog.java",
-        "base/android/java/src/org/chromium/base/FeatureList.java",
-        "base/android/java/src/org/chromium/base/Features.java",
-        "base/android/java/src/org/chromium/base/FieldTrialList.java",
-        "base/android/java/src/org/chromium/base/FileUtils.java",
-        "base/android/java/src/org/chromium/base/Function.java",
-        "base/android/java/src/org/chromium/base/ImportantFileWriterAndroid.java",
-        "base/android/java/src/org/chromium/base/IntStringCallback.java",
-        "base/android/java/src/org/chromium/base/IntentUtils.java",
-        "base/android/java/src/org/chromium/base/JNIUtils.java",
-        "base/android/java/src/org/chromium/base/JavaExceptionReporter.java",
-        "base/android/java/src/org/chromium/base/JavaHandlerThread.java",
-        "base/android/java/src/org/chromium/base/JniException.java",
-        "base/android/java/src/org/chromium/base/JniStaticTestMocker.java",
-        "base/android/java/src/org/chromium/base/LifetimeAssert.java",
-        "base/android/java/src/org/chromium/base/LocaleUtils.java",
-        "base/android/java/src/org/chromium/base/Log.java",
-        "base/android/java/src/org/chromium/base/MathUtils.java",
-        "base/android/java/src/org/chromium/base/MemoryPressureListener.java",
-        "base/android/java/src/org/chromium/base/NativeLibraryLoadedStatus.java",
-        "base/android/java/src/org/chromium/base/ObserverList.java",
-        "base/android/java/src/org/chromium/base/PackageManagerUtils.java",
-        "base/android/java/src/org/chromium/base/PackageUtils.java",
-        "base/android/java/src/org/chromium/base/PathService.java",
-        "base/android/java/src/org/chromium/base/PathUtils.java",
-        "base/android/java/src/org/chromium/base/PiiElider.java",
-        "base/android/java/src/org/chromium/base/PowerMonitor.java",
-        "base/android/java/src/org/chromium/base/PowerMonitorForQ.java",
-        "base/android/java/src/org/chromium/base/Predicate.java",
-        "base/android/java/src/org/chromium/base/Promise.java",
-        "base/android/java/src/org/chromium/base/RadioUtils.java",
-        "base/android/java/src/org/chromium/base/StreamUtil.java",
-        "base/android/java/src/org/chromium/base/StrictModeContext.java",
-        "base/android/java/src/org/chromium/base/SysUtils.java",
-        "base/android/java/src/org/chromium/base/ThreadUtils.java",
-        "base/android/java/src/org/chromium/base/TimeUtils.java",
-        "base/android/java/src/org/chromium/base/TimezoneUtils.java",
-        "base/android/java/src/org/chromium/base/TraceEvent.java",
-        "base/android/java/src/org/chromium/base/UnguessableToken.java",
-        "base/android/java/src/org/chromium/base/UnownedUserData.java",
-        "base/android/java/src/org/chromium/base/UnownedUserDataHost.java",
-        "base/android/java/src/org/chromium/base/UnownedUserDataKey.java",
-        "base/android/java/src/org/chromium/base/UserData.java",
-        "base/android/java/src/org/chromium/base/UserDataHost.java",
-        "base/android/java/src/org/chromium/base/WrappedClassLoader.java",
-        "base/android/java/src/org/chromium/base/annotations/AccessedByNative.java",
-        "base/android/java/src/org/chromium/base/annotations/CalledByNative.java",
-        "base/android/java/src/org/chromium/base/annotations/CalledByNativeForTesting.java",
-        "base/android/java/src/org/chromium/base/annotations/CalledByNativeUnchecked.java",
-        "base/android/java/src/org/chromium/base/annotations/JNIAdditionalImport.java",
-        "base/android/java/src/org/chromium/base/annotations/JNINamespace.java",
-        "base/android/java/src/org/chromium/base/annotations/JniIgnoreNatives.java",
-        "base/android/java/src/org/chromium/base/annotations/NativeClassQualifiedName.java",
-        "base/android/java/src/org/chromium/base/annotations/NativeMethods.java",
-        "base/android/java/src/org/chromium/base/compat/ApiHelperForM.java",
-        "base/android/java/src/org/chromium/base/compat/ApiHelperForN.java",
-        "base/android/java/src/org/chromium/base/compat/ApiHelperForO.java",
-        "base/android/java/src/org/chromium/base/compat/ApiHelperForOMR1.java",
-        "base/android/java/src/org/chromium/base/compat/ApiHelperForP.java",
-        "base/android/java/src/org/chromium/base/compat/ApiHelperForQ.java",
-        "base/android/java/src/org/chromium/base/compat/ApiHelperForR.java",
-        "base/android/java/src/org/chromium/base/compat/ApiHelperForS.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/DummyJankTracker.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/FrameMetrics.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/FrameMetricsListener.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/FrameMetricsStore.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/JankActivityTracker.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/JankMetricCalculator.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/JankMetricUMARecorder.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/JankMetrics.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/JankReportingRunnable.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/JankReportingScheduler.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/JankScenario.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/JankTracker.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/JankTrackerImpl.java",
-        "base/android/java/src/org/chromium/base/library_loader/LegacyLinker.java",
-        "base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java",
-        "base/android/java/src/org/chromium/base/library_loader/LibraryPrefetcher.java",
-        "base/android/java/src/org/chromium/base/library_loader/Linker.java",
-        "base/android/java/src/org/chromium/base/library_loader/LinkerJni.java",
-        "base/android/java/src/org/chromium/base/library_loader/LoaderErrors.java",
-        "base/android/java/src/org/chromium/base/library_loader/ModernLinker.java",
-        "base/android/java/src/org/chromium/base/library_loader/ModernLinkerJni.java",
-        "base/android/java/src/org/chromium/base/library_loader/NativeLibraryPreloader.java",
-        "base/android/java/src/org/chromium/base/library_loader/ProcessInitException.java",
-        "base/android/java/src/org/chromium/base/lifetime/DestroyChecker.java",
-        "base/android/java/src/org/chromium/base/lifetime/Destroyable.java",
-        "base/android/java/src/org/chromium/base/memory/JavaHeapDumpGenerator.java",
-        "base/android/java/src/org/chromium/base/memory/MemoryPressureCallback.java",
-        "base/android/java/src/org/chromium/base/memory/MemoryPressureMonitor.java",
-        "base/android/java/src/org/chromium/base/memory/MemoryPressureUma.java",
-        "base/android/java/src/org/chromium/base/memory/MemoryPurgeManager.java",
-        "base/android/java/src/org/chromium/base/metrics/CachingUmaRecorder.java",
-        "base/android/java/src/org/chromium/base/metrics/NativeUmaRecorder.java",
-        "base/android/java/src/org/chromium/base/metrics/NoopUmaRecorder.java",
-        "base/android/java/src/org/chromium/base/metrics/RecordHistogram.java",
-        "base/android/java/src/org/chromium/base/metrics/RecordUserAction.java",
-        "base/android/java/src/org/chromium/base/metrics/ScopedSysTraceEvent.java",
-        "base/android/java/src/org/chromium/base/metrics/StatisticsRecorderAndroid.java",
-        "base/android/java/src/org/chromium/base/metrics/TimingMetric.java",
-        "base/android/java/src/org/chromium/base/metrics/UmaRecorder.java",
-        "base/android/java/src/org/chromium/base/metrics/UmaRecorderHolder.java",
-        "base/android/java/src/org/chromium/base/multidex/ChromiumMultiDexInstaller.java",
-        "base/android/java/src/org/chromium/base/process_launcher/BindService.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildConnectionAllocator.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildProcessConnection.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildProcessConstants.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildProcessLauncher.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildProcessService.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildProcessServiceDelegate.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildServiceConnection.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildServiceConnectionDelegate.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildServiceConnectionFactory.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildServiceConnectionImpl.java",
-        "base/android/java/src/org/chromium/base/process_launcher/FileDescriptorInfo.java",
-        "base/android/java/src/org/chromium/base/supplier/BooleanSupplier.java",
-        "base/android/java/src/org/chromium/base/supplier/DestroyableObservableSupplier.java",
-        "base/android/java/src/org/chromium/base/supplier/ObservableSupplier.java",
-        "base/android/java/src/org/chromium/base/supplier/ObservableSupplierImpl.java",
-        "base/android/java/src/org/chromium/base/supplier/OneShotCallback.java",
-        "base/android/java/src/org/chromium/base/supplier/OneshotSupplier.java",
-        "base/android/java/src/org/chromium/base/supplier/OneshotSupplierImpl.java",
-        "base/android/java/src/org/chromium/base/supplier/Supplier.java",
-        "base/android/java/src/org/chromium/base/supplier/UnownedUserDataSupplier.java",
-        "base/android/java/src/org/chromium/base/task/AsyncTask.java",
-        "base/android/java/src/org/chromium/base/task/BackgroundOnlyAsyncTask.java",
-        "base/android/java/src/org/chromium/base/task/ChainedTasks.java",
-        "base/android/java/src/org/chromium/base/task/ChoreographerTaskRunner.java",
-        "base/android/java/src/org/chromium/base/task/ChromeThreadPoolExecutor.java",
-        "base/android/java/src/org/chromium/base/task/DefaultTaskExecutor.java",
-        "base/android/java/src/org/chromium/base/task/PostTask.java",
-        "base/android/java/src/org/chromium/base/task/SequencedTaskRunner.java",
-        "base/android/java/src/org/chromium/base/task/SequencedTaskRunnerImpl.java",
-        "base/android/java/src/org/chromium/base/task/SerialExecutor.java",
-        "base/android/java/src/org/chromium/base/task/SingleThreadTaskRunner.java",
-        "base/android/java/src/org/chromium/base/task/SingleThreadTaskRunnerImpl.java",
-        "base/android/java/src/org/chromium/base/task/TaskExecutor.java",
-        "base/android/java/src/org/chromium/base/task/TaskRunner.java",
-        "base/android/java/src/org/chromium/base/task/TaskRunnerImpl.java",
-        "base/android/java/src/org/chromium/base/task/TaskTraits.java",
-        "base/android/java/src/org/chromium/base/task/TaskTraitsExtensionDescriptor.java",
-        "build/android/java/src/org/chromium/build/annotations/AlwaysInline.java",
-        "build/android/java/src/org/chromium/build/annotations/CheckDiscard.java",
-        "build/android/java/src/org/chromium/build/annotations/DoNotClassMerge.java",
-        "build/android/java/src/org/chromium/build/annotations/DoNotInline.java",
-        "build/android/java/src/org/chromium/build/annotations/IdentifierNameString.java",
-        "build/android/java/src/org/chromium/build/annotations/MainDex.java",
-        "build/android/java/src/org/chromium/build/annotations/MockedInTests.java",
-        "build/android/java/src/org/chromium/build/annotations/UsedByReflection.java",
-        "components/cronet/android/api/src/org/chromium/net/BidirectionalStream.java",
-        "components/cronet/android/api/src/org/chromium/net/CallbackException.java",
-        "components/cronet/android/api/src/org/chromium/net/CronetEngine.java",
-        "components/cronet/android/api/src/org/chromium/net/CronetException.java",
-        "components/cronet/android/api/src/org/chromium/net/CronetProvider.java",
-        "components/cronet/android/api/src/org/chromium/net/ExperimentalBidirectionalStream.java",
-        "components/cronet/android/api/src/org/chromium/net/ExperimentalCronetEngine.java",
-        "components/cronet/android/api/src/org/chromium/net/ExperimentalUrlRequest.java",
-        "components/cronet/android/api/src/org/chromium/net/ICronetEngineBuilder.java",
-        "components/cronet/android/api/src/org/chromium/net/InlineExecutionProhibitedException.java",
-        "components/cronet/android/api/src/org/chromium/net/NetworkException.java",
-        "components/cronet/android/api/src/org/chromium/net/NetworkQualityRttListener.java",
-        "components/cronet/android/api/src/org/chromium/net/NetworkQualityThroughputListener.java",
-        "components/cronet/android/api/src/org/chromium/net/QuicException.java",
-        "components/cronet/android/api/src/org/chromium/net/RequestFinishedInfo.java",
-        "components/cronet/android/api/src/org/chromium/net/UploadDataProvider.java",
-        "components/cronet/android/api/src/org/chromium/net/UploadDataProviders.java",
-        "components/cronet/android/api/src/org/chromium/net/UploadDataSink.java",
-        "components/cronet/android/api/src/org/chromium/net/UrlRequest.java",
-        "components/cronet/android/api/src/org/chromium/net/UrlResponseInfo.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/ByteArrayCronetCallback.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/ContentTypeParametersParser.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/CronetRequestCompletionListener.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/CronetResponse.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/ImplicitFlowControlCallback.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/InMemoryTransformCronetCallback.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/JsonCronetCallback.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/RedirectHandler.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/RedirectHandlers.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/StringCronetCallback.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/UploadDataProviders.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/UrlRequestCallbacks.java",
-        "components/cronet/android/fake/java/org/chromium/net/test/FakeCronetController.java",
-        "components/cronet/android/fake/java/org/chromium/net/test/FakeCronetEngine.java",
-        "components/cronet/android/fake/java/org/chromium/net/test/FakeCronetProvider.java",
-        "components/cronet/android/fake/java/org/chromium/net/test/FakeUrlRequest.java",
-        "components/cronet/android/fake/java/org/chromium/net/test/FakeUrlResponse.java",
-        "components/cronet/android/fake/java/org/chromium/net/test/ResponseMatcher.java",
-        "components/cronet/android/fake/java/org/chromium/net/test/UrlResponseMatcher.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/BidirectionalStreamBuilderImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/BidirectionalStreamNetworkException.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CallbackExceptionImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetBidirectionalStream.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetEngineBase.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetEngineBuilderImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetExceptionImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetLibraryLoader.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetLogger.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetLoggerFactory.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetManifest.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetMetrics.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetUploadDataStream.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetUrlRequest.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetUrlRequestContext.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/InputStreamChannel.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/JavaCronetEngine.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/JavaCronetEngineBuilderImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/JavaCronetProvider.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/JavaUploadDataSinkBase.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/JavaUrlRequest.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/JavaUrlRequestUtils.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/NativeCronetEngineBuilderImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/NativeCronetEngineBuilderWithLibraryLoaderImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/NativeCronetProvider.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/NetworkExceptionImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/NoOpLogger.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/Preconditions.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/QuicExceptionImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/RequestFinishedInfoImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/UrlRequestBase.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/UrlRequestBuilderImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/UrlResponseInfoImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/UserAgent.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/VersionSafeCallbacks.java",
-        "components/cronet/android/java/src/org/chromium/net/urlconnection/CronetBufferedOutputStream.java",
-        "components/cronet/android/java/src/org/chromium/net/urlconnection/CronetChunkedOutputStream.java",
-        "components/cronet/android/java/src/org/chromium/net/urlconnection/CronetFixedModeOutputStream.java",
-        "components/cronet/android/java/src/org/chromium/net/urlconnection/CronetHttpURLConnection.java",
-        "components/cronet/android/java/src/org/chromium/net/urlconnection/CronetHttpURLStreamHandler.java",
-        "components/cronet/android/java/src/org/chromium/net/urlconnection/CronetInputStream.java",
-        "components/cronet/android/java/src/org/chromium/net/urlconnection/CronetOutputStream.java",
-        "components/cronet/android/java/src/org/chromium/net/urlconnection/CronetURLStreamHandlerFactory.java",
-        "components/cronet/android/java/src/org/chromium/net/urlconnection/MessageLoop.java",
-        "net/android/java/src/org/chromium/net/AndroidCertVerifyResult.java",
-        "net/android/java/src/org/chromium/net/AndroidKeyStore.java",
-        "net/android/java/src/org/chromium/net/AndroidNetworkLibrary.java",
-        "net/android/java/src/org/chromium/net/AndroidTrafficStats.java",
-        "net/android/java/src/org/chromium/net/ChromiumNetworkAdapter.java",
-        "net/android/java/src/org/chromium/net/DnsStatus.java",
-        "net/android/java/src/org/chromium/net/GURLUtils.java",
-        "net/android/java/src/org/chromium/net/HttpNegotiateAuthenticator.java",
-        "net/android/java/src/org/chromium/net/HttpNegotiateConstants.java",
-        "net/android/java/src/org/chromium/net/HttpUtil.java",
-        "net/android/java/src/org/chromium/net/MimeTypeFilter.java",
-        "net/android/java/src/org/chromium/net/NetStringUtil.java",
-        "net/android/java/src/org/chromium/net/NetworkActiveNotifier.java",
-        "net/android/java/src/org/chromium/net/NetworkChangeNotifier.java",
-        "net/android/java/src/org/chromium/net/NetworkChangeNotifierAutoDetect.java",
-        "net/android/java/src/org/chromium/net/NetworkTrafficAnnotationTag.java",
-        "net/android/java/src/org/chromium/net/ProxyBroadcastReceiver.java",
-        "net/android/java/src/org/chromium/net/ProxyChangeListener.java",
-        "net/android/java/src/org/chromium/net/RegistrationPolicyAlwaysRegister.java",
-        "net/android/java/src/org/chromium/net/RegistrationPolicyApplicationStatus.java",
-        "net/android/java/src/org/chromium/net/ThreadStatsUid.java",
-        "net/android/java/src/org/chromium/net/X509Util.java",
-        "url/android/java/src/org/chromium/url/IDNStringUtil.java",
-    ],
-    cmd: "current_dir=`basename \\`pwd\\``; " +
-         "for f in $(in); " +
-         "do " +
-         "echo \"../$$current_dir/$$f\" >> $(genDir)/java.sources; " +
-         "done; " +
-         "python3 $(location base/android/jni_generator/jni_registration_generator.py) --srcjar-path " +
-         "$(genDir)/components/cronet/android/cronet_jni_registration.srcjar " +
-         "--depfile " +
-         "$(genDir)/components/cronet/android/cronet_jni_registration.d " +
-         "--sources-files " +
-         "$(genDir)/java.sources " +
-         "--include_test_only " +
-         "--use_proxy_hash " +
-         "--header-path " +
-         "$(genDir)/components/cronet/android/cronet_jni_registration.h " +
-         "--manual_jni_registration " +
-         ";sed -i -e 's/OUT_SOONG_.TEMP_SBOX_.*_OUT/GEN/g'  " +
-         "$(genDir)/components/cronet/android/cronet_jni_registration.h",
-    out: [
-        "components/cronet/android/cronet_jni_registration.h",
-        "components/cronet/android/cronet_jni_registration.srcjar",
-    ],
-    tool_files: [
-        "base/android/jni_generator/jni_generator.py",
-        "base/android/jni_generator/jni_registration_generator.py",
-        "build/android/gyp/util/__init__.py",
-        "build/android/gyp/util/build_utils.py",
-        "build/gn_helpers.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //components/cronet/android:cronet_jni_registration__android_arm64
-cc_genrule {
-    name: "cronet_aml_components_cronet_android_cronet_jni_registration__android_arm64",
-    srcs: [
-        "base/android/java/src/org/chromium/base/ActivityState.java",
-        "base/android/java/src/org/chromium/base/ApiCompatibilityUtils.java",
-        "base/android/java/src/org/chromium/base/ApkAssets.java",
-        "base/android/java/src/org/chromium/base/ApplicationStatus.java",
-        "base/android/java/src/org/chromium/base/BaseFeatureList.java",
-        "base/android/java/src/org/chromium/base/BuildInfo.java",
-        "base/android/java/src/org/chromium/base/BundleUtils.java",
-        "base/android/java/src/org/chromium/base/ByteArrayGenerator.java",
-        "base/android/java/src/org/chromium/base/Callback.java",
-        "base/android/java/src/org/chromium/base/CallbackController.java",
-        "base/android/java/src/org/chromium/base/CollectionUtil.java",
-        "base/android/java/src/org/chromium/base/CommandLine.java",
-        "base/android/java/src/org/chromium/base/CommandLineInitUtil.java",
-        "base/android/java/src/org/chromium/base/Consumer.java",
-        "base/android/java/src/org/chromium/base/ContentUriUtils.java",
-        "base/android/java/src/org/chromium/base/ContextUtils.java",
-        "base/android/java/src/org/chromium/base/CpuFeatures.java",
-        "base/android/java/src/org/chromium/base/DiscardableReferencePool.java",
-        "base/android/java/src/org/chromium/base/EarlyTraceEvent.java",
-        "base/android/java/src/org/chromium/base/EventLog.java",
-        "base/android/java/src/org/chromium/base/FeatureList.java",
-        "base/android/java/src/org/chromium/base/Features.java",
-        "base/android/java/src/org/chromium/base/FieldTrialList.java",
-        "base/android/java/src/org/chromium/base/FileUtils.java",
-        "base/android/java/src/org/chromium/base/Function.java",
-        "base/android/java/src/org/chromium/base/ImportantFileWriterAndroid.java",
-        "base/android/java/src/org/chromium/base/IntStringCallback.java",
-        "base/android/java/src/org/chromium/base/IntentUtils.java",
-        "base/android/java/src/org/chromium/base/JNIUtils.java",
-        "base/android/java/src/org/chromium/base/JavaExceptionReporter.java",
-        "base/android/java/src/org/chromium/base/JavaHandlerThread.java",
-        "base/android/java/src/org/chromium/base/JniException.java",
-        "base/android/java/src/org/chromium/base/JniStaticTestMocker.java",
-        "base/android/java/src/org/chromium/base/LifetimeAssert.java",
-        "base/android/java/src/org/chromium/base/LocaleUtils.java",
-        "base/android/java/src/org/chromium/base/Log.java",
-        "base/android/java/src/org/chromium/base/MathUtils.java",
-        "base/android/java/src/org/chromium/base/MemoryPressureListener.java",
-        "base/android/java/src/org/chromium/base/NativeLibraryLoadedStatus.java",
-        "base/android/java/src/org/chromium/base/ObserverList.java",
-        "base/android/java/src/org/chromium/base/PackageManagerUtils.java",
-        "base/android/java/src/org/chromium/base/PackageUtils.java",
-        "base/android/java/src/org/chromium/base/PathService.java",
-        "base/android/java/src/org/chromium/base/PathUtils.java",
-        "base/android/java/src/org/chromium/base/PiiElider.java",
-        "base/android/java/src/org/chromium/base/PowerMonitor.java",
-        "base/android/java/src/org/chromium/base/PowerMonitorForQ.java",
-        "base/android/java/src/org/chromium/base/Predicate.java",
-        "base/android/java/src/org/chromium/base/Promise.java",
-        "base/android/java/src/org/chromium/base/RadioUtils.java",
-        "base/android/java/src/org/chromium/base/StreamUtil.java",
-        "base/android/java/src/org/chromium/base/StrictModeContext.java",
-        "base/android/java/src/org/chromium/base/SysUtils.java",
-        "base/android/java/src/org/chromium/base/ThreadUtils.java",
-        "base/android/java/src/org/chromium/base/TimeUtils.java",
-        "base/android/java/src/org/chromium/base/TimezoneUtils.java",
-        "base/android/java/src/org/chromium/base/TraceEvent.java",
-        "base/android/java/src/org/chromium/base/UnguessableToken.java",
-        "base/android/java/src/org/chromium/base/UnownedUserData.java",
-        "base/android/java/src/org/chromium/base/UnownedUserDataHost.java",
-        "base/android/java/src/org/chromium/base/UnownedUserDataKey.java",
-        "base/android/java/src/org/chromium/base/UserData.java",
-        "base/android/java/src/org/chromium/base/UserDataHost.java",
-        "base/android/java/src/org/chromium/base/WrappedClassLoader.java",
-        "base/android/java/src/org/chromium/base/annotations/AccessedByNative.java",
-        "base/android/java/src/org/chromium/base/annotations/CalledByNative.java",
-        "base/android/java/src/org/chromium/base/annotations/CalledByNativeForTesting.java",
-        "base/android/java/src/org/chromium/base/annotations/CalledByNativeUnchecked.java",
-        "base/android/java/src/org/chromium/base/annotations/JNIAdditionalImport.java",
-        "base/android/java/src/org/chromium/base/annotations/JNINamespace.java",
-        "base/android/java/src/org/chromium/base/annotations/JniIgnoreNatives.java",
-        "base/android/java/src/org/chromium/base/annotations/NativeClassQualifiedName.java",
-        "base/android/java/src/org/chromium/base/annotations/NativeMethods.java",
-        "base/android/java/src/org/chromium/base/compat/ApiHelperForM.java",
-        "base/android/java/src/org/chromium/base/compat/ApiHelperForN.java",
-        "base/android/java/src/org/chromium/base/compat/ApiHelperForO.java",
-        "base/android/java/src/org/chromium/base/compat/ApiHelperForOMR1.java",
-        "base/android/java/src/org/chromium/base/compat/ApiHelperForP.java",
-        "base/android/java/src/org/chromium/base/compat/ApiHelperForQ.java",
-        "base/android/java/src/org/chromium/base/compat/ApiHelperForR.java",
-        "base/android/java/src/org/chromium/base/compat/ApiHelperForS.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/DummyJankTracker.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/FrameMetrics.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/FrameMetricsListener.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/FrameMetricsStore.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/JankActivityTracker.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/JankMetricCalculator.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/JankMetricUMARecorder.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/JankMetrics.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/JankReportingRunnable.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/JankReportingScheduler.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/JankScenario.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/JankTracker.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/JankTrackerImpl.java",
-        "base/android/java/src/org/chromium/base/library_loader/LegacyLinker.java",
-        "base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java",
-        "base/android/java/src/org/chromium/base/library_loader/LibraryPrefetcher.java",
-        "base/android/java/src/org/chromium/base/library_loader/Linker.java",
-        "base/android/java/src/org/chromium/base/library_loader/LinkerJni.java",
-        "base/android/java/src/org/chromium/base/library_loader/LoaderErrors.java",
-        "base/android/java/src/org/chromium/base/library_loader/ModernLinker.java",
-        "base/android/java/src/org/chromium/base/library_loader/ModernLinkerJni.java",
-        "base/android/java/src/org/chromium/base/library_loader/NativeLibraryPreloader.java",
-        "base/android/java/src/org/chromium/base/library_loader/ProcessInitException.java",
-        "base/android/java/src/org/chromium/base/lifetime/DestroyChecker.java",
-        "base/android/java/src/org/chromium/base/lifetime/Destroyable.java",
-        "base/android/java/src/org/chromium/base/memory/JavaHeapDumpGenerator.java",
-        "base/android/java/src/org/chromium/base/memory/MemoryPressureCallback.java",
-        "base/android/java/src/org/chromium/base/memory/MemoryPressureMonitor.java",
-        "base/android/java/src/org/chromium/base/memory/MemoryPressureUma.java",
-        "base/android/java/src/org/chromium/base/memory/MemoryPurgeManager.java",
-        "base/android/java/src/org/chromium/base/metrics/CachingUmaRecorder.java",
-        "base/android/java/src/org/chromium/base/metrics/NativeUmaRecorder.java",
-        "base/android/java/src/org/chromium/base/metrics/NoopUmaRecorder.java",
-        "base/android/java/src/org/chromium/base/metrics/RecordHistogram.java",
-        "base/android/java/src/org/chromium/base/metrics/RecordUserAction.java",
-        "base/android/java/src/org/chromium/base/metrics/ScopedSysTraceEvent.java",
-        "base/android/java/src/org/chromium/base/metrics/StatisticsRecorderAndroid.java",
-        "base/android/java/src/org/chromium/base/metrics/TimingMetric.java",
-        "base/android/java/src/org/chromium/base/metrics/UmaRecorder.java",
-        "base/android/java/src/org/chromium/base/metrics/UmaRecorderHolder.java",
-        "base/android/java/src/org/chromium/base/multidex/ChromiumMultiDexInstaller.java",
-        "base/android/java/src/org/chromium/base/process_launcher/BindService.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildConnectionAllocator.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildProcessConnection.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildProcessConstants.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildProcessLauncher.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildProcessService.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildProcessServiceDelegate.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildServiceConnection.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildServiceConnectionDelegate.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildServiceConnectionFactory.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildServiceConnectionImpl.java",
-        "base/android/java/src/org/chromium/base/process_launcher/FileDescriptorInfo.java",
-        "base/android/java/src/org/chromium/base/supplier/BooleanSupplier.java",
-        "base/android/java/src/org/chromium/base/supplier/DestroyableObservableSupplier.java",
-        "base/android/java/src/org/chromium/base/supplier/ObservableSupplier.java",
-        "base/android/java/src/org/chromium/base/supplier/ObservableSupplierImpl.java",
-        "base/android/java/src/org/chromium/base/supplier/OneShotCallback.java",
-        "base/android/java/src/org/chromium/base/supplier/OneshotSupplier.java",
-        "base/android/java/src/org/chromium/base/supplier/OneshotSupplierImpl.java",
-        "base/android/java/src/org/chromium/base/supplier/Supplier.java",
-        "base/android/java/src/org/chromium/base/supplier/UnownedUserDataSupplier.java",
-        "base/android/java/src/org/chromium/base/task/AsyncTask.java",
-        "base/android/java/src/org/chromium/base/task/BackgroundOnlyAsyncTask.java",
-        "base/android/java/src/org/chromium/base/task/ChainedTasks.java",
-        "base/android/java/src/org/chromium/base/task/ChoreographerTaskRunner.java",
-        "base/android/java/src/org/chromium/base/task/ChromeThreadPoolExecutor.java",
-        "base/android/java/src/org/chromium/base/task/DefaultTaskExecutor.java",
-        "base/android/java/src/org/chromium/base/task/PostTask.java",
-        "base/android/java/src/org/chromium/base/task/SequencedTaskRunner.java",
-        "base/android/java/src/org/chromium/base/task/SequencedTaskRunnerImpl.java",
-        "base/android/java/src/org/chromium/base/task/SerialExecutor.java",
-        "base/android/java/src/org/chromium/base/task/SingleThreadTaskRunner.java",
-        "base/android/java/src/org/chromium/base/task/SingleThreadTaskRunnerImpl.java",
-        "base/android/java/src/org/chromium/base/task/TaskExecutor.java",
-        "base/android/java/src/org/chromium/base/task/TaskRunner.java",
-        "base/android/java/src/org/chromium/base/task/TaskRunnerImpl.java",
-        "base/android/java/src/org/chromium/base/task/TaskTraits.java",
-        "base/android/java/src/org/chromium/base/task/TaskTraitsExtensionDescriptor.java",
-        "build/android/java/src/org/chromium/build/annotations/AlwaysInline.java",
-        "build/android/java/src/org/chromium/build/annotations/CheckDiscard.java",
-        "build/android/java/src/org/chromium/build/annotations/DoNotClassMerge.java",
-        "build/android/java/src/org/chromium/build/annotations/DoNotInline.java",
-        "build/android/java/src/org/chromium/build/annotations/IdentifierNameString.java",
-        "build/android/java/src/org/chromium/build/annotations/MainDex.java",
-        "build/android/java/src/org/chromium/build/annotations/MockedInTests.java",
-        "build/android/java/src/org/chromium/build/annotations/UsedByReflection.java",
-        "components/cronet/android/api/src/org/chromium/net/BidirectionalStream.java",
-        "components/cronet/android/api/src/org/chromium/net/CallbackException.java",
-        "components/cronet/android/api/src/org/chromium/net/CronetEngine.java",
-        "components/cronet/android/api/src/org/chromium/net/CronetException.java",
-        "components/cronet/android/api/src/org/chromium/net/CronetProvider.java",
-        "components/cronet/android/api/src/org/chromium/net/ExperimentalBidirectionalStream.java",
-        "components/cronet/android/api/src/org/chromium/net/ExperimentalCronetEngine.java",
-        "components/cronet/android/api/src/org/chromium/net/ExperimentalUrlRequest.java",
-        "components/cronet/android/api/src/org/chromium/net/ICronetEngineBuilder.java",
-        "components/cronet/android/api/src/org/chromium/net/InlineExecutionProhibitedException.java",
-        "components/cronet/android/api/src/org/chromium/net/NetworkException.java",
-        "components/cronet/android/api/src/org/chromium/net/NetworkQualityRttListener.java",
-        "components/cronet/android/api/src/org/chromium/net/NetworkQualityThroughputListener.java",
-        "components/cronet/android/api/src/org/chromium/net/QuicException.java",
-        "components/cronet/android/api/src/org/chromium/net/RequestFinishedInfo.java",
-        "components/cronet/android/api/src/org/chromium/net/UploadDataProvider.java",
-        "components/cronet/android/api/src/org/chromium/net/UploadDataProviders.java",
-        "components/cronet/android/api/src/org/chromium/net/UploadDataSink.java",
-        "components/cronet/android/api/src/org/chromium/net/UrlRequest.java",
-        "components/cronet/android/api/src/org/chromium/net/UrlResponseInfo.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/ByteArrayCronetCallback.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/ContentTypeParametersParser.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/CronetRequestCompletionListener.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/CronetResponse.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/ImplicitFlowControlCallback.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/InMemoryTransformCronetCallback.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/JsonCronetCallback.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/RedirectHandler.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/RedirectHandlers.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/StringCronetCallback.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/UploadDataProviders.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/UrlRequestCallbacks.java",
-        "components/cronet/android/fake/java/org/chromium/net/test/FakeCronetController.java",
-        "components/cronet/android/fake/java/org/chromium/net/test/FakeCronetEngine.java",
-        "components/cronet/android/fake/java/org/chromium/net/test/FakeCronetProvider.java",
-        "components/cronet/android/fake/java/org/chromium/net/test/FakeUrlRequest.java",
-        "components/cronet/android/fake/java/org/chromium/net/test/FakeUrlResponse.java",
-        "components/cronet/android/fake/java/org/chromium/net/test/ResponseMatcher.java",
-        "components/cronet/android/fake/java/org/chromium/net/test/UrlResponseMatcher.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/BidirectionalStreamBuilderImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/BidirectionalStreamNetworkException.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CallbackExceptionImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetBidirectionalStream.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetEngineBase.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetEngineBuilderImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetExceptionImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetLibraryLoader.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetLogger.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetLoggerFactory.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetManifest.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetMetrics.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetUploadDataStream.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetUrlRequest.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetUrlRequestContext.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/InputStreamChannel.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/JavaCronetEngine.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/JavaCronetEngineBuilderImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/JavaCronetProvider.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/JavaUploadDataSinkBase.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/JavaUrlRequest.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/JavaUrlRequestUtils.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/NativeCronetEngineBuilderImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/NativeCronetEngineBuilderWithLibraryLoaderImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/NativeCronetProvider.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/NetworkExceptionImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/NoOpLogger.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/Preconditions.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/QuicExceptionImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/RequestFinishedInfoImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/UrlRequestBase.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/UrlRequestBuilderImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/UrlResponseInfoImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/UserAgent.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/VersionSafeCallbacks.java",
-        "components/cronet/android/java/src/org/chromium/net/urlconnection/CronetBufferedOutputStream.java",
-        "components/cronet/android/java/src/org/chromium/net/urlconnection/CronetChunkedOutputStream.java",
-        "components/cronet/android/java/src/org/chromium/net/urlconnection/CronetFixedModeOutputStream.java",
-        "components/cronet/android/java/src/org/chromium/net/urlconnection/CronetHttpURLConnection.java",
-        "components/cronet/android/java/src/org/chromium/net/urlconnection/CronetHttpURLStreamHandler.java",
-        "components/cronet/android/java/src/org/chromium/net/urlconnection/CronetInputStream.java",
-        "components/cronet/android/java/src/org/chromium/net/urlconnection/CronetOutputStream.java",
-        "components/cronet/android/java/src/org/chromium/net/urlconnection/CronetURLStreamHandlerFactory.java",
-        "components/cronet/android/java/src/org/chromium/net/urlconnection/MessageLoop.java",
-        "net/android/java/src/org/chromium/net/AndroidCertVerifyResult.java",
-        "net/android/java/src/org/chromium/net/AndroidKeyStore.java",
-        "net/android/java/src/org/chromium/net/AndroidNetworkLibrary.java",
-        "net/android/java/src/org/chromium/net/AndroidTrafficStats.java",
-        "net/android/java/src/org/chromium/net/ChromiumNetworkAdapter.java",
-        "net/android/java/src/org/chromium/net/DnsStatus.java",
-        "net/android/java/src/org/chromium/net/GURLUtils.java",
-        "net/android/java/src/org/chromium/net/HttpNegotiateAuthenticator.java",
-        "net/android/java/src/org/chromium/net/HttpNegotiateConstants.java",
-        "net/android/java/src/org/chromium/net/HttpUtil.java",
-        "net/android/java/src/org/chromium/net/MimeTypeFilter.java",
-        "net/android/java/src/org/chromium/net/NetStringUtil.java",
-        "net/android/java/src/org/chromium/net/NetworkActiveNotifier.java",
-        "net/android/java/src/org/chromium/net/NetworkChangeNotifier.java",
-        "net/android/java/src/org/chromium/net/NetworkChangeNotifierAutoDetect.java",
-        "net/android/java/src/org/chromium/net/NetworkTrafficAnnotationTag.java",
-        "net/android/java/src/org/chromium/net/ProxyBroadcastReceiver.java",
-        "net/android/java/src/org/chromium/net/ProxyChangeListener.java",
-        "net/android/java/src/org/chromium/net/RegistrationPolicyAlwaysRegister.java",
-        "net/android/java/src/org/chromium/net/RegistrationPolicyApplicationStatus.java",
-        "net/android/java/src/org/chromium/net/ThreadStatsUid.java",
-        "net/android/java/src/org/chromium/net/X509Util.java",
-        "url/android/java/src/org/chromium/url/IDNStringUtil.java",
-    ],
-    cmd: "current_dir=`basename \\`pwd\\``; " +
-         "for f in $(in); " +
-         "do " +
-         "echo \"../$$current_dir/$$f\" >> $(genDir)/java.sources; " +
-         "done; " +
-         "python3 $(location base/android/jni_generator/jni_registration_generator.py) --srcjar-path " +
-         "$(genDir)/components/cronet/android/cronet_jni_registration.srcjar " +
-         "--depfile " +
-         "$(genDir)/components/cronet/android/cronet_jni_registration.d " +
-         "--sources-files " +
-         "$(genDir)/java.sources " +
-         "--include_test_only " +
-         "--use_proxy_hash " +
-         "--header-path " +
-         "$(genDir)/components/cronet/android/cronet_jni_registration.h " +
-         "--manual_jni_registration " +
-         ";sed -i -e 's/OUT_SOONG_.TEMP_SBOX_.*_OUT/GEN/g'  " +
-         "$(genDir)/components/cronet/android/cronet_jni_registration.h",
-    out: [
-        "components/cronet/android/cronet_jni_registration.h",
-        "components/cronet/android/cronet_jni_registration.srcjar",
-    ],
-    tool_files: [
-        "base/android/jni_generator/jni_generator.py",
-        "base/android/jni_generator/jni_registration_generator.py",
-        "build/android/gyp/util/__init__.py",
-        "build/android/gyp/util/build_utils.py",
-        "build/gn_helpers.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //components/cronet/android:cronet_jni_registration__android_x86
-cc_genrule {
-    name: "cronet_aml_components_cronet_android_cronet_jni_registration__android_x86",
-    srcs: [
-        "base/android/java/src/org/chromium/base/ActivityState.java",
-        "base/android/java/src/org/chromium/base/ApiCompatibilityUtils.java",
-        "base/android/java/src/org/chromium/base/ApkAssets.java",
-        "base/android/java/src/org/chromium/base/ApplicationStatus.java",
-        "base/android/java/src/org/chromium/base/BaseFeatureList.java",
-        "base/android/java/src/org/chromium/base/BuildInfo.java",
-        "base/android/java/src/org/chromium/base/BundleUtils.java",
-        "base/android/java/src/org/chromium/base/ByteArrayGenerator.java",
-        "base/android/java/src/org/chromium/base/Callback.java",
-        "base/android/java/src/org/chromium/base/CallbackController.java",
-        "base/android/java/src/org/chromium/base/CollectionUtil.java",
-        "base/android/java/src/org/chromium/base/CommandLine.java",
-        "base/android/java/src/org/chromium/base/CommandLineInitUtil.java",
-        "base/android/java/src/org/chromium/base/Consumer.java",
-        "base/android/java/src/org/chromium/base/ContentUriUtils.java",
-        "base/android/java/src/org/chromium/base/ContextUtils.java",
-        "base/android/java/src/org/chromium/base/CpuFeatures.java",
-        "base/android/java/src/org/chromium/base/DiscardableReferencePool.java",
-        "base/android/java/src/org/chromium/base/EarlyTraceEvent.java",
-        "base/android/java/src/org/chromium/base/EventLog.java",
-        "base/android/java/src/org/chromium/base/FeatureList.java",
-        "base/android/java/src/org/chromium/base/Features.java",
-        "base/android/java/src/org/chromium/base/FieldTrialList.java",
-        "base/android/java/src/org/chromium/base/FileUtils.java",
-        "base/android/java/src/org/chromium/base/Function.java",
-        "base/android/java/src/org/chromium/base/ImportantFileWriterAndroid.java",
-        "base/android/java/src/org/chromium/base/IntStringCallback.java",
-        "base/android/java/src/org/chromium/base/IntentUtils.java",
-        "base/android/java/src/org/chromium/base/JNIUtils.java",
-        "base/android/java/src/org/chromium/base/JavaExceptionReporter.java",
-        "base/android/java/src/org/chromium/base/JavaHandlerThread.java",
-        "base/android/java/src/org/chromium/base/JniException.java",
-        "base/android/java/src/org/chromium/base/JniStaticTestMocker.java",
-        "base/android/java/src/org/chromium/base/LifetimeAssert.java",
-        "base/android/java/src/org/chromium/base/LocaleUtils.java",
-        "base/android/java/src/org/chromium/base/Log.java",
-        "base/android/java/src/org/chromium/base/MathUtils.java",
-        "base/android/java/src/org/chromium/base/MemoryPressureListener.java",
-        "base/android/java/src/org/chromium/base/NativeLibraryLoadedStatus.java",
-        "base/android/java/src/org/chromium/base/ObserverList.java",
-        "base/android/java/src/org/chromium/base/PackageManagerUtils.java",
-        "base/android/java/src/org/chromium/base/PackageUtils.java",
-        "base/android/java/src/org/chromium/base/PathService.java",
-        "base/android/java/src/org/chromium/base/PathUtils.java",
-        "base/android/java/src/org/chromium/base/PiiElider.java",
-        "base/android/java/src/org/chromium/base/PowerMonitor.java",
-        "base/android/java/src/org/chromium/base/PowerMonitorForQ.java",
-        "base/android/java/src/org/chromium/base/Predicate.java",
-        "base/android/java/src/org/chromium/base/Promise.java",
-        "base/android/java/src/org/chromium/base/RadioUtils.java",
-        "base/android/java/src/org/chromium/base/StreamUtil.java",
-        "base/android/java/src/org/chromium/base/StrictModeContext.java",
-        "base/android/java/src/org/chromium/base/SysUtils.java",
-        "base/android/java/src/org/chromium/base/ThreadUtils.java",
-        "base/android/java/src/org/chromium/base/TimeUtils.java",
-        "base/android/java/src/org/chromium/base/TimezoneUtils.java",
-        "base/android/java/src/org/chromium/base/TraceEvent.java",
-        "base/android/java/src/org/chromium/base/UnguessableToken.java",
-        "base/android/java/src/org/chromium/base/UnownedUserData.java",
-        "base/android/java/src/org/chromium/base/UnownedUserDataHost.java",
-        "base/android/java/src/org/chromium/base/UnownedUserDataKey.java",
-        "base/android/java/src/org/chromium/base/UserData.java",
-        "base/android/java/src/org/chromium/base/UserDataHost.java",
-        "base/android/java/src/org/chromium/base/WrappedClassLoader.java",
-        "base/android/java/src/org/chromium/base/annotations/AccessedByNative.java",
-        "base/android/java/src/org/chromium/base/annotations/CalledByNative.java",
-        "base/android/java/src/org/chromium/base/annotations/CalledByNativeForTesting.java",
-        "base/android/java/src/org/chromium/base/annotations/CalledByNativeUnchecked.java",
-        "base/android/java/src/org/chromium/base/annotations/JNIAdditionalImport.java",
-        "base/android/java/src/org/chromium/base/annotations/JNINamespace.java",
-        "base/android/java/src/org/chromium/base/annotations/JniIgnoreNatives.java",
-        "base/android/java/src/org/chromium/base/annotations/NativeClassQualifiedName.java",
-        "base/android/java/src/org/chromium/base/annotations/NativeMethods.java",
-        "base/android/java/src/org/chromium/base/compat/ApiHelperForM.java",
-        "base/android/java/src/org/chromium/base/compat/ApiHelperForN.java",
-        "base/android/java/src/org/chromium/base/compat/ApiHelperForO.java",
-        "base/android/java/src/org/chromium/base/compat/ApiHelperForOMR1.java",
-        "base/android/java/src/org/chromium/base/compat/ApiHelperForP.java",
-        "base/android/java/src/org/chromium/base/compat/ApiHelperForQ.java",
-        "base/android/java/src/org/chromium/base/compat/ApiHelperForR.java",
-        "base/android/java/src/org/chromium/base/compat/ApiHelperForS.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/DummyJankTracker.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/FrameMetrics.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/FrameMetricsListener.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/FrameMetricsStore.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/JankActivityTracker.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/JankMetricCalculator.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/JankMetricUMARecorder.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/JankMetrics.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/JankReportingRunnable.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/JankReportingScheduler.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/JankScenario.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/JankTracker.java",
-        "base/android/java/src/org/chromium/base/jank_tracker/JankTrackerImpl.java",
-        "base/android/java/src/org/chromium/base/library_loader/LegacyLinker.java",
-        "base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java",
-        "base/android/java/src/org/chromium/base/library_loader/LibraryPrefetcher.java",
-        "base/android/java/src/org/chromium/base/library_loader/Linker.java",
-        "base/android/java/src/org/chromium/base/library_loader/LinkerJni.java",
-        "base/android/java/src/org/chromium/base/library_loader/LoaderErrors.java",
-        "base/android/java/src/org/chromium/base/library_loader/ModernLinker.java",
-        "base/android/java/src/org/chromium/base/library_loader/ModernLinkerJni.java",
-        "base/android/java/src/org/chromium/base/library_loader/NativeLibraryPreloader.java",
-        "base/android/java/src/org/chromium/base/library_loader/ProcessInitException.java",
-        "base/android/java/src/org/chromium/base/lifetime/DestroyChecker.java",
-        "base/android/java/src/org/chromium/base/lifetime/Destroyable.java",
-        "base/android/java/src/org/chromium/base/memory/JavaHeapDumpGenerator.java",
-        "base/android/java/src/org/chromium/base/memory/MemoryPressureCallback.java",
-        "base/android/java/src/org/chromium/base/memory/MemoryPressureMonitor.java",
-        "base/android/java/src/org/chromium/base/memory/MemoryPressureUma.java",
-        "base/android/java/src/org/chromium/base/memory/MemoryPurgeManager.java",
-        "base/android/java/src/org/chromium/base/metrics/CachingUmaRecorder.java",
-        "base/android/java/src/org/chromium/base/metrics/NativeUmaRecorder.java",
-        "base/android/java/src/org/chromium/base/metrics/NoopUmaRecorder.java",
-        "base/android/java/src/org/chromium/base/metrics/RecordHistogram.java",
-        "base/android/java/src/org/chromium/base/metrics/RecordUserAction.java",
-        "base/android/java/src/org/chromium/base/metrics/ScopedSysTraceEvent.java",
-        "base/android/java/src/org/chromium/base/metrics/StatisticsRecorderAndroid.java",
-        "base/android/java/src/org/chromium/base/metrics/TimingMetric.java",
-        "base/android/java/src/org/chromium/base/metrics/UmaRecorder.java",
-        "base/android/java/src/org/chromium/base/metrics/UmaRecorderHolder.java",
-        "base/android/java/src/org/chromium/base/multidex/ChromiumMultiDexInstaller.java",
-        "base/android/java/src/org/chromium/base/process_launcher/BindService.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildConnectionAllocator.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildProcessConnection.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildProcessConstants.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildProcessLauncher.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildProcessService.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildProcessServiceDelegate.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildServiceConnection.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildServiceConnectionDelegate.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildServiceConnectionFactory.java",
-        "base/android/java/src/org/chromium/base/process_launcher/ChildServiceConnectionImpl.java",
-        "base/android/java/src/org/chromium/base/process_launcher/FileDescriptorInfo.java",
-        "base/android/java/src/org/chromium/base/supplier/BooleanSupplier.java",
-        "base/android/java/src/org/chromium/base/supplier/DestroyableObservableSupplier.java",
-        "base/android/java/src/org/chromium/base/supplier/ObservableSupplier.java",
-        "base/android/java/src/org/chromium/base/supplier/ObservableSupplierImpl.java",
-        "base/android/java/src/org/chromium/base/supplier/OneShotCallback.java",
-        "base/android/java/src/org/chromium/base/supplier/OneshotSupplier.java",
-        "base/android/java/src/org/chromium/base/supplier/OneshotSupplierImpl.java",
-        "base/android/java/src/org/chromium/base/supplier/Supplier.java",
-        "base/android/java/src/org/chromium/base/supplier/UnownedUserDataSupplier.java",
-        "base/android/java/src/org/chromium/base/task/AsyncTask.java",
-        "base/android/java/src/org/chromium/base/task/BackgroundOnlyAsyncTask.java",
-        "base/android/java/src/org/chromium/base/task/ChainedTasks.java",
-        "base/android/java/src/org/chromium/base/task/ChoreographerTaskRunner.java",
-        "base/android/java/src/org/chromium/base/task/ChromeThreadPoolExecutor.java",
-        "base/android/java/src/org/chromium/base/task/DefaultTaskExecutor.java",
-        "base/android/java/src/org/chromium/base/task/PostTask.java",
-        "base/android/java/src/org/chromium/base/task/SequencedTaskRunner.java",
-        "base/android/java/src/org/chromium/base/task/SequencedTaskRunnerImpl.java",
-        "base/android/java/src/org/chromium/base/task/SerialExecutor.java",
-        "base/android/java/src/org/chromium/base/task/SingleThreadTaskRunner.java",
-        "base/android/java/src/org/chromium/base/task/SingleThreadTaskRunnerImpl.java",
-        "base/android/java/src/org/chromium/base/task/TaskExecutor.java",
-        "base/android/java/src/org/chromium/base/task/TaskRunner.java",
-        "base/android/java/src/org/chromium/base/task/TaskRunnerImpl.java",
-        "base/android/java/src/org/chromium/base/task/TaskTraits.java",
-        "base/android/java/src/org/chromium/base/task/TaskTraitsExtensionDescriptor.java",
-        "build/android/java/src/org/chromium/build/annotations/AlwaysInline.java",
-        "build/android/java/src/org/chromium/build/annotations/CheckDiscard.java",
-        "build/android/java/src/org/chromium/build/annotations/DoNotClassMerge.java",
-        "build/android/java/src/org/chromium/build/annotations/DoNotInline.java",
-        "build/android/java/src/org/chromium/build/annotations/IdentifierNameString.java",
-        "build/android/java/src/org/chromium/build/annotations/MainDex.java",
-        "build/android/java/src/org/chromium/build/annotations/MockedInTests.java",
-        "build/android/java/src/org/chromium/build/annotations/UsedByReflection.java",
-        "components/cronet/android/api/src/org/chromium/net/BidirectionalStream.java",
-        "components/cronet/android/api/src/org/chromium/net/CallbackException.java",
-        "components/cronet/android/api/src/org/chromium/net/CronetEngine.java",
-        "components/cronet/android/api/src/org/chromium/net/CronetException.java",
-        "components/cronet/android/api/src/org/chromium/net/CronetProvider.java",
-        "components/cronet/android/api/src/org/chromium/net/ExperimentalBidirectionalStream.java",
-        "components/cronet/android/api/src/org/chromium/net/ExperimentalCronetEngine.java",
-        "components/cronet/android/api/src/org/chromium/net/ExperimentalUrlRequest.java",
-        "components/cronet/android/api/src/org/chromium/net/ICronetEngineBuilder.java",
-        "components/cronet/android/api/src/org/chromium/net/InlineExecutionProhibitedException.java",
-        "components/cronet/android/api/src/org/chromium/net/NetworkException.java",
-        "components/cronet/android/api/src/org/chromium/net/NetworkQualityRttListener.java",
-        "components/cronet/android/api/src/org/chromium/net/NetworkQualityThroughputListener.java",
-        "components/cronet/android/api/src/org/chromium/net/QuicException.java",
-        "components/cronet/android/api/src/org/chromium/net/RequestFinishedInfo.java",
-        "components/cronet/android/api/src/org/chromium/net/UploadDataProvider.java",
-        "components/cronet/android/api/src/org/chromium/net/UploadDataProviders.java",
-        "components/cronet/android/api/src/org/chromium/net/UploadDataSink.java",
-        "components/cronet/android/api/src/org/chromium/net/UrlRequest.java",
-        "components/cronet/android/api/src/org/chromium/net/UrlResponseInfo.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/ByteArrayCronetCallback.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/ContentTypeParametersParser.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/CronetRequestCompletionListener.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/CronetResponse.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/ImplicitFlowControlCallback.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/InMemoryTransformCronetCallback.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/JsonCronetCallback.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/RedirectHandler.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/RedirectHandlers.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/StringCronetCallback.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/UploadDataProviders.java",
-        "components/cronet/android/api/src/org/chromium/net/apihelpers/UrlRequestCallbacks.java",
-        "components/cronet/android/fake/java/org/chromium/net/test/FakeCronetController.java",
-        "components/cronet/android/fake/java/org/chromium/net/test/FakeCronetEngine.java",
-        "components/cronet/android/fake/java/org/chromium/net/test/FakeCronetProvider.java",
-        "components/cronet/android/fake/java/org/chromium/net/test/FakeUrlRequest.java",
-        "components/cronet/android/fake/java/org/chromium/net/test/FakeUrlResponse.java",
-        "components/cronet/android/fake/java/org/chromium/net/test/ResponseMatcher.java",
-        "components/cronet/android/fake/java/org/chromium/net/test/UrlResponseMatcher.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/BidirectionalStreamBuilderImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/BidirectionalStreamNetworkException.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CallbackExceptionImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetBidirectionalStream.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetEngineBase.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetEngineBuilderImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetExceptionImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetLibraryLoader.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetLogger.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetLoggerFactory.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetManifest.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetMetrics.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetUploadDataStream.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetUrlRequest.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/CronetUrlRequestContext.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/InputStreamChannel.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/JavaCronetEngine.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/JavaCronetEngineBuilderImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/JavaCronetProvider.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/JavaUploadDataSinkBase.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/JavaUrlRequest.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/JavaUrlRequestUtils.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/NativeCronetEngineBuilderImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/NativeCronetEngineBuilderWithLibraryLoaderImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/NativeCronetProvider.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/NetworkExceptionImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/NoOpLogger.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/Preconditions.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/QuicExceptionImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/RequestFinishedInfoImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/UrlRequestBase.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/UrlRequestBuilderImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/UrlResponseInfoImpl.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/UserAgent.java",
-        "components/cronet/android/java/src/org/chromium/net/impl/VersionSafeCallbacks.java",
-        "components/cronet/android/java/src/org/chromium/net/urlconnection/CronetBufferedOutputStream.java",
-        "components/cronet/android/java/src/org/chromium/net/urlconnection/CronetChunkedOutputStream.java",
-        "components/cronet/android/java/src/org/chromium/net/urlconnection/CronetFixedModeOutputStream.java",
-        "components/cronet/android/java/src/org/chromium/net/urlconnection/CronetHttpURLConnection.java",
-        "components/cronet/android/java/src/org/chromium/net/urlconnection/CronetHttpURLStreamHandler.java",
-        "components/cronet/android/java/src/org/chromium/net/urlconnection/CronetInputStream.java",
-        "components/cronet/android/java/src/org/chromium/net/urlconnection/CronetOutputStream.java",
-        "components/cronet/android/java/src/org/chromium/net/urlconnection/CronetURLStreamHandlerFactory.java",
-        "components/cronet/android/java/src/org/chromium/net/urlconnection/MessageLoop.java",
-        "net/android/java/src/org/chromium/net/AndroidCertVerifyResult.java",
-        "net/android/java/src/org/chromium/net/AndroidKeyStore.java",
-        "net/android/java/src/org/chromium/net/AndroidNetworkLibrary.java",
-        "net/android/java/src/org/chromium/net/AndroidTrafficStats.java",
-        "net/android/java/src/org/chromium/net/ChromiumNetworkAdapter.java",
-        "net/android/java/src/org/chromium/net/DnsStatus.java",
-        "net/android/java/src/org/chromium/net/GURLUtils.java",
-        "net/android/java/src/org/chromium/net/HttpNegotiateAuthenticator.java",
-        "net/android/java/src/org/chromium/net/HttpNegotiateConstants.java",
-        "net/android/java/src/org/chromium/net/HttpUtil.java",
-        "net/android/java/src/org/chromium/net/MimeTypeFilter.java",
-        "net/android/java/src/org/chromium/net/NetStringUtil.java",
-        "net/android/java/src/org/chromium/net/NetworkActiveNotifier.java",
-        "net/android/java/src/org/chromium/net/NetworkChangeNotifier.java",
-        "net/android/java/src/org/chromium/net/NetworkChangeNotifierAutoDetect.java",
-        "net/android/java/src/org/chromium/net/NetworkTrafficAnnotationTag.java",
-        "net/android/java/src/org/chromium/net/ProxyBroadcastReceiver.java",
-        "net/android/java/src/org/chromium/net/ProxyChangeListener.java",
-        "net/android/java/src/org/chromium/net/RegistrationPolicyAlwaysRegister.java",
-        "net/android/java/src/org/chromium/net/RegistrationPolicyApplicationStatus.java",
-        "net/android/java/src/org/chromium/net/ThreadStatsUid.java",
-        "net/android/java/src/org/chromium/net/X509Util.java",
-        "url/android/java/src/org/chromium/url/IDNStringUtil.java",
-    ],
-    cmd: "current_dir=`basename \\`pwd\\``; " +
-         "for f in $(in); " +
-         "do " +
-         "echo \"../$$current_dir/$$f\" >> $(genDir)/java.sources; " +
-         "done; " +
-         "python3 $(location base/android/jni_generator/jni_registration_generator.py) --srcjar-path " +
-         "$(genDir)/components/cronet/android/cronet_jni_registration.srcjar " +
-         "--depfile " +
-         "$(genDir)/components/cronet/android/cronet_jni_registration.d " +
-         "--sources-files " +
-         "$(genDir)/java.sources " +
-         "--include_test_only " +
-         "--use_proxy_hash " +
-         "--header-path " +
-         "$(genDir)/components/cronet/android/cronet_jni_registration.h " +
-         "--manual_jni_registration " +
-         ";sed -i -e 's/OUT_SOONG_.TEMP_SBOX_.*_OUT/GEN/g'  " +
-         "$(genDir)/components/cronet/android/cronet_jni_registration.h",
-    out: [
-        "components/cronet/android/cronet_jni_registration.h",
-        "components/cronet/android/cronet_jni_registration.srcjar",
-    ],
-    tool_files: [
-        "base/android/jni_generator/jni_generator.py",
-        "base/android/jni_generator/jni_registration_generator.py",
-        "build/android/gyp/util/__init__.py",
-        "build/android/gyp/util/build_utils.py",
-        "build/gn_helpers.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //components/cronet/android:cronet_jni_registration__android_x86_64
-cc_genrule {
-    name: "cronet_aml_components_cronet_android_cronet_jni_registration__android_x86_64",
+    name: "cronet_aml_components_cronet_android_cronet_jni_registration",
     srcs: [
         "base/android/java/src/org/chromium/base/ActivityState.java",
         "base/android/java/src/org/chromium/base/ApiCompatibilityUtils.java",
@@ -8672,7 +3225,16 @@
         "cronet_aml_url_url",
     ],
     generated_headers: [
+        "cronet_aml_base_debugging_buildflags",
+        "cronet_aml_base_logging_buildflags",
+        "cronet_aml_build_chromeos_buildflags",
+        "cronet_aml_components_cronet_android_buildflags",
+        "cronet_aml_components_cronet_android_cronet_jni_headers",
+        "cronet_aml_components_cronet_android_cronet_jni_registration",
+        "cronet_aml_components_cronet_cronet_buildflags",
+        "cronet_aml_components_cronet_cronet_version_header_action",
         "cronet_aml_third_party_metrics_proto_metrics_proto_gen_headers",
+        "cronet_aml_url_buildflags",
     ],
     defaults: [
         "cronet_aml_defaults",
@@ -8716,63 +3278,15 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm",
-                "cronet_aml_base_logging_buildflags__android_arm",
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-                "cronet_aml_components_cronet_android_buildflags__android_arm",
-                "cronet_aml_components_cronet_android_cronet_jni_headers__android_arm",
-                "cronet_aml_components_cronet_android_cronet_jni_registration__android_arm",
-                "cronet_aml_components_cronet_cronet_buildflags__android_arm",
-                "cronet_aml_components_cronet_cronet_version_header_action__android_arm",
-                "cronet_aml_url_buildflags__android_arm",
-            ],
-        },
-        android_arm64: {
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm64",
-                "cronet_aml_base_logging_buildflags__android_arm64",
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-                "cronet_aml_components_cronet_android_buildflags__android_arm64",
-                "cronet_aml_components_cronet_android_cronet_jni_headers__android_arm64",
-                "cronet_aml_components_cronet_android_cronet_jni_registration__android_arm64",
-                "cronet_aml_components_cronet_cronet_buildflags__android_arm64",
-                "cronet_aml_components_cronet_cronet_version_header_action__android_arm64",
-                "cronet_aml_url_buildflags__android_arm64",
-            ],
-        },
         android_x86: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86",
-                "cronet_aml_base_logging_buildflags__android_x86",
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-                "cronet_aml_components_cronet_android_buildflags__android_x86",
-                "cronet_aml_components_cronet_android_cronet_jni_headers__android_x86",
-                "cronet_aml_components_cronet_android_cronet_jni_registration__android_x86",
-                "cronet_aml_components_cronet_cronet_buildflags__android_x86",
-                "cronet_aml_components_cronet_cronet_version_header_action__android_x86",
-                "cronet_aml_url_buildflags__android_x86",
-            ],
         },
         android_x86_64: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86_64",
-                "cronet_aml_base_logging_buildflags__android_x86_64",
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-                "cronet_aml_components_cronet_android_buildflags__android_x86_64",
-                "cronet_aml_components_cronet_android_cronet_jni_headers__android_x86_64",
-                "cronet_aml_components_cronet_android_cronet_jni_registration__android_x86_64",
-                "cronet_aml_components_cronet_cronet_buildflags__android_x86_64",
-                "cronet_aml_components_cronet_cronet_version_header_action__android_x86_64",
-                "cronet_aml_url_buildflags__android_x86_64",
-            ],
         },
     },
 }
@@ -9023,78 +3537,9 @@
     ],
 }
 
-// GN: //components/cronet:cronet_buildflags__android_arm
+// GN: //components/cronet:cronet_buildflags
 cc_genrule {
-    name: "cronet_aml_components_cronet_cronet_buildflags__android_arm",
-    cmd: "echo '--flags DISABLE_HISTOGRAM_SUPPORT=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//components/cronet:cronet_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "components/cronet/cronet_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //components/cronet:cronet_buildflags__android_arm64
-cc_genrule {
-    name: "cronet_aml_components_cronet_cronet_buildflags__android_arm64",
-    cmd: "echo '--flags DISABLE_HISTOGRAM_SUPPORT=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//components/cronet:cronet_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "components/cronet/cronet_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //components/cronet:cronet_buildflags__android_x86
-cc_genrule {
-    name: "cronet_aml_components_cronet_cronet_buildflags__android_x86",
-    cmd: "echo '--flags DISABLE_HISTOGRAM_SUPPORT=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//components/cronet:cronet_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "components/cronet/cronet_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //components/cronet:cronet_buildflags__android_x86_64
-cc_genrule {
-    name: "cronet_aml_components_cronet_cronet_buildflags__android_x86_64",
+    name: "cronet_aml_components_cronet_cronet_buildflags",
     cmd: "echo '--flags DISABLE_HISTOGRAM_SUPPORT=\"false\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
@@ -9155,6 +3600,8 @@
         "cronet_aml_url_url",
     ],
     generated_headers: [
+        "cronet_aml_components_cronet_cronet_buildflags",
+        "cronet_aml_components_cronet_cronet_version_header_action",
         "cronet_aml_third_party_metrics_proto_metrics_proto_gen_headers",
     ],
     defaults: [
@@ -9195,35 +3642,15 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            generated_headers: [
-                "cronet_aml_components_cronet_cronet_buildflags__android_arm",
-                "cronet_aml_components_cronet_cronet_version_header_action__android_arm",
-            ],
-        },
-        android_arm64: {
-            generated_headers: [
-                "cronet_aml_components_cronet_cronet_buildflags__android_arm64",
-                "cronet_aml_components_cronet_cronet_version_header_action__android_arm64",
-            ],
-        },
         android_x86: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_components_cronet_cronet_buildflags__android_x86",
-                "cronet_aml_components_cronet_cronet_version_header_action__android_x86",
-            ],
         },
         android_x86_64: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_components_cronet_cronet_buildflags__android_x86_64",
-                "cronet_aml_components_cronet_cronet_version_header_action__android_x86_64",
-            ],
         },
     },
 }
@@ -9231,6 +3658,9 @@
 // GN: //components/cronet:cronet_version_header
 cc_object {
     name: "cronet_aml_components_cronet_cronet_version_header",
+    generated_headers: [
+        "cronet_aml_components_cronet_cronet_version_header_action",
+    ],
     defaults: [
         "cronet_aml_defaults",
     ],
@@ -9259,113 +3689,22 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            generated_headers: [
-                "cronet_aml_components_cronet_cronet_version_header_action__android_arm",
-            ],
-        },
-        android_arm64: {
-            generated_headers: [
-                "cronet_aml_components_cronet_cronet_version_header_action__android_arm64",
-            ],
-        },
         android_x86: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_components_cronet_cronet_version_header_action__android_x86",
-            ],
         },
         android_x86_64: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_components_cronet_cronet_version_header_action__android_x86_64",
-            ],
         },
     },
 }
 
-// GN: //components/cronet:cronet_version_header_action__android_arm
+// GN: //components/cronet:cronet_version_header_action
 cc_genrule {
-    name: "cronet_aml_components_cronet_cronet_version_header_action__android_arm",
-    cmd: "$(location build/util/version.py) -f " +
-         "$(location chrome/VERSION) " +
-         "-e " +
-         "'VERSION_FULL=\"%s.%s.%s.%s\" % (MAJOR,MINOR,BUILD,PATCH)' " +
-         "-o " +
-         "$(out) " +
-         "$(location components/cronet/version.h.in)",
-    out: [
-        "components/cronet/version.h",
-    ],
-    tool_files: [
-        "build/util/LASTCHANGE",
-        "build/util/android_chrome_version.py",
-        "build/util/version.py",
-        "chrome/VERSION",
-        "components/cronet/version.h.in",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //components/cronet:cronet_version_header_action__android_arm64
-cc_genrule {
-    name: "cronet_aml_components_cronet_cronet_version_header_action__android_arm64",
-    cmd: "$(location build/util/version.py) -f " +
-         "$(location chrome/VERSION) " +
-         "-e " +
-         "'VERSION_FULL=\"%s.%s.%s.%s\" % (MAJOR,MINOR,BUILD,PATCH)' " +
-         "-o " +
-         "$(out) " +
-         "$(location components/cronet/version.h.in)",
-    out: [
-        "components/cronet/version.h",
-    ],
-    tool_files: [
-        "build/util/LASTCHANGE",
-        "build/util/android_chrome_version.py",
-        "build/util/version.py",
-        "chrome/VERSION",
-        "components/cronet/version.h.in",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //components/cronet:cronet_version_header_action__android_x86
-cc_genrule {
-    name: "cronet_aml_components_cronet_cronet_version_header_action__android_x86",
-    cmd: "$(location build/util/version.py) -f " +
-         "$(location chrome/VERSION) " +
-         "-e " +
-         "'VERSION_FULL=\"%s.%s.%s.%s\" % (MAJOR,MINOR,BUILD,PATCH)' " +
-         "-o " +
-         "$(out) " +
-         "$(location components/cronet/version.h.in)",
-    out: [
-        "components/cronet/version.h",
-    ],
-    tool_files: [
-        "build/util/LASTCHANGE",
-        "build/util/android_chrome_version.py",
-        "build/util/version.py",
-        "chrome/VERSION",
-        "components/cronet/version.h.in",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //components/cronet:cronet_version_header_action__android_x86_64
-cc_genrule {
-    name: "cronet_aml_components_cronet_cronet_version_header_action__android_x86_64",
+    name: "cronet_aml_components_cronet_cronet_version_header_action",
     cmd: "$(location build/util/version.py) -f " +
          "$(location chrome/VERSION) " +
          "-e " +
@@ -9560,6 +3899,8 @@
         "cronet_aml_url_url",
     ],
     generated_headers: [
+        "cronet_aml_components_cronet_cronet_buildflags",
+        "cronet_aml_components_cronet_cronet_version_header_action",
         "cronet_aml_third_party_metrics_proto_metrics_proto_gen_headers",
     ],
     defaults: [
@@ -9603,35 +3944,15 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            generated_headers: [
-                "cronet_aml_components_cronet_cronet_buildflags__android_arm",
-                "cronet_aml_components_cronet_cronet_version_header_action__android_arm",
-            ],
-        },
-        android_arm64: {
-            generated_headers: [
-                "cronet_aml_components_cronet_cronet_buildflags__android_arm64",
-                "cronet_aml_components_cronet_cronet_version_header_action__android_arm64",
-            ],
-        },
         android_x86: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_components_cronet_cronet_buildflags__android_x86",
-                "cronet_aml_components_cronet_cronet_version_header_action__android_x86",
-            ],
         },
         android_x86_64: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_components_cronet_cronet_buildflags__android_x86_64",
-                "cronet_aml_components_cronet_cronet_version_header_action__android_x86_64",
-            ],
         },
     },
 }
@@ -9841,130 +4162,9 @@
     },
 }
 
-// GN: //components/nacl/common:buildflags__host
+// GN: //components/prefs/android:jni_headers
 cc_genrule {
-    name: "cronet_aml_components_nacl_common_buildflags__host",
-    cmd: "echo '--flags ENABLE_NACL=\"true\" IS_MINIMAL_TOOLCHAIN=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//components/nacl/common:buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    host_supported: true,
-    device_supported: false,
-    out: [
-        "components/nacl/common/buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //components/prefs/android:jni_headers__android_arm
-cc_genrule {
-    name: "cronet_aml_components_prefs_android_jni_headers__android_arm",
-    srcs: [
-        "components/prefs/android/java/src/org/chromium/components/prefs/PrefService.java",
-    ],
-    cmd: "$(location base/android/jni_generator/jni_generator.py) --ptr_type " +
-         "long " +
-         "--output_dir " +
-         "$(genDir)/components/prefs/android/jni_headers " +
-         "--includes " +
-         "base/android/jni_generator/jni_generator_helper.h " +
-         "--use_proxy_hash " +
-         "--output_name " +
-         "PrefService_jni.h " +
-         "--input_file " +
-         "$(location components/prefs/android/java/src/org/chromium/components/prefs/PrefService.java)",
-    out: [
-        "components/prefs/android/jni_headers/PrefService_jni.h",
-    ],
-    tool_files: [
-        "base/android/jni_generator/android_jar.classes",
-        "base/android/jni_generator/jni_generator.py",
-        "build/android/gyp/util/__init__.py",
-        "build/android/gyp/util/build_utils.py",
-        "build/gn_helpers.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //components/prefs/android:jni_headers__android_arm64
-cc_genrule {
-    name: "cronet_aml_components_prefs_android_jni_headers__android_arm64",
-    srcs: [
-        "components/prefs/android/java/src/org/chromium/components/prefs/PrefService.java",
-    ],
-    cmd: "$(location base/android/jni_generator/jni_generator.py) --ptr_type " +
-         "long " +
-         "--output_dir " +
-         "$(genDir)/components/prefs/android/jni_headers " +
-         "--includes " +
-         "base/android/jni_generator/jni_generator_helper.h " +
-         "--use_proxy_hash " +
-         "--output_name " +
-         "PrefService_jni.h " +
-         "--input_file " +
-         "$(location components/prefs/android/java/src/org/chromium/components/prefs/PrefService.java)",
-    out: [
-        "components/prefs/android/jni_headers/PrefService_jni.h",
-    ],
-    tool_files: [
-        "base/android/jni_generator/android_jar.classes",
-        "base/android/jni_generator/jni_generator.py",
-        "build/android/gyp/util/__init__.py",
-        "build/android/gyp/util/build_utils.py",
-        "build/gn_helpers.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //components/prefs/android:jni_headers__android_x86
-cc_genrule {
-    name: "cronet_aml_components_prefs_android_jni_headers__android_x86",
-    srcs: [
-        "components/prefs/android/java/src/org/chromium/components/prefs/PrefService.java",
-    ],
-    cmd: "$(location base/android/jni_generator/jni_generator.py) --ptr_type " +
-         "long " +
-         "--output_dir " +
-         "$(genDir)/components/prefs/android/jni_headers " +
-         "--includes " +
-         "base/android/jni_generator/jni_generator_helper.h " +
-         "--use_proxy_hash " +
-         "--output_name " +
-         "PrefService_jni.h " +
-         "--input_file " +
-         "$(location components/prefs/android/java/src/org/chromium/components/prefs/PrefService.java)",
-    out: [
-        "components/prefs/android/jni_headers/PrefService_jni.h",
-    ],
-    tool_files: [
-        "base/android/jni_generator/android_jar.classes",
-        "base/android/jni_generator/jni_generator.py",
-        "build/android/gyp/util/__init__.py",
-        "build/android/gyp/util/build_utils.py",
-        "build/gn_helpers.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //components/prefs/android:jni_headers__android_x86_64
-cc_genrule {
-    name: "cronet_aml_components_prefs_android_jni_headers__android_x86_64",
+    name: "cronet_aml_components_prefs_android_jni_headers",
     srcs: [
         "components/prefs/android/java/src/org/chromium/components/prefs/PrefService.java",
     ],
@@ -10036,6 +4236,18 @@
         "cronet_aml_third_party_libevent_libevent",
         "cronet_aml_third_party_modp_b64_modp_b64",
     ],
+    generated_headers: [
+        "cronet_aml_base_debugging_buildflags",
+        "cronet_aml_base_logging_buildflags",
+        "cronet_aml_build_chromeos_buildflags",
+        "cronet_aml_components_prefs_android_jni_headers",
+    ],
+    export_generated_headers: [
+        "cronet_aml_base_debugging_buildflags",
+        "cronet_aml_base_logging_buildflags",
+        "cronet_aml_build_chromeos_buildflags",
+        "cronet_aml_components_prefs_android_jni_headers",
+    ],
     defaults: [
         "cronet_aml_defaults",
     ],
@@ -10067,74 +4279,22 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm",
-                "cronet_aml_base_logging_buildflags__android_arm",
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-                "cronet_aml_components_prefs_android_jni_headers__android_arm",
-            ],
-            export_generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm",
-                "cronet_aml_base_logging_buildflags__android_arm",
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-                "cronet_aml_components_prefs_android_jni_headers__android_arm",
-            ],
-        },
-        android_arm64: {
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm64",
-                "cronet_aml_base_logging_buildflags__android_arm64",
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-                "cronet_aml_components_prefs_android_jni_headers__android_arm64",
-            ],
-            export_generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm64",
-                "cronet_aml_base_logging_buildflags__android_arm64",
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-                "cronet_aml_components_prefs_android_jni_headers__android_arm64",
-            ],
-        },
         android_x86: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86",
-                "cronet_aml_base_logging_buildflags__android_x86",
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-                "cronet_aml_components_prefs_android_jni_headers__android_x86",
-            ],
-            export_generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86",
-                "cronet_aml_base_logging_buildflags__android_x86",
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-                "cronet_aml_components_prefs_android_jni_headers__android_x86",
-            ],
         },
         android_x86_64: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86_64",
-                "cronet_aml_base_logging_buildflags__android_x86_64",
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-                "cronet_aml_components_prefs_android_jni_headers__android_x86_64",
-            ],
-            export_generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86_64",
-                "cronet_aml_base_logging_buildflags__android_x86_64",
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-                "cronet_aml_components_prefs_android_jni_headers__android_x86_64",
-            ],
         },
     },
 }
 
-// GN: //crypto:buildflags__android_arm
+// GN: //crypto:buildflags
 cc_genrule {
-    name: "cronet_aml_crypto_buildflags__android_arm",
+    name: "cronet_aml_crypto_buildflags",
     cmd: "echo '--flags USE_NSS_CERTS=\"false\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
@@ -10155,100 +4315,6 @@
     ],
 }
 
-// GN: //crypto:buildflags__android_arm64
-cc_genrule {
-    name: "cronet_aml_crypto_buildflags__android_arm64",
-    cmd: "echo '--flags USE_NSS_CERTS=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//crypto:buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "crypto/crypto_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //crypto:buildflags__android_x86
-cc_genrule {
-    name: "cronet_aml_crypto_buildflags__android_x86",
-    cmd: "echo '--flags USE_NSS_CERTS=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//crypto:buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "crypto/crypto_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //crypto:buildflags__android_x86_64
-cc_genrule {
-    name: "cronet_aml_crypto_buildflags__android_x86_64",
-    cmd: "echo '--flags USE_NSS_CERTS=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//crypto:buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "crypto/crypto_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //crypto:buildflags__host
-cc_genrule {
-    name: "cronet_aml_crypto_buildflags__host",
-    cmd: "echo '--flags USE_NSS_CERTS=\"true\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//crypto:buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    host_supported: true,
-    device_supported: false,
-    out: [
-        "crypto/crypto_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
 // GN: //crypto:crypto
 cc_library_static {
     name: "cronet_aml_crypto_crypto",
@@ -10273,6 +4339,10 @@
         "crypto/unexportable_key.cc",
         "crypto/unexportable_key_metrics.cc",
     ],
+    shared_libs: [
+        "libandroid",
+        "liblog",
+    ],
     static_libs: [
         "cronet_aml_base_allocator_partition_allocator_partition_alloc",
         "cronet_aml_base_base",
@@ -10285,16 +4355,24 @@
         "cronet_aml_third_party_libevent_libevent",
         "cronet_aml_third_party_modp_b64_modp_b64",
     ],
-    host_supported: true,
+    generated_headers: [
+        "cronet_aml_crypto_buildflags",
+    ],
+    export_generated_headers: [
+        "cronet_aml_crypto_buildflags",
+    ],
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCRYPTO_IMPLEMENTATION",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -10314,100 +4392,15 @@
     ],
     cpp_std: "c++20",
     target: {
-        android: {
-            shared_libs: [
-                "libandroid",
-                "liblog",
-            ],
-        },
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-            generated_headers: [
-                "cronet_aml_crypto_buildflags__android_arm",
-            ],
-            export_generated_headers: [
-                "cronet_aml_crypto_buildflags__android_arm",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-            generated_headers: [
-                "cronet_aml_crypto_buildflags__android_arm64",
-            ],
-            export_generated_headers: [
-                "cronet_aml_crypto_buildflags__android_arm64",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_crypto_buildflags__android_x86",
-            ],
-            export_generated_headers: [
-                "cronet_aml_crypto_buildflags__android_x86",
-            ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_crypto_buildflags__android_x86_64",
-            ],
-            export_generated_headers: [
-                "cronet_aml_crypto_buildflags__android_x86_64",
-            ],
-        },
-        host: {
-            srcs: [
-                "crypto/nss_key_util.cc",
-                "crypto/nss_util.cc",
-            ],
-            static_libs: [
-                "cronet_aml_base_third_party_symbolize_symbolize",
-                "cronet_aml_base_third_party_xdg_mime_xdg_mime",
-                "cronet_aml_base_third_party_xdg_user_dirs_xdg_user_dirs",
-            ],
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
-                "-msse3",
-            ],
-            local_include_dirs: [
-                "build/linux/debian_bullseye_amd64-sysroot/usr/include/nspr",
-                "build/linux/debian_bullseye_amd64-sysroot/usr/include/nss",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__host",
-                "cronet_aml_components_nacl_common_buildflags__host",
-                "cronet_aml_crypto_buildflags__host",
-            ],
-            export_generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__host",
-                "cronet_aml_components_nacl_common_buildflags__host",
-                "cronet_aml_crypto_buildflags__host",
-            ],
         },
     },
 }
@@ -10921,9 +4914,9 @@
     ],
 }
 
-// GN: //net/base/registry_controlled_domains:registry_controlled_domains__android_arm
+// GN: //net/base/registry_controlled_domains:registry_controlled_domains
 cc_genrule {
-    name: "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_arm",
+    name: "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains",
     cmd: "$(location net/tools/dafsa/make_dafsa.py) --reverse " +
          "$(location net/base/registry_controlled_domains/effective_tld_names.gperf) " +
          "$(location net/base/registry_controlled_domains/effective_tld_names-reversed-inc.cc) " +
@@ -10975,172 +4968,12 @@
     ],
 }
 
-// GN: //net/base/registry_controlled_domains:registry_controlled_domains__android_arm64
+// GN: //net:buildflags
 cc_genrule {
-    name: "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_arm64",
-    cmd: "$(location net/tools/dafsa/make_dafsa.py) --reverse " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names.gperf) " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names-reversed-inc.cc) " +
-         "&& python3 $(location net/tools/dafsa/make_dafsa.py) " +
-         "--reverse " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest1.gperf) " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest1-reversed-inc.cc) " +
-         "&& python3 $(location net/tools/dafsa/make_dafsa.py) " +
-         "--reverse " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest2.gperf) " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest2-reversed-inc.cc) " +
-         "&& python3 $(location net/tools/dafsa/make_dafsa.py) " +
-         "--reverse " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest3.gperf) " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest3-reversed-inc.cc) " +
-         "&& python3 $(location net/tools/dafsa/make_dafsa.py) " +
-         "--reverse " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest4.gperf) " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest4-reversed-inc.cc) " +
-         "&& python3 $(location net/tools/dafsa/make_dafsa.py) " +
-         "--reverse " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest5.gperf) " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest5-reversed-inc.cc) " +
-         "&& python3 $(location net/tools/dafsa/make_dafsa.py) " +
-         "--reverse " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest6.gperf) " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest6-reversed-inc.cc)",
-    out: [
-        "net/base/registry_controlled_domains/effective_tld_names-reversed-inc.cc",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest1-reversed-inc.cc",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest2-reversed-inc.cc",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest3-reversed-inc.cc",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest4-reversed-inc.cc",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest5-reversed-inc.cc",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest6-reversed-inc.cc",
-    ],
-    tool_files: [
-        "net/base/registry_controlled_domains/effective_tld_names.gperf",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest1.gperf",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest2.gperf",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest3.gperf",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest4.gperf",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest5.gperf",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest6.gperf",
-        "net/tools/dafsa/make_dafsa.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //net/base/registry_controlled_domains:registry_controlled_domains__android_x86
-cc_genrule {
-    name: "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_x86",
-    cmd: "$(location net/tools/dafsa/make_dafsa.py) --reverse " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names.gperf) " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names-reversed-inc.cc) " +
-         "&& python3 $(location net/tools/dafsa/make_dafsa.py) " +
-         "--reverse " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest1.gperf) " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest1-reversed-inc.cc) " +
-         "&& python3 $(location net/tools/dafsa/make_dafsa.py) " +
-         "--reverse " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest2.gperf) " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest2-reversed-inc.cc) " +
-         "&& python3 $(location net/tools/dafsa/make_dafsa.py) " +
-         "--reverse " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest3.gperf) " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest3-reversed-inc.cc) " +
-         "&& python3 $(location net/tools/dafsa/make_dafsa.py) " +
-         "--reverse " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest4.gperf) " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest4-reversed-inc.cc) " +
-         "&& python3 $(location net/tools/dafsa/make_dafsa.py) " +
-         "--reverse " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest5.gperf) " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest5-reversed-inc.cc) " +
-         "&& python3 $(location net/tools/dafsa/make_dafsa.py) " +
-         "--reverse " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest6.gperf) " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest6-reversed-inc.cc)",
-    out: [
-        "net/base/registry_controlled_domains/effective_tld_names-reversed-inc.cc",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest1-reversed-inc.cc",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest2-reversed-inc.cc",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest3-reversed-inc.cc",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest4-reversed-inc.cc",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest5-reversed-inc.cc",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest6-reversed-inc.cc",
-    ],
-    tool_files: [
-        "net/base/registry_controlled_domains/effective_tld_names.gperf",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest1.gperf",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest2.gperf",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest3.gperf",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest4.gperf",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest5.gperf",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest6.gperf",
-        "net/tools/dafsa/make_dafsa.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //net/base/registry_controlled_domains:registry_controlled_domains__android_x86_64
-cc_genrule {
-    name: "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_x86_64",
-    cmd: "$(location net/tools/dafsa/make_dafsa.py) --reverse " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names.gperf) " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names-reversed-inc.cc) " +
-         "&& python3 $(location net/tools/dafsa/make_dafsa.py) " +
-         "--reverse " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest1.gperf) " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest1-reversed-inc.cc) " +
-         "&& python3 $(location net/tools/dafsa/make_dafsa.py) " +
-         "--reverse " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest2.gperf) " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest2-reversed-inc.cc) " +
-         "&& python3 $(location net/tools/dafsa/make_dafsa.py) " +
-         "--reverse " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest3.gperf) " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest3-reversed-inc.cc) " +
-         "&& python3 $(location net/tools/dafsa/make_dafsa.py) " +
-         "--reverse " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest4.gperf) " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest4-reversed-inc.cc) " +
-         "&& python3 $(location net/tools/dafsa/make_dafsa.py) " +
-         "--reverse " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest5.gperf) " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest5-reversed-inc.cc) " +
-         "&& python3 $(location net/tools/dafsa/make_dafsa.py) " +
-         "--reverse " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest6.gperf) " +
-         "$(location net/base/registry_controlled_domains/effective_tld_names_unittest6-reversed-inc.cc)",
-    out: [
-        "net/base/registry_controlled_domains/effective_tld_names-reversed-inc.cc",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest1-reversed-inc.cc",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest2-reversed-inc.cc",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest3-reversed-inc.cc",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest4-reversed-inc.cc",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest5-reversed-inc.cc",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest6-reversed-inc.cc",
-    ],
-    tool_files: [
-        "net/base/registry_controlled_domains/effective_tld_names.gperf",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest1.gperf",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest2.gperf",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest3.gperf",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest4.gperf",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest5.gperf",
-        "net/base/registry_controlled_domains/effective_tld_names_unittest6.gperf",
-        "net/tools/dafsa/make_dafsa.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //net:buildflags__android_arm
-cc_genrule {
-    name: "cronet_aml_net_buildflags__android_arm",
-    cmd: "echo '--flags POSIX_BYPASS_MMAP=\"true\" DISABLE_FILE_SUPPORT=\"true\" ENABLE_MDNS=\"false\" ENABLE_REPORTING=\"true\" ENABLE_WEBSOCKETS=\"false\" INCLUDE_TRANSPORT_SECURITY_STATE_PRELOAD_LIST=\"false\" USE_KERBEROS=\"true\" USE_EXTERNAL_GSSAPI=\"false\" TRIAL_COMPARISON_CERT_VERIFIER_SUPPORTED=\"false\" CHROME_ROOT_STORE_SUPPORTED=\"false\"' | " +
+    name: "cronet_aml_net_buildflags",
+    cmd: "if [[ ( $$CC_ARCH == 'x86_64' && $$CC_OS == 'android' ) ]]; " +
+         "then " +
+         "echo '--flags POSIX_BYPASS_MMAP=\"true\" DISABLE_FILE_SUPPORT=\"true\" ENABLE_MDNS=\"false\" ENABLE_REPORTING=\"true\" ENABLE_WEBSOCKETS=\"false\" INCLUDE_TRANSPORT_SECURITY_STATE_PRELOAD_LIST=\"false\" USE_KERBEROS=\"true\" USE_EXTERNAL_GSSAPI=\"false\" TRIAL_COMPARISON_CERT_VERIFIER_SUPPORTED=\"false\" CHROME_ROOT_STORE_SUPPORTED=\"false\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
          "--rulename " +
@@ -11148,22 +4981,11 @@
          "--gen-dir " +
          ". " +
          "--definitions " +
-         "/dev/stdin",
-    out: [
-        "net/net_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //net:buildflags__android_arm64
-cc_genrule {
-    name: "cronet_aml_net_buildflags__android_arm64",
-    cmd: "echo '--flags POSIX_BYPASS_MMAP=\"true\" DISABLE_FILE_SUPPORT=\"true\" ENABLE_MDNS=\"false\" ENABLE_REPORTING=\"true\" ENABLE_WEBSOCKETS=\"false\" INCLUDE_TRANSPORT_SECURITY_STATE_PRELOAD_LIST=\"false\" USE_KERBEROS=\"true\" USE_EXTERNAL_GSSAPI=\"false\" TRIAL_COMPARISON_CERT_VERIFIER_SUPPORTED=\"false\" CHROME_ROOT_STORE_SUPPORTED=\"false\"' | " +
+         "/dev/stdin; " +
+         "fi; " +
+         "if [[ ( $$CC_ARCH == 'x86' && $$CC_OS == 'android' ) ]]; " +
+         "then " +
+         "echo '--flags POSIX_BYPASS_MMAP=\"false\" DISABLE_FILE_SUPPORT=\"true\" ENABLE_MDNS=\"false\" ENABLE_REPORTING=\"true\" ENABLE_WEBSOCKETS=\"false\" INCLUDE_TRANSPORT_SECURITY_STATE_PRELOAD_LIST=\"false\" USE_KERBEROS=\"true\" USE_EXTERNAL_GSSAPI=\"false\" TRIAL_COMPARISON_CERT_VERIFIER_SUPPORTED=\"false\" CHROME_ROOT_STORE_SUPPORTED=\"false\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
          "--rulename " +
@@ -11171,22 +4993,11 @@
          "--gen-dir " +
          ". " +
          "--definitions " +
-         "/dev/stdin",
-    out: [
-        "net/net_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //net:buildflags__android_x86
-cc_genrule {
-    name: "cronet_aml_net_buildflags__android_x86",
-    cmd: "echo '--flags POSIX_BYPASS_MMAP=\"false\" DISABLE_FILE_SUPPORT=\"true\" ENABLE_MDNS=\"false\" ENABLE_REPORTING=\"true\" ENABLE_WEBSOCKETS=\"false\" INCLUDE_TRANSPORT_SECURITY_STATE_PRELOAD_LIST=\"false\" USE_KERBEROS=\"true\" USE_EXTERNAL_GSSAPI=\"false\" TRIAL_COMPARISON_CERT_VERIFIER_SUPPORTED=\"false\" CHROME_ROOT_STORE_SUPPORTED=\"false\"' | " +
+         "/dev/stdin; " +
+         "fi; " +
+         "if [[ ( $$CC_ARCH == 'arm' && $$CC_OS == 'android' ) ]]; " +
+         "then " +
+         "echo '--flags POSIX_BYPASS_MMAP=\"true\" DISABLE_FILE_SUPPORT=\"true\" ENABLE_MDNS=\"false\" ENABLE_REPORTING=\"true\" ENABLE_WEBSOCKETS=\"false\" INCLUDE_TRANSPORT_SECURITY_STATE_PRELOAD_LIST=\"false\" USE_KERBEROS=\"true\" USE_EXTERNAL_GSSAPI=\"false\" TRIAL_COMPARISON_CERT_VERIFIER_SUPPORTED=\"false\" CHROME_ROOT_STORE_SUPPORTED=\"false\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
          "--rulename " +
@@ -11194,22 +5005,11 @@
          "--gen-dir " +
          ". " +
          "--definitions " +
-         "/dev/stdin",
-    out: [
-        "net/net_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //net:buildflags__android_x86_64
-cc_genrule {
-    name: "cronet_aml_net_buildflags__android_x86_64",
-    cmd: "echo '--flags POSIX_BYPASS_MMAP=\"true\" DISABLE_FILE_SUPPORT=\"true\" ENABLE_MDNS=\"false\" ENABLE_REPORTING=\"true\" ENABLE_WEBSOCKETS=\"false\" INCLUDE_TRANSPORT_SECURITY_STATE_PRELOAD_LIST=\"false\" USE_KERBEROS=\"true\" USE_EXTERNAL_GSSAPI=\"false\" TRIAL_COMPARISON_CERT_VERIFIER_SUPPORTED=\"false\" CHROME_ROOT_STORE_SUPPORTED=\"false\"' | " +
+         "/dev/stdin; " +
+         "fi; " +
+         "if [[ ( $$CC_ARCH == 'arm64' && $$CC_OS == 'android' ) ]]; " +
+         "then " +
+         "echo '--flags POSIX_BYPASS_MMAP=\"true\" DISABLE_FILE_SUPPORT=\"true\" ENABLE_MDNS=\"false\" ENABLE_REPORTING=\"true\" ENABLE_WEBSOCKETS=\"false\" INCLUDE_TRANSPORT_SECURITY_STATE_PRELOAD_LIST=\"false\" USE_KERBEROS=\"true\" USE_EXTERNAL_GSSAPI=\"false\" TRIAL_COMPARISON_CERT_VERIFIER_SUPPORTED=\"false\" CHROME_ROOT_STORE_SUPPORTED=\"false\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
          "--rulename " +
@@ -11217,7 +5017,8 @@
          "--gen-dir " +
          ". " +
          "--definitions " +
-         "/dev/stdin",
+         "/dev/stdin; " +
+         "fi;",
     out: [
         "net/net_buildflags.h",
     ],
@@ -11291,87 +5092,9 @@
     },
 }
 
-// GN: //net/data/ssl/chrome_root_store:gen_root_store_inc__android_arm
+// GN: //net/data/ssl/chrome_root_store:gen_root_store_inc
 cc_genrule {
-    name: "cronet_aml_net_data_ssl_chrome_root_store_gen_root_store_inc__android_arm",
-    cmd: "$(location build/gn_run_binary.py) clang_x64/root_store_tool " +
-         "--root-store " +
-         "../../net/data/ssl/chrome_root_store/root_store.textproto " +
-         "--certs " +
-         "../../net/data/ssl/chrome_root_store/root_store.certs " +
-         "--write-cpp-root-store " +
-         "gen/net/data/ssl/chrome_root_store/chrome-root-store-inc.cc " +
-         "--write-cpp-ev-roots " +
-         "gen/net/data/ssl/chrome_root_store/chrome-ev-roots-inc.cc",
-    out: [
-        "net/data/ssl/chrome_root_store/chrome-ev-roots-inc.cc",
-        "net/data/ssl/chrome_root_store/chrome-root-store-inc.cc",
-    ],
-    tool_files: [
-        "build/gn_run_binary.py",
-        "net/data/ssl/chrome_root_store/root_store.certs",
-        "net/data/ssl/chrome_root_store/root_store.textproto",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //net/data/ssl/chrome_root_store:gen_root_store_inc__android_arm64
-cc_genrule {
-    name: "cronet_aml_net_data_ssl_chrome_root_store_gen_root_store_inc__android_arm64",
-    cmd: "$(location build/gn_run_binary.py) clang_x64/root_store_tool " +
-         "--root-store " +
-         "../../net/data/ssl/chrome_root_store/root_store.textproto " +
-         "--certs " +
-         "../../net/data/ssl/chrome_root_store/root_store.certs " +
-         "--write-cpp-root-store " +
-         "gen/net/data/ssl/chrome_root_store/chrome-root-store-inc.cc " +
-         "--write-cpp-ev-roots " +
-         "gen/net/data/ssl/chrome_root_store/chrome-ev-roots-inc.cc",
-    out: [
-        "net/data/ssl/chrome_root_store/chrome-ev-roots-inc.cc",
-        "net/data/ssl/chrome_root_store/chrome-root-store-inc.cc",
-    ],
-    tool_files: [
-        "build/gn_run_binary.py",
-        "net/data/ssl/chrome_root_store/root_store.certs",
-        "net/data/ssl/chrome_root_store/root_store.textproto",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //net/data/ssl/chrome_root_store:gen_root_store_inc__android_x86
-cc_genrule {
-    name: "cronet_aml_net_data_ssl_chrome_root_store_gen_root_store_inc__android_x86",
-    cmd: "$(location build/gn_run_binary.py) clang_x64/root_store_tool " +
-         "--root-store " +
-         "../../net/data/ssl/chrome_root_store/root_store.textproto " +
-         "--certs " +
-         "../../net/data/ssl/chrome_root_store/root_store.certs " +
-         "--write-cpp-root-store " +
-         "gen/net/data/ssl/chrome_root_store/chrome-root-store-inc.cc " +
-         "--write-cpp-ev-roots " +
-         "gen/net/data/ssl/chrome_root_store/chrome-ev-roots-inc.cc",
-    out: [
-        "net/data/ssl/chrome_root_store/chrome-ev-roots-inc.cc",
-        "net/data/ssl/chrome_root_store/chrome-root-store-inc.cc",
-    ],
-    tool_files: [
-        "build/gn_run_binary.py",
-        "net/data/ssl/chrome_root_store/root_store.certs",
-        "net/data/ssl/chrome_root_store/root_store.textproto",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //net/data/ssl/chrome_root_store:gen_root_store_inc__android_x86_64
-cc_genrule {
-    name: "cronet_aml_net_data_ssl_chrome_root_store_gen_root_store_inc__android_x86_64",
+    name: "cronet_aml_net_data_ssl_chrome_root_store_gen_root_store_inc",
     cmd: "$(location build/gn_run_binary.py) clang_x64/root_store_tool " +
          "--root-store " +
          "../../net/data/ssl/chrome_root_store/root_store.textproto " +
@@ -11463,9 +5186,16 @@
         "cronet_aml_url_url",
     ],
     generated_headers: [
+        "cronet_aml_base_debugging_buildflags",
+        "cronet_aml_base_logging_buildflags",
+        "cronet_aml_build_chromeos_buildflags",
+        "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains",
+        "cronet_aml_net_buildflags",
         "cronet_aml_net_isolation_info_proto_gen_headers",
+        "cronet_aml_net_net_jni_headers",
         "cronet_aml_net_net_nqe_proto_gen_headers",
         "cronet_aml_net_third_party_quiche_net_quic_test_tools_proto_gen_headers",
+        "cronet_aml_url_buildflags",
     ],
     defaults: [
         "cronet_aml_defaults",
@@ -11509,55 +5239,15 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm",
-                "cronet_aml_base_logging_buildflags__android_arm",
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_arm",
-                "cronet_aml_net_buildflags__android_arm",
-                "cronet_aml_net_net_jni_headers__android_arm",
-                "cronet_aml_url_buildflags__android_arm",
-            ],
-        },
-        android_arm64: {
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm64",
-                "cronet_aml_base_logging_buildflags__android_arm64",
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_arm64",
-                "cronet_aml_net_buildflags__android_arm64",
-                "cronet_aml_net_net_jni_headers__android_arm64",
-                "cronet_aml_url_buildflags__android_arm64",
-            ],
-        },
         android_x86: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86",
-                "cronet_aml_base_logging_buildflags__android_x86",
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_x86",
-                "cronet_aml_net_buildflags__android_x86",
-                "cronet_aml_net_net_jni_headers__android_x86",
-                "cronet_aml_url_buildflags__android_x86",
-            ],
         },
         android_x86_64: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86_64",
-                "cronet_aml_base_logging_buildflags__android_x86_64",
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_x86_64",
-                "cronet_aml_net_buildflags__android_x86_64",
-                "cronet_aml_net_net_jni_headers__android_x86_64",
-                "cronet_aml_url_buildflags__android_x86_64",
-            ],
         },
     },
 }
@@ -11591,9 +5281,16 @@
         "cronet_aml_url_url",
     ],
     generated_headers: [
+        "cronet_aml_base_debugging_buildflags",
+        "cronet_aml_base_logging_buildflags",
+        "cronet_aml_build_chromeos_buildflags",
+        "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains",
+        "cronet_aml_net_buildflags",
         "cronet_aml_net_isolation_info_proto_gen_headers",
+        "cronet_aml_net_net_jni_headers",
         "cronet_aml_net_net_nqe_proto_gen_headers",
         "cronet_aml_net_third_party_quiche_net_quic_test_tools_proto_gen_headers",
+        "cronet_aml_url_buildflags",
     ],
     defaults: [
         "cronet_aml_defaults",
@@ -11637,55 +5334,15 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm",
-                "cronet_aml_base_logging_buildflags__android_arm",
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_arm",
-                "cronet_aml_net_buildflags__android_arm",
-                "cronet_aml_net_net_jni_headers__android_arm",
-                "cronet_aml_url_buildflags__android_arm",
-            ],
-        },
-        android_arm64: {
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm64",
-                "cronet_aml_base_logging_buildflags__android_arm64",
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_arm64",
-                "cronet_aml_net_buildflags__android_arm64",
-                "cronet_aml_net_net_jni_headers__android_arm64",
-                "cronet_aml_url_buildflags__android_arm64",
-            ],
-        },
         android_x86: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86",
-                "cronet_aml_base_logging_buildflags__android_x86",
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_x86",
-                "cronet_aml_net_buildflags__android_x86",
-                "cronet_aml_net_net_jni_headers__android_x86",
-                "cronet_aml_url_buildflags__android_x86",
-            ],
         },
         android_x86_64: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86_64",
-                "cronet_aml_base_logging_buildflags__android_x86_64",
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_x86_64",
-                "cronet_aml_net_buildflags__android_x86_64",
-                "cronet_aml_net_net_jni_headers__android_x86_64",
-                "cronet_aml_url_buildflags__android_x86_64",
-            ],
         },
     },
 }
@@ -11719,9 +5376,16 @@
         "cronet_aml_url_url",
     ],
     generated_headers: [
+        "cronet_aml_base_debugging_buildflags",
+        "cronet_aml_base_logging_buildflags",
+        "cronet_aml_build_chromeos_buildflags",
+        "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains",
+        "cronet_aml_net_buildflags",
         "cronet_aml_net_isolation_info_proto_gen_headers",
+        "cronet_aml_net_net_jni_headers",
         "cronet_aml_net_net_nqe_proto_gen_headers",
         "cronet_aml_net_third_party_quiche_net_quic_test_tools_proto_gen_headers",
+        "cronet_aml_url_buildflags",
     ],
     defaults: [
         "cronet_aml_defaults",
@@ -11765,55 +5429,15 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm",
-                "cronet_aml_base_logging_buildflags__android_arm",
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_arm",
-                "cronet_aml_net_buildflags__android_arm",
-                "cronet_aml_net_net_jni_headers__android_arm",
-                "cronet_aml_url_buildflags__android_arm",
-            ],
-        },
-        android_arm64: {
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm64",
-                "cronet_aml_base_logging_buildflags__android_arm64",
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_arm64",
-                "cronet_aml_net_buildflags__android_arm64",
-                "cronet_aml_net_net_jni_headers__android_arm64",
-                "cronet_aml_url_buildflags__android_arm64",
-            ],
-        },
         android_x86: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86",
-                "cronet_aml_base_logging_buildflags__android_x86",
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_x86",
-                "cronet_aml_net_buildflags__android_x86",
-                "cronet_aml_net_net_jni_headers__android_x86",
-                "cronet_aml_url_buildflags__android_x86",
-            ],
         },
         android_x86_64: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86_64",
-                "cronet_aml_base_logging_buildflags__android_x86_64",
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_x86_64",
-                "cronet_aml_net_buildflags__android_x86_64",
-                "cronet_aml_net_net_jni_headers__android_x86_64",
-                "cronet_aml_url_buildflags__android_x86_64",
-            ],
         },
     },
 }
@@ -11847,9 +5471,16 @@
         "cronet_aml_url_url",
     ],
     generated_headers: [
+        "cronet_aml_base_debugging_buildflags",
+        "cronet_aml_base_logging_buildflags",
+        "cronet_aml_build_chromeos_buildflags",
+        "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains",
+        "cronet_aml_net_buildflags",
         "cronet_aml_net_isolation_info_proto_gen_headers",
+        "cronet_aml_net_net_jni_headers",
         "cronet_aml_net_net_nqe_proto_gen_headers",
         "cronet_aml_net_third_party_quiche_net_quic_test_tools_proto_gen_headers",
+        "cronet_aml_url_buildflags",
     ],
     defaults: [
         "cronet_aml_defaults",
@@ -11893,55 +5524,15 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm",
-                "cronet_aml_base_logging_buildflags__android_arm",
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_arm",
-                "cronet_aml_net_buildflags__android_arm",
-                "cronet_aml_net_net_jni_headers__android_arm",
-                "cronet_aml_url_buildflags__android_arm",
-            ],
-        },
-        android_arm64: {
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm64",
-                "cronet_aml_base_logging_buildflags__android_arm64",
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_arm64",
-                "cronet_aml_net_buildflags__android_arm64",
-                "cronet_aml_net_net_jni_headers__android_arm64",
-                "cronet_aml_url_buildflags__android_arm64",
-            ],
-        },
         android_x86: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86",
-                "cronet_aml_base_logging_buildflags__android_x86",
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_x86",
-                "cronet_aml_net_buildflags__android_x86",
-                "cronet_aml_net_net_jni_headers__android_x86",
-                "cronet_aml_url_buildflags__android_x86",
-            ],
         },
         android_x86_64: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86_64",
-                "cronet_aml_base_logging_buildflags__android_x86_64",
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_x86_64",
-                "cronet_aml_net_buildflags__android_x86_64",
-                "cronet_aml_net_net_jni_headers__android_x86_64",
-                "cronet_aml_url_buildflags__android_x86_64",
-            ],
         },
     },
 }
@@ -11975,9 +5566,16 @@
         "cronet_aml_url_url",
     ],
     generated_headers: [
+        "cronet_aml_base_debugging_buildflags",
+        "cronet_aml_base_logging_buildflags",
+        "cronet_aml_build_chromeos_buildflags",
+        "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains",
+        "cronet_aml_net_buildflags",
         "cronet_aml_net_isolation_info_proto_gen_headers",
+        "cronet_aml_net_net_jni_headers",
         "cronet_aml_net_net_nqe_proto_gen_headers",
         "cronet_aml_net_third_party_quiche_net_quic_test_tools_proto_gen_headers",
+        "cronet_aml_url_buildflags",
     ],
     defaults: [
         "cronet_aml_defaults",
@@ -12021,55 +5619,15 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm",
-                "cronet_aml_base_logging_buildflags__android_arm",
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_arm",
-                "cronet_aml_net_buildflags__android_arm",
-                "cronet_aml_net_net_jni_headers__android_arm",
-                "cronet_aml_url_buildflags__android_arm",
-            ],
-        },
-        android_arm64: {
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm64",
-                "cronet_aml_base_logging_buildflags__android_arm64",
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_arm64",
-                "cronet_aml_net_buildflags__android_arm64",
-                "cronet_aml_net_net_jni_headers__android_arm64",
-                "cronet_aml_url_buildflags__android_arm64",
-            ],
-        },
         android_x86: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86",
-                "cronet_aml_base_logging_buildflags__android_x86",
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_x86",
-                "cronet_aml_net_buildflags__android_x86",
-                "cronet_aml_net_net_jni_headers__android_x86",
-                "cronet_aml_url_buildflags__android_x86",
-            ],
         },
         android_x86_64: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86_64",
-                "cronet_aml_base_logging_buildflags__android_x86_64",
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_x86_64",
-                "cronet_aml_net_buildflags__android_x86_64",
-                "cronet_aml_net_net_jni_headers__android_x86_64",
-                "cronet_aml_url_buildflags__android_x86_64",
-            ],
         },
     },
 }
@@ -12113,9 +5671,16 @@
         "cronet_aml_url_url",
     ],
     generated_headers: [
+        "cronet_aml_base_debugging_buildflags",
+        "cronet_aml_base_logging_buildflags",
+        "cronet_aml_build_chromeos_buildflags",
+        "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains",
+        "cronet_aml_net_buildflags",
         "cronet_aml_net_isolation_info_proto_gen_headers",
+        "cronet_aml_net_net_jni_headers",
         "cronet_aml_net_net_nqe_proto_gen_headers",
         "cronet_aml_net_third_party_quiche_net_quic_test_tools_proto_gen_headers",
+        "cronet_aml_url_buildflags",
     ],
     defaults: [
         "cronet_aml_defaults",
@@ -12159,55 +5724,15 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm",
-                "cronet_aml_base_logging_buildflags__android_arm",
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_arm",
-                "cronet_aml_net_buildflags__android_arm",
-                "cronet_aml_net_net_jni_headers__android_arm",
-                "cronet_aml_url_buildflags__android_arm",
-            ],
-        },
-        android_arm64: {
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm64",
-                "cronet_aml_base_logging_buildflags__android_arm64",
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_arm64",
-                "cronet_aml_net_buildflags__android_arm64",
-                "cronet_aml_net_net_jni_headers__android_arm64",
-                "cronet_aml_url_buildflags__android_arm64",
-            ],
-        },
         android_x86: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86",
-                "cronet_aml_base_logging_buildflags__android_x86",
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_x86",
-                "cronet_aml_net_buildflags__android_x86",
-                "cronet_aml_net_net_jni_headers__android_x86",
-                "cronet_aml_url_buildflags__android_x86",
-            ],
         },
         android_x86_64: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86_64",
-                "cronet_aml_base_logging_buildflags__android_x86_64",
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_x86_64",
-                "cronet_aml_net_buildflags__android_x86_64",
-                "cronet_aml_net_net_jni_headers__android_x86_64",
-                "cronet_aml_url_buildflags__android_x86_64",
-            ],
         },
     },
 }
@@ -12263,9 +5788,17 @@
         "cronet_aml_url_url",
     ],
     generated_headers: [
+        "cronet_aml_base_debugging_buildflags",
+        "cronet_aml_base_logging_buildflags",
+        "cronet_aml_build_branding_buildflags",
+        "cronet_aml_build_chromeos_buildflags",
+        "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains",
+        "cronet_aml_net_buildflags",
         "cronet_aml_net_isolation_info_proto_gen_headers",
+        "cronet_aml_net_net_jni_headers",
         "cronet_aml_net_net_nqe_proto_gen_headers",
         "cronet_aml_net_third_party_quiche_net_quic_test_tools_proto_gen_headers",
+        "cronet_aml_url_buildflags",
     ],
     defaults: [
         "cronet_aml_defaults",
@@ -12309,135 +5842,22 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm",
-                "cronet_aml_base_logging_buildflags__android_arm",
-                "cronet_aml_build_branding_buildflags__android_arm",
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_arm",
-                "cronet_aml_net_buildflags__android_arm",
-                "cronet_aml_net_net_jni_headers__android_arm",
-                "cronet_aml_url_buildflags__android_arm",
-            ],
-        },
-        android_arm64: {
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm64",
-                "cronet_aml_base_logging_buildflags__android_arm64",
-                "cronet_aml_build_branding_buildflags__android_arm64",
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_arm64",
-                "cronet_aml_net_buildflags__android_arm64",
-                "cronet_aml_net_net_jni_headers__android_arm64",
-                "cronet_aml_url_buildflags__android_arm64",
-            ],
-        },
         android_x86: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86",
-                "cronet_aml_base_logging_buildflags__android_x86",
-                "cronet_aml_build_branding_buildflags__android_x86",
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_x86",
-                "cronet_aml_net_buildflags__android_x86",
-                "cronet_aml_net_net_jni_headers__android_x86",
-                "cronet_aml_url_buildflags__android_x86",
-            ],
         },
         android_x86_64: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86_64",
-                "cronet_aml_base_logging_buildflags__android_x86_64",
-                "cronet_aml_build_branding_buildflags__android_x86_64",
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_x86_64",
-                "cronet_aml_net_buildflags__android_x86_64",
-                "cronet_aml_net_net_jni_headers__android_x86_64",
-                "cronet_aml_url_buildflags__android_x86_64",
-            ],
         },
     },
 }
 
-// GN: //net:ios_cronet_buildflags__android_arm
+// GN: //net:ios_cronet_buildflags
 cc_genrule {
-    name: "cronet_aml_net_ios_cronet_buildflags__android_arm",
-    cmd: "echo '--flags CRONET_BUILD=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//net:ios_cronet_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "net/socket/ios_cronet_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //net:ios_cronet_buildflags__android_arm64
-cc_genrule {
-    name: "cronet_aml_net_ios_cronet_buildflags__android_arm64",
-    cmd: "echo '--flags CRONET_BUILD=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//net:ios_cronet_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "net/socket/ios_cronet_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //net:ios_cronet_buildflags__android_x86
-cc_genrule {
-    name: "cronet_aml_net_ios_cronet_buildflags__android_x86",
-    cmd: "echo '--flags CRONET_BUILD=\"false\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//net:ios_cronet_buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "net/socket/ios_cronet_buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //net:ios_cronet_buildflags__android_x86_64
-cc_genrule {
-    name: "cronet_aml_net_ios_cronet_buildflags__android_x86_64",
+    name: "cronet_aml_net_ios_cronet_buildflags",
     cmd: "echo '--flags CRONET_BUILD=\"false\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
@@ -13018,14 +6438,32 @@
         "cronet_aml_url_url",
     ],
     generated_headers: [
+        "cronet_aml_base_debugging_buildflags",
+        "cronet_aml_base_logging_buildflags",
+        "cronet_aml_build_branding_buildflags",
+        "cronet_aml_build_chromeos_buildflags",
+        "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains",
+        "cronet_aml_net_buildflags",
+        "cronet_aml_net_ios_cronet_buildflags",
         "cronet_aml_net_isolation_info_proto_gen_headers",
+        "cronet_aml_net_net_jni_headers",
         "cronet_aml_net_net_nqe_proto_gen_headers",
         "cronet_aml_net_third_party_quiche_net_quic_test_tools_proto_gen_headers",
+        "cronet_aml_url_buildflags",
     ],
     export_generated_headers: [
+        "cronet_aml_base_debugging_buildflags",
+        "cronet_aml_base_logging_buildflags",
+        "cronet_aml_build_branding_buildflags",
+        "cronet_aml_build_chromeos_buildflags",
+        "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains",
+        "cronet_aml_net_buildflags",
+        "cronet_aml_net_ios_cronet_buildflags",
         "cronet_aml_net_isolation_info_proto_gen_headers",
+        "cronet_aml_net_net_jni_headers",
         "cronet_aml_net_net_nqe_proto_gen_headers",
         "cronet_aml_net_third_party_quiche_net_quic_test_tools_proto_gen_headers",
+        "cronet_aml_url_buildflags",
     ],
     export_static_lib_headers: [
         "cronet_aml_crypto_crypto",
@@ -13077,55 +6515,11 @@
             srcs: [
                 "net/disk_cache/blockfile/mapped_file_bypass_mmap_posix.cc",
             ],
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm",
-                "cronet_aml_base_logging_buildflags__android_arm",
-                "cronet_aml_build_branding_buildflags__android_arm",
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_arm",
-                "cronet_aml_net_buildflags__android_arm",
-                "cronet_aml_net_ios_cronet_buildflags__android_arm",
-                "cronet_aml_net_net_jni_headers__android_arm",
-                "cronet_aml_url_buildflags__android_arm",
-            ],
-            export_generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm",
-                "cronet_aml_base_logging_buildflags__android_arm",
-                "cronet_aml_build_branding_buildflags__android_arm",
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_arm",
-                "cronet_aml_net_buildflags__android_arm",
-                "cronet_aml_net_ios_cronet_buildflags__android_arm",
-                "cronet_aml_net_net_jni_headers__android_arm",
-                "cronet_aml_url_buildflags__android_arm",
-            ],
         },
         android_arm64: {
             srcs: [
                 "net/disk_cache/blockfile/mapped_file_bypass_mmap_posix.cc",
             ],
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm64",
-                "cronet_aml_base_logging_buildflags__android_arm64",
-                "cronet_aml_build_branding_buildflags__android_arm64",
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_arm64",
-                "cronet_aml_net_buildflags__android_arm64",
-                "cronet_aml_net_ios_cronet_buildflags__android_arm64",
-                "cronet_aml_net_net_jni_headers__android_arm64",
-                "cronet_aml_url_buildflags__android_arm64",
-            ],
-            export_generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm64",
-                "cronet_aml_base_logging_buildflags__android_arm64",
-                "cronet_aml_build_branding_buildflags__android_arm64",
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_arm64",
-                "cronet_aml_net_buildflags__android_arm64",
-                "cronet_aml_net_ios_cronet_buildflags__android_arm64",
-                "cronet_aml_net_net_jni_headers__android_arm64",
-                "cronet_aml_url_buildflags__android_arm64",
-            ],
         },
         android_x86: {
             srcs: [
@@ -13134,28 +6528,6 @@
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86",
-                "cronet_aml_base_logging_buildflags__android_x86",
-                "cronet_aml_build_branding_buildflags__android_x86",
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_x86",
-                "cronet_aml_net_buildflags__android_x86",
-                "cronet_aml_net_ios_cronet_buildflags__android_x86",
-                "cronet_aml_net_net_jni_headers__android_x86",
-                "cronet_aml_url_buildflags__android_x86",
-            ],
-            export_generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86",
-                "cronet_aml_base_logging_buildflags__android_x86",
-                "cronet_aml_build_branding_buildflags__android_x86",
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_x86",
-                "cronet_aml_net_buildflags__android_x86",
-                "cronet_aml_net_ios_cronet_buildflags__android_x86",
-                "cronet_aml_net_net_jni_headers__android_x86",
-                "cronet_aml_url_buildflags__android_x86",
-            ],
         },
         android_x86_64: {
             srcs: [
@@ -13164,28 +6536,6 @@
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86_64",
-                "cronet_aml_base_logging_buildflags__android_x86_64",
-                "cronet_aml_build_branding_buildflags__android_x86_64",
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_x86_64",
-                "cronet_aml_net_buildflags__android_x86_64",
-                "cronet_aml_net_ios_cronet_buildflags__android_x86_64",
-                "cronet_aml_net_net_jni_headers__android_x86_64",
-                "cronet_aml_url_buildflags__android_x86_64",
-            ],
-            export_generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86_64",
-                "cronet_aml_base_logging_buildflags__android_x86_64",
-                "cronet_aml_build_branding_buildflags__android_x86_64",
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_x86_64",
-                "cronet_aml_net_buildflags__android_x86_64",
-                "cronet_aml_net_ios_cronet_buildflags__android_x86_64",
-                "cronet_aml_net_net_jni_headers__android_x86_64",
-                "cronet_aml_url_buildflags__android_x86_64",
-            ],
         },
     },
 }
@@ -13219,7 +6569,13 @@
         "cronet_aml_third_party_zlib_zlib",
     ],
     generated_headers: [
+        "cronet_aml_base_debugging_buildflags",
+        "cronet_aml_base_logging_buildflags",
+        "cronet_aml_build_chromeos_buildflags",
+        "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains",
         "cronet_aml_net_isolation_info_proto_gen_headers",
+        "cronet_aml_net_net_jni_headers",
+        "cronet_aml_url_buildflags",
     ],
     defaults: [
         "cronet_aml_defaults",
@@ -13260,51 +6616,15 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm",
-                "cronet_aml_base_logging_buildflags__android_arm",
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_arm",
-                "cronet_aml_net_net_jni_headers__android_arm",
-                "cronet_aml_url_buildflags__android_arm",
-            ],
-        },
-        android_arm64: {
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm64",
-                "cronet_aml_base_logging_buildflags__android_arm64",
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_arm64",
-                "cronet_aml_net_net_jni_headers__android_arm64",
-                "cronet_aml_url_buildflags__android_arm64",
-            ],
-        },
         android_x86: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86",
-                "cronet_aml_base_logging_buildflags__android_x86",
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_x86",
-                "cronet_aml_net_net_jni_headers__android_x86",
-                "cronet_aml_url_buildflags__android_x86",
-            ],
         },
         android_x86_64: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86_64",
-                "cronet_aml_base_logging_buildflags__android_x86_64",
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-                "cronet_aml_net_base_registry_controlled_domains_registry_controlled_domains__android_x86_64",
-                "cronet_aml_net_net_jni_headers__android_x86_64",
-                "cronet_aml_url_buildflags__android_x86_64",
-            ],
         },
     },
 }
@@ -13353,321 +6673,9 @@
     },
 }
 
-// GN: //net:net_jni_headers__android_arm
+// GN: //net:net_jni_headers
 cc_genrule {
-    name: "cronet_aml_net_net_jni_headers__android_arm",
-    srcs: [
-        "net/android/java/src/org/chromium/net/AndroidCertVerifyResult.java",
-        "net/android/java/src/org/chromium/net/AndroidKeyStore.java",
-        "net/android/java/src/org/chromium/net/AndroidNetworkLibrary.java",
-        "net/android/java/src/org/chromium/net/AndroidTrafficStats.java",
-        "net/android/java/src/org/chromium/net/DnsStatus.java",
-        "net/android/java/src/org/chromium/net/GURLUtils.java",
-        "net/android/java/src/org/chromium/net/HttpNegotiateAuthenticator.java",
-        "net/android/java/src/org/chromium/net/HttpUtil.java",
-        "net/android/java/src/org/chromium/net/NetStringUtil.java",
-        "net/android/java/src/org/chromium/net/NetworkActiveNotifier.java",
-        "net/android/java/src/org/chromium/net/NetworkChangeNotifier.java",
-        "net/android/java/src/org/chromium/net/ProxyChangeListener.java",
-        "net/android/java/src/org/chromium/net/X509Util.java",
-    ],
-    cmd: "$(location base/android/jni_generator/jni_generator.py) --ptr_type " +
-         "long " +
-         "--output_dir " +
-         "$(genDir)/net/net_jni_headers " +
-         "--includes " +
-         "base/android/jni_generator/jni_generator_helper.h " +
-         "--use_proxy_hash " +
-         "--output_name " +
-         "AndroidCertVerifyResult_jni.h " +
-         "--output_name " +
-         "AndroidKeyStore_jni.h " +
-         "--output_name " +
-         "AndroidNetworkLibrary_jni.h " +
-         "--output_name " +
-         "AndroidTrafficStats_jni.h " +
-         "--output_name " +
-         "DnsStatus_jni.h " +
-         "--output_name " +
-         "GURLUtils_jni.h " +
-         "--output_name " +
-         "HttpNegotiateAuthenticator_jni.h " +
-         "--output_name " +
-         "HttpUtil_jni.h " +
-         "--output_name " +
-         "NetStringUtil_jni.h " +
-         "--output_name " +
-         "NetworkActiveNotifier_jni.h " +
-         "--output_name " +
-         "NetworkChangeNotifier_jni.h " +
-         "--output_name " +
-         "ProxyChangeListener_jni.h " +
-         "--output_name " +
-         "X509Util_jni.h " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/AndroidCertVerifyResult.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/AndroidKeyStore.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/AndroidNetworkLibrary.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/AndroidTrafficStats.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/DnsStatus.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/GURLUtils.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/HttpNegotiateAuthenticator.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/HttpUtil.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/NetStringUtil.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/NetworkActiveNotifier.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/NetworkChangeNotifier.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/ProxyChangeListener.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/X509Util.java)",
-    out: [
-        "net/net_jni_headers/AndroidCertVerifyResult_jni.h",
-        "net/net_jni_headers/AndroidKeyStore_jni.h",
-        "net/net_jni_headers/AndroidNetworkLibrary_jni.h",
-        "net/net_jni_headers/AndroidTrafficStats_jni.h",
-        "net/net_jni_headers/DnsStatus_jni.h",
-        "net/net_jni_headers/GURLUtils_jni.h",
-        "net/net_jni_headers/HttpNegotiateAuthenticator_jni.h",
-        "net/net_jni_headers/HttpUtil_jni.h",
-        "net/net_jni_headers/NetStringUtil_jni.h",
-        "net/net_jni_headers/NetworkActiveNotifier_jni.h",
-        "net/net_jni_headers/NetworkChangeNotifier_jni.h",
-        "net/net_jni_headers/ProxyChangeListener_jni.h",
-        "net/net_jni_headers/X509Util_jni.h",
-    ],
-    tool_files: [
-        "base/android/jni_generator/android_jar.classes",
-        "base/android/jni_generator/jni_generator.py",
-        "build/android/gyp/util/__init__.py",
-        "build/android/gyp/util/build_utils.py",
-        "build/gn_helpers.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //net:net_jni_headers__android_arm64
-cc_genrule {
-    name: "cronet_aml_net_net_jni_headers__android_arm64",
-    srcs: [
-        "net/android/java/src/org/chromium/net/AndroidCertVerifyResult.java",
-        "net/android/java/src/org/chromium/net/AndroidKeyStore.java",
-        "net/android/java/src/org/chromium/net/AndroidNetworkLibrary.java",
-        "net/android/java/src/org/chromium/net/AndroidTrafficStats.java",
-        "net/android/java/src/org/chromium/net/DnsStatus.java",
-        "net/android/java/src/org/chromium/net/GURLUtils.java",
-        "net/android/java/src/org/chromium/net/HttpNegotiateAuthenticator.java",
-        "net/android/java/src/org/chromium/net/HttpUtil.java",
-        "net/android/java/src/org/chromium/net/NetStringUtil.java",
-        "net/android/java/src/org/chromium/net/NetworkActiveNotifier.java",
-        "net/android/java/src/org/chromium/net/NetworkChangeNotifier.java",
-        "net/android/java/src/org/chromium/net/ProxyChangeListener.java",
-        "net/android/java/src/org/chromium/net/X509Util.java",
-    ],
-    cmd: "$(location base/android/jni_generator/jni_generator.py) --ptr_type " +
-         "long " +
-         "--output_dir " +
-         "$(genDir)/net/net_jni_headers " +
-         "--includes " +
-         "base/android/jni_generator/jni_generator_helper.h " +
-         "--use_proxy_hash " +
-         "--output_name " +
-         "AndroidCertVerifyResult_jni.h " +
-         "--output_name " +
-         "AndroidKeyStore_jni.h " +
-         "--output_name " +
-         "AndroidNetworkLibrary_jni.h " +
-         "--output_name " +
-         "AndroidTrafficStats_jni.h " +
-         "--output_name " +
-         "DnsStatus_jni.h " +
-         "--output_name " +
-         "GURLUtils_jni.h " +
-         "--output_name " +
-         "HttpNegotiateAuthenticator_jni.h " +
-         "--output_name " +
-         "HttpUtil_jni.h " +
-         "--output_name " +
-         "NetStringUtil_jni.h " +
-         "--output_name " +
-         "NetworkActiveNotifier_jni.h " +
-         "--output_name " +
-         "NetworkChangeNotifier_jni.h " +
-         "--output_name " +
-         "ProxyChangeListener_jni.h " +
-         "--output_name " +
-         "X509Util_jni.h " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/AndroidCertVerifyResult.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/AndroidKeyStore.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/AndroidNetworkLibrary.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/AndroidTrafficStats.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/DnsStatus.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/GURLUtils.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/HttpNegotiateAuthenticator.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/HttpUtil.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/NetStringUtil.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/NetworkActiveNotifier.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/NetworkChangeNotifier.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/ProxyChangeListener.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/X509Util.java)",
-    out: [
-        "net/net_jni_headers/AndroidCertVerifyResult_jni.h",
-        "net/net_jni_headers/AndroidKeyStore_jni.h",
-        "net/net_jni_headers/AndroidNetworkLibrary_jni.h",
-        "net/net_jni_headers/AndroidTrafficStats_jni.h",
-        "net/net_jni_headers/DnsStatus_jni.h",
-        "net/net_jni_headers/GURLUtils_jni.h",
-        "net/net_jni_headers/HttpNegotiateAuthenticator_jni.h",
-        "net/net_jni_headers/HttpUtil_jni.h",
-        "net/net_jni_headers/NetStringUtil_jni.h",
-        "net/net_jni_headers/NetworkActiveNotifier_jni.h",
-        "net/net_jni_headers/NetworkChangeNotifier_jni.h",
-        "net/net_jni_headers/ProxyChangeListener_jni.h",
-        "net/net_jni_headers/X509Util_jni.h",
-    ],
-    tool_files: [
-        "base/android/jni_generator/android_jar.classes",
-        "base/android/jni_generator/jni_generator.py",
-        "build/android/gyp/util/__init__.py",
-        "build/android/gyp/util/build_utils.py",
-        "build/gn_helpers.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //net:net_jni_headers__android_x86
-cc_genrule {
-    name: "cronet_aml_net_net_jni_headers__android_x86",
-    srcs: [
-        "net/android/java/src/org/chromium/net/AndroidCertVerifyResult.java",
-        "net/android/java/src/org/chromium/net/AndroidKeyStore.java",
-        "net/android/java/src/org/chromium/net/AndroidNetworkLibrary.java",
-        "net/android/java/src/org/chromium/net/AndroidTrafficStats.java",
-        "net/android/java/src/org/chromium/net/DnsStatus.java",
-        "net/android/java/src/org/chromium/net/GURLUtils.java",
-        "net/android/java/src/org/chromium/net/HttpNegotiateAuthenticator.java",
-        "net/android/java/src/org/chromium/net/HttpUtil.java",
-        "net/android/java/src/org/chromium/net/NetStringUtil.java",
-        "net/android/java/src/org/chromium/net/NetworkActiveNotifier.java",
-        "net/android/java/src/org/chromium/net/NetworkChangeNotifier.java",
-        "net/android/java/src/org/chromium/net/ProxyChangeListener.java",
-        "net/android/java/src/org/chromium/net/X509Util.java",
-    ],
-    cmd: "$(location base/android/jni_generator/jni_generator.py) --ptr_type " +
-         "long " +
-         "--output_dir " +
-         "$(genDir)/net/net_jni_headers " +
-         "--includes " +
-         "base/android/jni_generator/jni_generator_helper.h " +
-         "--use_proxy_hash " +
-         "--output_name " +
-         "AndroidCertVerifyResult_jni.h " +
-         "--output_name " +
-         "AndroidKeyStore_jni.h " +
-         "--output_name " +
-         "AndroidNetworkLibrary_jni.h " +
-         "--output_name " +
-         "AndroidTrafficStats_jni.h " +
-         "--output_name " +
-         "DnsStatus_jni.h " +
-         "--output_name " +
-         "GURLUtils_jni.h " +
-         "--output_name " +
-         "HttpNegotiateAuthenticator_jni.h " +
-         "--output_name " +
-         "HttpUtil_jni.h " +
-         "--output_name " +
-         "NetStringUtil_jni.h " +
-         "--output_name " +
-         "NetworkActiveNotifier_jni.h " +
-         "--output_name " +
-         "NetworkChangeNotifier_jni.h " +
-         "--output_name " +
-         "ProxyChangeListener_jni.h " +
-         "--output_name " +
-         "X509Util_jni.h " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/AndroidCertVerifyResult.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/AndroidKeyStore.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/AndroidNetworkLibrary.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/AndroidTrafficStats.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/DnsStatus.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/GURLUtils.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/HttpNegotiateAuthenticator.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/HttpUtil.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/NetStringUtil.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/NetworkActiveNotifier.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/NetworkChangeNotifier.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/ProxyChangeListener.java) " +
-         "--input_file " +
-         "$(location net/android/java/src/org/chromium/net/X509Util.java)",
-    out: [
-        "net/net_jni_headers/AndroidCertVerifyResult_jni.h",
-        "net/net_jni_headers/AndroidKeyStore_jni.h",
-        "net/net_jni_headers/AndroidNetworkLibrary_jni.h",
-        "net/net_jni_headers/AndroidTrafficStats_jni.h",
-        "net/net_jni_headers/DnsStatus_jni.h",
-        "net/net_jni_headers/GURLUtils_jni.h",
-        "net/net_jni_headers/HttpNegotiateAuthenticator_jni.h",
-        "net/net_jni_headers/HttpUtil_jni.h",
-        "net/net_jni_headers/NetStringUtil_jni.h",
-        "net/net_jni_headers/NetworkActiveNotifier_jni.h",
-        "net/net_jni_headers/NetworkChangeNotifier_jni.h",
-        "net/net_jni_headers/ProxyChangeListener_jni.h",
-        "net/net_jni_headers/X509Util_jni.h",
-    ],
-    tool_files: [
-        "base/android/jni_generator/android_jar.classes",
-        "base/android/jni_generator/jni_generator.py",
-        "build/android/gyp/util/__init__.py",
-        "build/android/gyp/util/build_utils.py",
-        "build/gn_helpers.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //net:net_jni_headers__android_x86_64
-cc_genrule {
-    name: "cronet_aml_net_net_jni_headers__android_x86_64",
+    name: "cronet_aml_net_net_jni_headers",
     srcs: [
         "net/android/java/src/org/chromium/net/AndroidCertVerifyResult.java",
         "net/android/java/src/org/chromium/net/AndroidKeyStore.java",
@@ -13841,6 +6849,8 @@
         "cronet_aml_url_url",
     ],
     generated_headers: [
+        "cronet_aml_build_chromeos_buildflags",
+        "cronet_aml_net_buildflags",
         "cronet_aml_net_net_nqe_proto_gen_headers",
         "cronet_aml_net_third_party_quiche_net_quic_test_tools_proto_gen_headers",
     ],
@@ -13882,35 +6892,15 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-                "cronet_aml_net_buildflags__android_arm",
-            ],
-        },
-        android_arm64: {
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-                "cronet_aml_net_buildflags__android_arm64",
-            ],
-        },
         android_x86: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-                "cronet_aml_net_buildflags__android_x86",
-            ],
         },
         android_x86_64: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-                "cronet_aml_net_buildflags__android_x86_64",
-            ],
         },
     },
 }
@@ -14424,9 +7414,11 @@
         "cronet_aml_url_url",
     ],
     generated_headers: [
+        "cronet_aml_build_chromeos_buildflags",
         "cronet_aml_net_third_party_quiche_net_quic_proto_gen_headers",
     ],
     export_generated_headers: [
+        "cronet_aml_build_chromeos_buildflags",
         "cronet_aml_net_third_party_quiche_net_quic_proto_gen_headers",
     ],
     defaults: [
@@ -14469,43 +7461,15 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-            ],
-            export_generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-            ],
-        },
-        android_arm64: {
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-            ],
-            export_generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-            ],
-        },
         android_x86: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-            ],
-            export_generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-            ],
         },
         android_x86_64: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-            ],
-            export_generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-            ],
         },
     },
 }
@@ -14532,6 +7496,9 @@
         "cronet_aml_third_party_libevent_libevent",
         "cronet_aml_third_party_modp_b64_modp_b64",
     ],
+    generated_headers: [
+        "cronet_aml_build_chromeos_buildflags",
+    ],
     defaults: [
         "cronet_aml_defaults",
     ],
@@ -14562,31 +7529,15 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-            ],
-        },
-        android_arm64: {
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-            ],
-        },
         android_x86: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-            ],
         },
         android_x86_64: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-            ],
         },
     },
 }
@@ -14660,15 +7611,20 @@
 // GN: //third_party/abseil-cpp:absl
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl",
-    host_supported: true,
+    generated_headers: [
+        "cronet_aml_build_chromeos_buildflags",
+    ],
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -14687,62 +7643,15 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-            ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
-                "-msse3",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__host",
-            ],
         },
     },
 }
@@ -14750,16 +7659,18 @@
 // GN: //third_party/abseil-cpp/absl/algorithm:algorithm
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_algorithm_algorithm",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -14776,45 +7687,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -14824,16 +7703,18 @@
 // GN: //third_party/abseil-cpp/absl/algorithm:container
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_algorithm_container",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -14850,45 +7731,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -14898,16 +7747,18 @@
 // GN: //third_party/abseil-cpp/absl/base:atomic_hook
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_base_atomic_hook",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -14924,45 +7775,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -14979,16 +7798,18 @@
         "third_party/abseil-cpp/absl/base/internal/thread_identity.cc",
         "third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -15005,45 +7826,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -15053,16 +7842,18 @@
 // GN: //third_party/abseil-cpp/absl/base:base_internal
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_base_base_internal",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -15079,45 +7870,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -15127,16 +7886,18 @@
 // GN: //third_party/abseil-cpp/absl/base:config
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_base_config",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -15153,45 +7914,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -15201,16 +7930,18 @@
 // GN: //third_party/abseil-cpp/absl/base:core_headers
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_base_core_headers",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -15227,45 +7958,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -15275,16 +7974,18 @@
 // GN: //third_party/abseil-cpp/absl/base:cycleclock_internal
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_base_cycleclock_internal",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -15301,45 +8002,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -15349,16 +8018,18 @@
 // GN: //third_party/abseil-cpp/absl/base:dynamic_annotations
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_base_dynamic_annotations",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -15375,45 +8046,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -15423,16 +8062,18 @@
 // GN: //third_party/abseil-cpp/absl/base:endian
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_base_endian",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -15449,45 +8090,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -15497,16 +8106,18 @@
 // GN: //third_party/abseil-cpp/absl/base:errno_saver
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_base_errno_saver",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -15523,45 +8134,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -15571,16 +8150,18 @@
 // GN: //third_party/abseil-cpp/absl/base:fast_type_id
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_base_fast_type_id",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -15597,45 +8178,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -15648,16 +8197,18 @@
     srcs: [
         "third_party/abseil-cpp/absl/base/log_severity.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -15674,45 +8225,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -15725,16 +8244,18 @@
     srcs: [
         "third_party/abseil-cpp/absl/base/internal/low_level_alloc.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -15751,45 +8272,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -15799,16 +8288,18 @@
 // GN: //third_party/abseil-cpp/absl/base:prefetch
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_base_prefetch",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -15825,45 +8316,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -15876,16 +8335,18 @@
     srcs: [
         "third_party/abseil-cpp/absl/base/internal/raw_logging.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -15902,45 +8363,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -15953,16 +8382,18 @@
     srcs: [
         "third_party/abseil-cpp/absl/base/internal/spinlock_wait.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -15979,45 +8410,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -16030,16 +8429,18 @@
     srcs: [
         "third_party/abseil-cpp/absl/base/internal/strerror.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -16056,45 +8457,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -16107,16 +8476,18 @@
     srcs: [
         "third_party/abseil-cpp/absl/base/internal/throw_delegate.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -16133,45 +8504,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -16181,16 +8520,18 @@
 // GN: //third_party/abseil-cpp/absl/cleanup:cleanup
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_cleanup_cleanup",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -16207,45 +8548,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -16255,16 +8564,18 @@
 // GN: //third_party/abseil-cpp/absl/cleanup:cleanup_internal
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_cleanup_cleanup_internal",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -16281,45 +8592,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -16329,16 +8608,18 @@
 // GN: //third_party/abseil-cpp/absl/container:btree
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_container_btree",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -16355,45 +8636,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -16403,16 +8652,18 @@
 // GN: //third_party/abseil-cpp/absl/container:common
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_container_common",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -16429,45 +8680,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -16477,16 +8696,18 @@
 // GN: //third_party/abseil-cpp/absl/container:common_policy_traits
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_container_common_policy_traits",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -16503,45 +8724,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -16551,16 +8740,18 @@
 // GN: //third_party/abseil-cpp/absl/container:compressed_tuple
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_container_compressed_tuple",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -16577,45 +8768,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -16625,16 +8784,18 @@
 // GN: //third_party/abseil-cpp/absl/container:container_memory
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_container_container_memory",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -16651,45 +8812,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -16699,16 +8828,18 @@
 // GN: //third_party/abseil-cpp/absl/container:fixed_array
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_container_fixed_array",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -16725,45 +8856,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -16773,16 +8872,18 @@
 // GN: //third_party/abseil-cpp/absl/container:flat_hash_map
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_container_flat_hash_map",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -16799,45 +8900,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -16847,16 +8916,18 @@
 // GN: //third_party/abseil-cpp/absl/container:flat_hash_set
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_container_flat_hash_set",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -16873,45 +8944,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -16921,16 +8960,18 @@
 // GN: //third_party/abseil-cpp/absl/container:hash_function_defaults
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_container_hash_function_defaults",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -16947,45 +8988,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -16995,16 +9004,18 @@
 // GN: //third_party/abseil-cpp/absl/container:hash_policy_traits
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_container_hash_policy_traits",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -17021,45 +9032,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -17069,16 +9048,18 @@
 // GN: //third_party/abseil-cpp/absl/container:hashtable_debug_hooks
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_container_hashtable_debug_hooks",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -17095,45 +9076,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -17147,16 +9096,18 @@
         "third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.cc",
         "third_party/abseil-cpp/absl/container/internal/hashtablez_sampler_force_weak_definition.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -17173,45 +9124,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -17221,16 +9140,18 @@
 // GN: //third_party/abseil-cpp/absl/container:inlined_vector
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_container_inlined_vector",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -17247,45 +9168,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -17295,16 +9184,18 @@
 // GN: //third_party/abseil-cpp/absl/container:inlined_vector_internal
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_container_inlined_vector_internal",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -17321,45 +9212,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -17369,16 +9228,18 @@
 // GN: //third_party/abseil-cpp/absl/container:layout
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_container_layout",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -17395,45 +9256,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -17443,16 +9272,18 @@
 // GN: //third_party/abseil-cpp/absl/container:node_hash_map
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_container_node_hash_map",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -17469,45 +9300,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -17517,16 +9316,18 @@
 // GN: //third_party/abseil-cpp/absl/container:node_hash_set
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_container_node_hash_set",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -17543,45 +9344,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -17591,16 +9360,18 @@
 // GN: //third_party/abseil-cpp/absl/container:node_slot_policy
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_container_node_slot_policy",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -17617,45 +9388,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -17665,16 +9404,18 @@
 // GN: //third_party/abseil-cpp/absl/container:raw_hash_map
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_container_raw_hash_map",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -17691,45 +9432,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -17742,16 +9451,18 @@
     srcs: [
         "third_party/abseil-cpp/absl/container/internal/raw_hash_set.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -17768,45 +9479,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -17821,16 +9500,18 @@
         "third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.cc",
         "third_party/abseil-cpp/absl/debugging/internal/vdso_support.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -17847,45 +9528,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -17898,16 +9547,18 @@
     srcs: [
         "third_party/abseil-cpp/absl/debugging/internal/demangle.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -17924,45 +9575,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -17975,16 +9594,18 @@
     srcs: [
         "third_party/abseil-cpp/absl/debugging/internal/examine_stack.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -18001,45 +9622,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -18052,16 +9641,18 @@
     srcs: [
         "third_party/abseil-cpp/absl/debugging/failure_signal_handler.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -18078,45 +9669,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -18129,16 +9688,18 @@
     srcs: [
         "third_party/abseil-cpp/absl/debugging/stacktrace.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -18155,45 +9716,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -18206,16 +9735,18 @@
     srcs: [
         "third_party/abseil-cpp/absl/debugging/symbolize.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -18232,45 +9763,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -18280,16 +9779,18 @@
 // GN: //third_party/abseil-cpp/absl/functional:any_invocable
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_functional_any_invocable",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -18306,45 +9807,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -18354,16 +9823,18 @@
 // GN: //third_party/abseil-cpp/absl/functional:bind_front
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_functional_bind_front",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -18380,45 +9851,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -18428,16 +9867,18 @@
 // GN: //third_party/abseil-cpp/absl/functional:function_ref
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_functional_function_ref",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -18454,45 +9895,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -18505,16 +9914,18 @@
     srcs: [
         "third_party/abseil-cpp/absl/hash/internal/city.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -18531,45 +9942,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -18582,16 +9961,18 @@
     srcs: [
         "third_party/abseil-cpp/absl/hash/internal/hash.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -18608,45 +9989,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -18659,16 +10008,18 @@
     srcs: [
         "third_party/abseil-cpp/absl/hash/internal/low_level_hash.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -18685,45 +10036,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -18733,16 +10052,18 @@
 // GN: //third_party/abseil-cpp/absl/memory:memory
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_memory_memory",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -18759,45 +10080,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -18807,16 +10096,18 @@
 // GN: //third_party/abseil-cpp/absl/meta:type_traits
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_meta_type_traits",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -18833,45 +10124,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -18881,16 +10140,18 @@
 // GN: //third_party/abseil-cpp/absl/numeric:bits
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_numeric_bits",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -18907,45 +10168,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -18958,16 +10187,18 @@
     srcs: [
         "third_party/abseil-cpp/absl/numeric/int128.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -18984,45 +10215,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -19032,16 +10231,18 @@
 // GN: //third_party/abseil-cpp/absl/numeric:representation
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_numeric_representation",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -19058,45 +10259,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -19109,16 +10278,18 @@
     srcs: [
         "third_party/abseil-cpp/absl/profiling/internal/exponential_biased.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -19135,45 +10306,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -19183,16 +10322,18 @@
 // GN: //third_party/abseil-cpp/absl/profiling:sample_recorder
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_profiling_sample_recorder",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -19209,45 +10350,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -19261,16 +10370,18 @@
         "third_party/abseil-cpp/absl/random/discrete_distribution.cc",
         "third_party/abseil-cpp/absl/random/gaussian_distribution.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -19287,45 +10398,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -19335,16 +10414,18 @@
 // GN: //third_party/abseil-cpp/absl/random/internal:distribution_caller
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_random_internal_distribution_caller",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -19361,45 +10442,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -19409,16 +10458,18 @@
 // GN: //third_party/abseil-cpp/absl/random/internal:fast_uniform_bits
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_random_internal_fast_uniform_bits",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -19435,45 +10486,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -19483,16 +10502,18 @@
 // GN: //third_party/abseil-cpp/absl/random/internal:fastmath
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_random_internal_fastmath",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -19509,45 +10530,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -19557,16 +10546,18 @@
 // GN: //third_party/abseil-cpp/absl/random/internal:generate_real
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_random_internal_generate_real",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -19583,45 +10574,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -19631,16 +10590,18 @@
 // GN: //third_party/abseil-cpp/absl/random/internal:iostream_state_saver
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_random_internal_iostream_state_saver",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -19657,45 +10618,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -19705,16 +10634,21 @@
 // GN: //third_party/abseil-cpp/absl/random/internal:nonsecure_base
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_random_internal_nonsecure_base",
-    host_supported: true,
+    generated_headers: [
+        "cronet_aml_build_chromeos_buildflags",
+    ],
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -19731,62 +10665,15 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-            ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
-                "-msse3",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__host",
-            ],
         },
     },
 }
@@ -19794,16 +10681,18 @@
 // GN: //third_party/abseil-cpp/absl/random/internal:pcg_engine
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_random_internal_pcg_engine",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -19820,45 +10709,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -19871,16 +10728,21 @@
     srcs: [
         "third_party/abseil-cpp/absl/random/internal/randen_round_keys.cc",
     ],
-    host_supported: true,
+    generated_headers: [
+        "cronet_aml_build_chromeos_buildflags",
+    ],
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -19897,62 +10759,15 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-            ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
-                "-msse3",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__host",
-            ],
         },
     },
 }
@@ -19963,16 +10778,21 @@
     srcs: [
         "third_party/abseil-cpp/absl/random/internal/pool_urbg.cc",
     ],
-    host_supported: true,
+    generated_headers: [
+        "cronet_aml_build_chromeos_buildflags",
+    ],
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -19989,62 +10809,15 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-            ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
-                "-msse3",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__host",
-            ],
         },
     },
 }
@@ -20055,16 +10828,21 @@
     srcs: [
         "third_party/abseil-cpp/absl/random/internal/randen.cc",
     ],
-    host_supported: true,
+    generated_headers: [
+        "cronet_aml_build_chromeos_buildflags",
+    ],
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -20081,62 +10859,15 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-            ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
-                "-msse3",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__host",
-            ],
         },
     },
 }
@@ -20144,16 +10875,21 @@
 // GN: //third_party/abseil-cpp/absl/random/internal:randen_engine
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_random_internal_randen_engine",
-    host_supported: true,
+    generated_headers: [
+        "cronet_aml_build_chromeos_buildflags",
+    ],
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -20170,62 +10906,15 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-            ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
-                "-msse3",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__host",
-            ],
         },
     },
 }
@@ -20236,16 +10925,21 @@
     srcs: [
         "third_party/abseil-cpp/absl/random/internal/randen_detect.cc",
     ],
-    host_supported: true,
+    generated_headers: [
+        "cronet_aml_build_chromeos_buildflags",
+    ],
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -20262,62 +10956,15 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-            ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
-                "-msse3",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__host",
-            ],
         },
     },
 }
@@ -20328,16 +10975,21 @@
     srcs: [
         "third_party/abseil-cpp/absl/random/internal/randen_hwaes.cc",
     ],
-    host_supported: true,
+    generated_headers: [
+        "cronet_aml_build_chromeos_buildflags",
+    ],
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -20354,62 +11006,15 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-            ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
-                "-msse3",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__host",
-            ],
         },
     },
 }
@@ -20420,16 +11025,21 @@
     srcs: [
         "third_party/abseil-cpp/absl/random/internal/randen_slow.cc",
     ],
-    host_supported: true,
+    generated_headers: [
+        "cronet_aml_build_chromeos_buildflags",
+    ],
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -20446,62 +11056,15 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-            ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
-                "-msse3",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__host",
-            ],
         },
     },
 }
@@ -20509,16 +11072,18 @@
 // GN: //third_party/abseil-cpp/absl/random/internal:salted_seed_seq
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_random_internal_salted_seed_seq",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -20535,45 +11100,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -20586,16 +11119,18 @@
     srcs: [
         "third_party/abseil-cpp/absl/random/internal/seed_material.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -20612,45 +11147,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -20660,16 +11163,18 @@
 // GN: //third_party/abseil-cpp/absl/random/internal:traits
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_random_internal_traits",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -20686,45 +11191,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -20734,16 +11207,18 @@
 // GN: //third_party/abseil-cpp/absl/random/internal:uniform_helper
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_random_internal_uniform_helper",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -20760,45 +11235,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -20808,16 +11251,18 @@
 // GN: //third_party/abseil-cpp/absl/random/internal:wide_multiply
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_random_internal_wide_multiply",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -20834,45 +11279,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -20882,16 +11295,21 @@
 // GN: //third_party/abseil-cpp/absl/random:random
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_random_random",
-    host_supported: true,
+    generated_headers: [
+        "cronet_aml_build_chromeos_buildflags",
+    ],
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -20908,62 +11326,15 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-            ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
-                "-msse3",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__host",
-            ],
         },
     },
 }
@@ -20974,16 +11345,18 @@
     srcs: [
         "third_party/abseil-cpp/absl/random/seed_gen_exception.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -21000,45 +11373,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -21051,16 +11392,21 @@
     srcs: [
         "third_party/abseil-cpp/absl/random/seed_sequences.cc",
     ],
-    host_supported: true,
+    generated_headers: [
+        "cronet_aml_build_chromeos_buildflags",
+    ],
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -21077,62 +11423,15 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-            ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
-                "-msse3",
-            ],
-            generated_headers: [
-                "cronet_aml_build_chromeos_buildflags__host",
-            ],
         },
     },
 }
@@ -21144,16 +11443,18 @@
         "third_party/abseil-cpp/absl/status/status.cc",
         "third_party/abseil-cpp/absl/status/status_payload_printer.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -21170,45 +11471,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -21221,16 +11490,18 @@
     srcs: [
         "third_party/abseil-cpp/absl/status/statusor.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -21247,45 +11518,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -21300,16 +11539,18 @@
         "third_party/abseil-cpp/absl/strings/cord_analysis.cc",
         "third_party/abseil-cpp/absl/strings/cord_buffer.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -21326,45 +11567,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -21383,16 +11592,18 @@
         "third_party/abseil-cpp/absl/strings/internal/cord_rep_crc.cc",
         "third_party/abseil-cpp/absl/strings/internal/cord_rep_ring.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -21409,45 +11620,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -21460,16 +11639,18 @@
     srcs: [
         "third_party/abseil-cpp/absl/strings/internal/cordz_functions.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -21486,45 +11667,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -21537,16 +11686,18 @@
     srcs: [
         "third_party/abseil-cpp/absl/strings/internal/cordz_handle.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -21563,45 +11714,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -21614,16 +11733,18 @@
     srcs: [
         "third_party/abseil-cpp/absl/strings/internal/cordz_info.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -21640,45 +11761,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -21688,16 +11777,18 @@
 // GN: //third_party/abseil-cpp/absl/strings:cordz_statistics
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_strings_cordz_statistics",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -21714,45 +11805,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -21762,16 +11821,18 @@
 // GN: //third_party/abseil-cpp/absl/strings:cordz_update_scope
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_strings_cordz_update_scope",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -21788,45 +11849,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -21836,16 +11865,18 @@
 // GN: //third_party/abseil-cpp/absl/strings:cordz_update_tracker
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_strings_cordz_update_tracker",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -21862,45 +11893,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -21915,16 +11914,18 @@
         "third_party/abseil-cpp/absl/strings/internal/ostringstream.cc",
         "third_party/abseil-cpp/absl/strings/internal/utf8.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -21941,45 +11942,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -21989,16 +11958,18 @@
 // GN: //third_party/abseil-cpp/absl/strings:str_format
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_strings_str_format",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -22015,45 +11986,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -22071,16 +12010,18 @@
         "third_party/abseil-cpp/absl/strings/internal/str_format/output.cc",
         "third_party/abseil-cpp/absl/strings/internal/str_format/parser.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -22097,45 +12038,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -22161,16 +12070,18 @@
         "third_party/abseil-cpp/absl/strings/string_view.cc",
         "third_party/abseil-cpp/absl/strings/substitute.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -22187,45 +12098,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -22238,16 +12117,18 @@
     srcs: [
         "third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -22264,45 +12145,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -22312,16 +12161,18 @@
 // GN: //third_party/abseil-cpp/absl/synchronization:kernel_timeout_internal
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_synchronization_kernel_timeout_internal",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -22338,45 +12189,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -22395,16 +12214,18 @@
         "third_party/abseil-cpp/absl/synchronization/mutex.cc",
         "third_party/abseil-cpp/absl/synchronization/notification.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -22421,45 +12242,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -22472,16 +12261,18 @@
     srcs: [
         "third_party/abseil-cpp/absl/time/internal/cctz/src/civil_time_detail.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -22498,45 +12289,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -22557,16 +12316,18 @@
         "third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_posix.cc",
         "third_party/abseil-cpp/absl/time/internal/cctz/src/zone_info_source.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -22583,45 +12344,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -22638,16 +12367,18 @@
         "third_party/abseil-cpp/absl/time/format.cc",
         "third_party/abseil-cpp/absl/time/time.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -22664,45 +12395,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -22715,16 +12414,18 @@
     srcs: [
         "third_party/abseil-cpp/absl/types/bad_optional_access.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -22741,45 +12442,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -22792,16 +12461,18 @@
     srcs: [
         "third_party/abseil-cpp/absl/types/bad_variant_access.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -22818,45 +12489,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -22866,16 +12505,18 @@
 // GN: //third_party/abseil-cpp/absl/types:compare
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_types_compare",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -22892,45 +12533,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -22940,16 +12549,18 @@
 // GN: //third_party/abseil-cpp/absl/types:optional
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_types_optional",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -22966,45 +12577,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -23014,16 +12593,18 @@
 // GN: //third_party/abseil-cpp/absl/types:span
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_types_span",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -23040,45 +12621,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -23088,16 +12637,18 @@
 // GN: //third_party/abseil-cpp/absl/types:variant
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_types_variant",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -23114,45 +12665,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -23162,16 +12681,18 @@
 // GN: //third_party/abseil-cpp/absl/utility:utility
 cc_object {
     name: "cronet_aml_third_party_abseil_cpp_absl_utility_utility",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
         "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -23188,45 +12709,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -23598,11 +13087,12 @@
         "third_party/boringssl/src/ssl/tls_method.cc",
         "third_party/boringssl/src/ssl/tls_record.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DBORINGSSL_ALLOW_CXX_RUNTIME",
         "-DBORINGSSL_IMPLEMENTATION",
         "-DBORINGSSL_NO_STATIC_INITIALIZER",
@@ -23610,6 +13100,7 @@
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-DOPENSSL_SMALL",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
@@ -23627,45 +13118,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -23675,15 +13134,17 @@
 // GN: //third_party/boringssl:boringssl_asm
 cc_object {
     name: "cronet_aml_third_party_boringssl_boringssl_asm",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -23718,11 +13179,6 @@
                 "third_party/boringssl/src/crypto/curve25519/asm/x25519-asm-arm.S",
                 "third_party/boringssl/src/crypto/poly1305/poly1305_arm_asm.S",
             ],
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
         },
         android_arm64: {
             srcs: [
@@ -23740,11 +13196,6 @@
                 "third_party/boringssl/linux-aarch64/crypto/fipsmodule/vpaes-armv8.S",
                 "third_party/boringssl/linux-aarch64/crypto/test/trampoline-armv8.S",
             ],
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
         },
         android_x86: {
             srcs: [
@@ -23763,9 +13214,6 @@
                 "third_party/boringssl/linux-x86/crypto/test/trampoline-x86.S",
             ],
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
@@ -23793,43 +13241,6 @@
                 "third_party/boringssl/src/crypto/hrss/asm/poly_rq_mul.S",
             ],
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            srcs: [
-                "third_party/boringssl/linux-x86_64/crypto/chacha/chacha-x86_64.S",
-                "third_party/boringssl/linux-x86_64/crypto/cipher_extra/aes128gcmsiv-x86_64.S",
-                "third_party/boringssl/linux-x86_64/crypto/cipher_extra/chacha20_poly1305_x86_64.S",
-                "third_party/boringssl/linux-x86_64/crypto/fipsmodule/aesni-gcm-x86_64.S",
-                "third_party/boringssl/linux-x86_64/crypto/fipsmodule/aesni-x86_64.S",
-                "third_party/boringssl/linux-x86_64/crypto/fipsmodule/ghash-ssse3-x86_64.S",
-                "third_party/boringssl/linux-x86_64/crypto/fipsmodule/ghash-x86_64.S",
-                "third_party/boringssl/linux-x86_64/crypto/fipsmodule/md5-x86_64.S",
-                "third_party/boringssl/linux-x86_64/crypto/fipsmodule/p256-x86_64-asm.S",
-                "third_party/boringssl/linux-x86_64/crypto/fipsmodule/p256_beeu-x86_64-asm.S",
-                "third_party/boringssl/linux-x86_64/crypto/fipsmodule/rdrand-x86_64.S",
-                "third_party/boringssl/linux-x86_64/crypto/fipsmodule/rsaz-avx2.S",
-                "third_party/boringssl/linux-x86_64/crypto/fipsmodule/sha1-x86_64.S",
-                "third_party/boringssl/linux-x86_64/crypto/fipsmodule/sha256-x86_64.S",
-                "third_party/boringssl/linux-x86_64/crypto/fipsmodule/sha512-x86_64.S",
-                "third_party/boringssl/linux-x86_64/crypto/fipsmodule/vpaes-x86_64.S",
-                "third_party/boringssl/linux-x86_64/crypto/fipsmodule/x86_64-mont.S",
-                "third_party/boringssl/linux-x86_64/crypto/fipsmodule/x86_64-mont5.S",
-                "third_party/boringssl/linux-x86_64/crypto/test/trampoline-x86_64.S",
-                "third_party/boringssl/src/crypto/hrss/asm/poly_rq_mul.S",
-            ],
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -23839,15 +13250,17 @@
 // GN: //third_party/boringssl/src/third_party/fiat:fiat_license
 cc_object {
     name: "cronet_aml_third_party_boringssl_src_third_party_fiat_fiat_license",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -23865,45 +13278,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -24307,16 +13688,18 @@
     static_libs: [
         "cronet_aml_third_party_icu_icuuc_private",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
         "-DHAVE_DLOPEN=0",
+        "-DHAVE_SYS_UIO_H",
         "-DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE",
         "-DUCONFIG_ONLY_HTML_CONVERSION=1",
         "-DUCONFIG_USE_WINDOWS_LCID_MAPPING_API=0",
@@ -24346,45 +13729,13 @@
     cpp_std: "c++20",
     rtti: true,
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -24595,16 +13946,18 @@
         "third_party/icu/source/common/wintz.cpp",
         "third_party/icu/source/stubdata/stubdata.cpp",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
         "-DHAVE_DLOPEN=0",
+        "-DHAVE_SYS_UIO_H",
         "-DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE",
         "-DUCONFIG_ONLY_HTML_CONVERSION=1",
         "-DUCONFIG_USE_WINDOWS_LCID_MAPPING_API=0",
@@ -24635,45 +13988,13 @@
     cpp_std: "c++20",
     rtti: true,
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -24683,15 +14004,17 @@
 // GN: //third_party/icu:icuuc_public
 cc_object {
     name: "cronet_aml_third_party_icu_icuuc_public",
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -24709,45 +14032,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -24773,16 +14064,18 @@
         "third_party/libevent/signal.c",
         "third_party/libevent/strlcpy.c",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
         "-DHAVE_CONFIG_H",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -24795,65 +14088,19 @@
         "buildtools/third_party/libc++/",
         "buildtools/third_party/libc++/trunk/include",
         "buildtools/third_party/libc++abi/trunk/include",
+        "third_party/libevent/android/",
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-            local_include_dirs: [
-                "third_party/libevent/android/",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-            local_include_dirs: [
-                "third_party/libevent/android/",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
-            local_include_dirs: [
-                "third_party/libevent/android/",
-            ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
-            local_include_dirs: [
-                "third_party/libevent/android/",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
-                "-msse3",
-            ],
-            local_include_dirs: [
-                "third_party/libevent/linux/",
-            ],
         },
     },
 }
@@ -25009,15 +14256,17 @@
     srcs: [
         "third_party/modp_b64/modp_b64.cc",
     ],
-    host_supported: true,
     defaults: [
         "cronet_aml_defaults",
     ],
     cflags: [
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
         "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
         "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
         "-DDCHECK_ALWAYS_ON=1",
         "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
         "-D_DEBUG",
         "-D_GNU_SOURCE",
         "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
@@ -25035,45 +14284,13 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
-        android_arm64: {
-            cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-            ],
-        },
         android_x86: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
                 "-msse3",
             ],
         },
         android_x86_64: {
             cflags: [
-                "-DANDROID",
-                "-DANDROID_NDK_VERSION_ROLL=r23_1",
-                "-DHAVE_SYS_UIO_H",
-                "-msse3",
-            ],
-        },
-        host: {
-            cflags: [
-                "-DCR_SYSROOT_KEY=20220331T153654Z-0",
-                "-DUSE_AURA=1",
-                "-DUSE_OZONE=1",
-                "-DUSE_UDEV",
-                "-D_FILE_OFFSET_BITS=64",
-                "-D_LARGEFILE64_SOURCE",
-                "-D_LARGEFILE_SOURCE",
                 "-msse3",
             ],
         },
@@ -26074,78 +15291,9 @@
     },
 }
 
-// GN: //url:buildflags__android_arm
+// GN: //url:buildflags
 cc_genrule {
-    name: "cronet_aml_url_buildflags__android_arm",
-    cmd: "echo '--flags USE_PLATFORM_ICU_ALTERNATIVES=\"true\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//url:buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "url/buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //url:buildflags__android_arm64
-cc_genrule {
-    name: "cronet_aml_url_buildflags__android_arm64",
-    cmd: "echo '--flags USE_PLATFORM_ICU_ALTERNATIVES=\"true\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//url:buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "url/buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //url:buildflags__android_x86
-cc_genrule {
-    name: "cronet_aml_url_buildflags__android_x86",
-    cmd: "echo '--flags USE_PLATFORM_ICU_ALTERNATIVES=\"true\"' | " +
-         "$(location build/write_buildflag_header.py) --output " +
-         "$(out) " +
-         "--rulename " +
-         "//url:buildflags " +
-         "--gen-dir " +
-         ". " +
-         "--definitions " +
-         "/dev/stdin",
-    out: [
-        "url/buildflags.h",
-    ],
-    tool_files: [
-        "build/write_buildflag_header.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //url:buildflags__android_x86_64
-cc_genrule {
-    name: "cronet_aml_url_buildflags__android_x86_64",
+    name: "cronet_aml_url_buildflags",
     cmd: "echo '--flags USE_PLATFORM_ICU_ALTERNATIVES=\"true\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
@@ -26209,6 +15357,20 @@
         "cronet_aml_third_party_libevent_libevent",
         "cronet_aml_third_party_modp_b64_modp_b64",
     ],
+    generated_headers: [
+        "cronet_aml_base_debugging_buildflags",
+        "cronet_aml_base_logging_buildflags",
+        "cronet_aml_build_chromeos_buildflags",
+        "cronet_aml_url_buildflags",
+        "cronet_aml_url_url_jni_headers",
+    ],
+    export_generated_headers: [
+        "cronet_aml_base_debugging_buildflags",
+        "cronet_aml_base_logging_buildflags",
+        "cronet_aml_build_chromeos_buildflags",
+        "cronet_aml_url_buildflags",
+        "cronet_aml_url_url_jni_headers",
+    ],
     defaults: [
         "cronet_aml_defaults",
     ],
@@ -26240,196 +15402,22 @@
     ],
     cpp_std: "c++20",
     target: {
-        android_arm: {
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm",
-                "cronet_aml_base_logging_buildflags__android_arm",
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-                "cronet_aml_url_buildflags__android_arm",
-                "cronet_aml_url_url_jni_headers__android_arm",
-            ],
-            export_generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm",
-                "cronet_aml_base_logging_buildflags__android_arm",
-                "cronet_aml_build_chromeos_buildflags__android_arm",
-                "cronet_aml_url_buildflags__android_arm",
-                "cronet_aml_url_url_jni_headers__android_arm",
-            ],
-        },
-        android_arm64: {
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm64",
-                "cronet_aml_base_logging_buildflags__android_arm64",
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-                "cronet_aml_url_buildflags__android_arm64",
-                "cronet_aml_url_url_jni_headers__android_arm64",
-            ],
-            export_generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_arm64",
-                "cronet_aml_base_logging_buildflags__android_arm64",
-                "cronet_aml_build_chromeos_buildflags__android_arm64",
-                "cronet_aml_url_buildflags__android_arm64",
-                "cronet_aml_url_url_jni_headers__android_arm64",
-            ],
-        },
         android_x86: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86",
-                "cronet_aml_base_logging_buildflags__android_x86",
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-                "cronet_aml_url_buildflags__android_x86",
-                "cronet_aml_url_url_jni_headers__android_x86",
-            ],
-            export_generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86",
-                "cronet_aml_base_logging_buildflags__android_x86",
-                "cronet_aml_build_chromeos_buildflags__android_x86",
-                "cronet_aml_url_buildflags__android_x86",
-                "cronet_aml_url_url_jni_headers__android_x86",
-            ],
         },
         android_x86_64: {
             cflags: [
                 "-msse3",
             ],
-            generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86_64",
-                "cronet_aml_base_logging_buildflags__android_x86_64",
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-                "cronet_aml_url_buildflags__android_x86_64",
-                "cronet_aml_url_url_jni_headers__android_x86_64",
-            ],
-            export_generated_headers: [
-                "cronet_aml_base_debugging_buildflags__android_x86_64",
-                "cronet_aml_base_logging_buildflags__android_x86_64",
-                "cronet_aml_build_chromeos_buildflags__android_x86_64",
-                "cronet_aml_url_buildflags__android_x86_64",
-                "cronet_aml_url_url_jni_headers__android_x86_64",
-            ],
         },
     },
 }
 
-// GN: //url:url_jni_headers__android_arm
+// GN: //url:url_jni_headers
 cc_genrule {
-    name: "cronet_aml_url_url_jni_headers__android_arm",
-    srcs: [
-        "url/android/java/src/org/chromium/url/IDNStringUtil.java",
-        "url/android/java/src/org/chromium/url/Origin.java",
-    ],
-    cmd: "$(location base/android/jni_generator/jni_generator.py) --ptr_type " +
-         "long " +
-         "--output_dir " +
-         "$(genDir)/url/url_jni_headers " +
-         "--includes " +
-         "base/android/jni_generator/jni_generator_helper.h " +
-         "--use_proxy_hash " +
-         "--output_name " +
-         "IDNStringUtil_jni.h " +
-         "--output_name " +
-         "Origin_jni.h " +
-         "--input_file " +
-         "$(location url/android/java/src/org/chromium/url/IDNStringUtil.java) " +
-         "--input_file " +
-         "$(location url/android/java/src/org/chromium/url/Origin.java)",
-    out: [
-        "url/url_jni_headers/IDNStringUtil_jni.h",
-        "url/url_jni_headers/Origin_jni.h",
-    ],
-    tool_files: [
-        "base/android/jni_generator/android_jar.classes",
-        "base/android/jni_generator/jni_generator.py",
-        "build/android/gyp/util/__init__.py",
-        "build/android/gyp/util/build_utils.py",
-        "build/gn_helpers.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //url:url_jni_headers__android_arm64
-cc_genrule {
-    name: "cronet_aml_url_url_jni_headers__android_arm64",
-    srcs: [
-        "url/android/java/src/org/chromium/url/IDNStringUtil.java",
-        "url/android/java/src/org/chromium/url/Origin.java",
-    ],
-    cmd: "$(location base/android/jni_generator/jni_generator.py) --ptr_type " +
-         "long " +
-         "--output_dir " +
-         "$(genDir)/url/url_jni_headers " +
-         "--includes " +
-         "base/android/jni_generator/jni_generator_helper.h " +
-         "--use_proxy_hash " +
-         "--output_name " +
-         "IDNStringUtil_jni.h " +
-         "--output_name " +
-         "Origin_jni.h " +
-         "--input_file " +
-         "$(location url/android/java/src/org/chromium/url/IDNStringUtil.java) " +
-         "--input_file " +
-         "$(location url/android/java/src/org/chromium/url/Origin.java)",
-    out: [
-        "url/url_jni_headers/IDNStringUtil_jni.h",
-        "url/url_jni_headers/Origin_jni.h",
-    ],
-    tool_files: [
-        "base/android/jni_generator/android_jar.classes",
-        "base/android/jni_generator/jni_generator.py",
-        "build/android/gyp/util/__init__.py",
-        "build/android/gyp/util/build_utils.py",
-        "build/gn_helpers.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //url:url_jni_headers__android_x86
-cc_genrule {
-    name: "cronet_aml_url_url_jni_headers__android_x86",
-    srcs: [
-        "url/android/java/src/org/chromium/url/IDNStringUtil.java",
-        "url/android/java/src/org/chromium/url/Origin.java",
-    ],
-    cmd: "$(location base/android/jni_generator/jni_generator.py) --ptr_type " +
-         "long " +
-         "--output_dir " +
-         "$(genDir)/url/url_jni_headers " +
-         "--includes " +
-         "base/android/jni_generator/jni_generator_helper.h " +
-         "--use_proxy_hash " +
-         "--output_name " +
-         "IDNStringUtil_jni.h " +
-         "--output_name " +
-         "Origin_jni.h " +
-         "--input_file " +
-         "$(location url/android/java/src/org/chromium/url/IDNStringUtil.java) " +
-         "--input_file " +
-         "$(location url/android/java/src/org/chromium/url/Origin.java)",
-    out: [
-        "url/url_jni_headers/IDNStringUtil_jni.h",
-        "url/url_jni_headers/Origin_jni.h",
-    ],
-    tool_files: [
-        "base/android/jni_generator/android_jar.classes",
-        "base/android/jni_generator/jni_generator.py",
-        "build/android/gyp/util/__init__.py",
-        "build/android/gyp/util/build_utils.py",
-        "build/gn_helpers.py",
-    ],
-    apex_available: [
-        "com.android.tethering",
-    ],
-}
-
-// GN: //url:url_jni_headers__android_x86_64
-cc_genrule {
-    name: "cronet_aml_url_url_jni_headers__android_x86_64",
+    name: "cronet_aml_url_url_jni_headers",
     srcs: [
         "url/android/java/src/org/chromium/url/IDNStringUtil.java",
         "url/android/java/src/org/chromium/url/Origin.java",
diff --git a/tools/gn2bp/gen_android_bp b/tools/gn2bp/gen_android_bp
index c57524d..58d7cad 100755
--- a/tools/gn2bp/gen_android_bp
+++ b/tools/gn2bp/gen_android_bp
@@ -26,7 +26,6 @@
 # libraries are also mapped to their Android equivalents -- see |builtin_deps|.
 
 import argparse
-import collections
 import json
 import logging as log
 import operator
@@ -96,6 +95,11 @@
 local_include_dirs_denylist = [
 ]
 
+android_include_dirs_denylist = [
+    'third_party/brotli/include/',
+    'third_party/zlib/',
+]
+
 # Name of the module which settings such as compiler flags for all other
 # modules.
 defaults_module = module_prefix + 'defaults'
@@ -140,13 +144,56 @@
     ],
 }
 
+def enable_brotli(module, arch):
+  # Requires crrev/c/4111690
+  if arch is None:
+    module.static_libs.add('libbrotli')
+  else:
+    module.arch[arch].static_libs.add('libbrotli')
+
+def enable_modp_b64(module, arch):
+  # Requires crrev/c/4112845
+  # Requires aosp/2359455
+  # Requires aosp/2359456
+  if not module.is_compiled():
+    return
+  if arch is None:
+    module.static_libs.add('libmodpb64')
+  else:
+    module.arch[arch].static_libs.add('libmodpb64')
+
+def enable_zlib(module, arch):
+  # Requires crrev/c/4109079
+  if arch is None:
+    module.shared_libs.add('libz')
+  else:
+    module.arch[arch].shared_libs.add('libz')
+
 # Android equivalents for third-party libraries that the upstream project
 # depends on.
 builtin_deps = {
+    '//buildtools/third_party/libunwind:libunwind':
+        lambda m, a: None, # disable libunwind
     '//net/tools/root_store_tool:root_store_tool':
-        lambda x: None,
+        lambda m, a: None,
 }
 
+android_deps = {
+    '//third_party/brotli:common':
+        enable_brotli,
+    '//third_party/brotli:dec':
+        enable_brotli,
+    '//third_party/modp_b64:modp_b64':
+        enable_modp_b64,
+    '//third_party/zlib:zlib':
+        enable_zlib,
+}
+
+# Uncomment the following lines to use Android deps rather than their Chromium
+# equivalent:
+#builtin_deps.update(android_deps)
+#local_include_dirs_denylist.extend(android_include_dirs_denylist)
+
 # Name of tethering apex module
 tethering_apex = "com.android.tethering"
 
@@ -680,9 +727,18 @@
 
 
 class BaseActionSanitizer():
-  def __init__(self, target):
+  def __init__(self, target, arch):
     # Just to be on the safe side, create a deep-copy.
     self.target = copy.deepcopy(target)
+    if arch:
+      # Merge arch specific attributes
+      self.target.sources |= arch.sources
+      self.target.inputs |= arch.inputs
+      self.target.outputs |= arch.outputs
+      self.target.script = self.target.script or arch.script
+      self.target.args = self.target.args or arch.args
+      self.target.response_file_contents = \
+        self.target.response_file_contents or arch.response_file_contents
     self.target.args = self._normalize_args()
 
   def get_name(self):
@@ -978,33 +1034,33 @@
     self._set_value_arg('--output', '$(out)')
     super()._sanitize_args()
 
-def get_action_sanitizer(target, type):
+def get_action_sanitizer(target, type, arch):
   if target.script == "//build/write_buildflag_header.py":
-    return WriteBuildFlagHeaderSanitizer(target)
+    return WriteBuildFlagHeaderSanitizer(target, arch)
   elif target.script == "//build/write_build_date_header.py":
-    return WriteBuildDateHeaderSanitizer(target)
+    return WriteBuildDateHeaderSanitizer(target, arch)
   elif target.script == '//base/android/jni_generator/jni_generator.py':
-    return JniGeneratorSanitizer(target)
+    return JniGeneratorSanitizer(target, arch)
   elif target.script == '//base/android/jni_generator/jni_registration_generator.py':
     if type == 'java_genrule':
-      return JavaJniRegistrationGeneratorSanitizer(target)
+      return JavaJniRegistrationGeneratorSanitizer(target, arch)
     else:
-      return JniRegistrationGeneratorSanitizer(target)
+      return JniRegistrationGeneratorSanitizer(target, arch)
   elif target.script == "//build/util/version.py":
-    return VersionSanitizer(target)
+    return VersionSanitizer(target, arch)
   elif target.script == "//build/android/gyp/java_cpp_enum.py":
-    return JavaCppEnumSanitizer(target)
+    return JavaCppEnumSanitizer(target, arch)
   elif target.script == "//net/tools/dafsa/make_dafsa.py":
-    return MakeDafsaSanitizer(target)
+    return MakeDafsaSanitizer(target, arch)
   elif target.script == '//build/android/gyp/java_cpp_features.py':
-    return JavaCppFeatureSanitizer(target)
+    return JavaCppFeatureSanitizer(target, arch)
   elif target.script == '//build/android/gyp/java_cpp_strings.py':
-    return JavaCppStringSanitizer(target)
+    return JavaCppStringSanitizer(target, arch)
   elif target.script == '//build/android/gyp/write_native_libraries_java.py':
-    return WriteNativeLibrariesJavaSanitizer(target)
+    return WriteNativeLibrariesJavaSanitizer(target, arch)
   else:
     # TODO: throw exception here once all script hacks have been converted.
-    return BaseActionSanitizer(target)
+    return BaseActionSanitizer(target, arch)
 
 def create_action_foreach_modules(blueprint, target):
   """ The following assumes that rebase_path exists in the args.
@@ -1039,8 +1095,8 @@
   target.args = new_args
   return create_action_module(blueprint, target, 'cc_genrule')
 
-def create_action_module(blueprint, target, type):
-  sanitizer = get_action_sanitizer(target, type)
+def create_action_module_internal(target, type, arch=None):
+  sanitizer = get_action_sanitizer(target, type, arch)
   sanitizer.sanitize()
 
   module = Module(type, sanitizer.get_name(), target.name)
@@ -1051,9 +1107,85 @@
   module.srcs = sanitizer.get_srcs()
   module.tool_files = sanitizer.get_tool_files()
 
-  blueprint.add_module(module)
   return module
 
+def get_cmd_condition(arch):
+  '''
+  :param arch: archtecture name e.g. android_x86_64, android_arm64
+  :return: condition that can be used in cc_genrule cmd to switch the behavior based on arch
+  '''
+  if arch == "android_x86_64":
+    return "( $$CC_ARCH == 'x86_64' && $$CC_OS == 'android' )"
+  elif arch == "android_x86":
+    return "( $$CC_ARCH == 'x86' && $$CC_OS == 'android' )"
+  elif arch == "android_arm":
+    return "( $$CC_ARCH == 'arm' && $$CC_OS == 'android' )"
+  elif arch == "android_arm64":
+    return "( $$CC_ARCH == 'arm64' && $$CC_OS == 'android' )"
+  elif arch == "host":
+    return "$$CC_OS != 'android'"
+  else:
+    raise Error(f'Unknown architecture type {arch}')
+
+def merge_cmd(modules, genrule_type):
+  '''
+  :param modules: dictionary whose key is arch name and value is module
+  :param genrule_type: cc_genrule or java_genrule
+  :return: merged command or common command if all the archs have the same command.
+  '''
+  commands = list({module.cmd for module in modules.values()})
+  if len(commands) == 1:
+    # If all the archs have the same command, return the command
+    return commands[0]
+
+  if genrule_type != 'cc_genrule':
+    raise Error(f'{genrule_type} can not have different cmd between archs')
+
+  merged_cmd = []
+  for arch, module in modules.items():
+    merged_cmd.append(f'if [[ {get_cmd_condition(arch)} ]];')
+    merged_cmd.append('then')
+    merged_cmd.append(module.cmd + ';')
+    merged_cmd.append('fi;')
+  return NEWLINE.join(merged_cmd)
+
+def merge_modules(modules, genrule_type):
+  '''
+  :param modules: dictionary whose key is arch name and value is module
+  :param genrule_type: cc_genrule or java_genrule
+  :return: merged module of input modules
+  '''
+  merged_module = list(modules.values())[0]
+
+  # Following attributes must be the same between archs
+  for key in ('out', 'genrule_headers', 'srcs', 'tool_files'):
+    if any([getattr(merged_module, key) != getattr(module, key) for module in modules.values()]):
+      raise Error(f'{merged_module.name} has different values for {key} between archs')
+
+  merged_module.cmd = merge_cmd(modules, genrule_type)
+  return merged_module
+
+def create_action_module(blueprint, target, genrule_type):
+  '''
+  Create module for action target and add to the blueprint. If target has arch specific attributes
+  this function merge them and create a single module.
+  :param blueprint:
+  :param target: target which is converted to the module.
+  :param genrule_type: cc_genrule or java_genrule
+  :return: created module
+  '''
+  # TODO: Handle this target correctly, this target generates java_genrule but this target has
+  # different value for cpu-family arg between archs
+  if target.name == '//build/android:native_libraries_gen':
+    module = create_action_module_internal(target, genrule_type, target.arch['android_arm'])
+    blueprint.add_module(module)
+    return module
+
+  modules = {arch_name: create_action_module_internal(target, genrule_type, arch)
+             for arch_name, arch in target.arch.items()}
+  module = merge_modules(modules, genrule_type)
+  blueprint.add_module(module)
+  return module
 
 
 def _get_cflags(cflags, defines):
@@ -1084,6 +1216,10 @@
   module.local_include_dirs.update([gn_utils.label_to_path(d)
                                  for d in include_dirs
                                  if not re.match('^//out/.*', d)])
+  # Remove prohibited include directories
+  module.local_include_dirs = [d for d in module.local_include_dirs
+                               if d not in local_include_dirs_denylist]
+
 
 def create_modules_from_target(blueprint, gn, gn_target_name):
   """Generate module(s) for a given GN target.
@@ -1190,10 +1326,6 @@
       if lib in static_library_allowlist:
         module.add_android_static_lib(android_lib)
 
-    # Remove prohibited include directories
-    module.local_include_dirs = [d for d in module.local_include_dirs
-                                 if d not in local_include_dirs_denylist]
-
   # If the module is a static library, export all the generated headers.
   if module.type == 'cc_library_static':
     module.export_generated_headers = module.generated_headers
@@ -1214,7 +1346,7 @@
     # |builtin_deps| override GN deps with Android-specific ones. See the
     # config in the top of this file.
     if dep_name in builtin_deps:
-      builtin_deps[dep_name](module)
+      builtin_deps[dep_name](module, None)
       continue
 
     dep_module = create_modules_from_target(blueprint, gn, dep_name)
@@ -1267,6 +1399,11 @@
 
   for arch_name, arch in target.arch.items():
     for dep_name in arch.deps:
+      # |builtin_deps| override GN deps with Android-specific ones. See the
+      # config in the top of this file.
+      if dep_name in builtin_deps:
+        builtin_deps[dep_name](module, arch_name)
+        continue
       dep_module = create_modules_from_target(blueprint, gn, dep_name)
       # Arch-specific dependencies currently only include cc_library_static.
       # Revisit this approach once we need to support more target types.
@@ -1281,19 +1418,11 @@
           if module.type not in ["cc_object"]:
             module.target[arch_name].export_generated_headers.update(
               dep_module.genrule_headers)
-      else:
-        raise Error('Unsupported arch-specific dependency %s of target %s with type %s' %
-                    (dep_module.name, target.name, dep_module.type))
-    for dep_name in arch.source_set_deps:
-      dep_module = create_modules_from_target(blueprint, gn, dep_name)
-      if dep_module.type == 'cc_object':
-        if module.type != 'cc_object':
-          # We only want to bubble up cc_objects for modules that are not cc_objects
-          # otherwise they'd be recompiled and that would cause multiple symbol redefinitions.
-          if dep_module.has_input_files():
-            # Only add it as part of srcs if the dep_module has input files otherwise
-            # this would throw an error.
-            module.target[arch_name].srcs.add(":" + dep_module.name)
+      elif dep_module.type == 'cc_object':
+        if dep_module.has_input_files():
+          # Only add it as part of srcs if the dep_module has input files otherwise
+          # this would throw an error.
+          module.target[arch_name].srcs.add(":" + dep_module.name)
       else:
         raise Error('Unsupported arch-specific dependency %s of target %s with type %s' %
                     (dep_module.name, target.name, dep_module.type))
@@ -1478,7 +1607,7 @@
     log.basicConfig(format='%(levelname)s:%(funcName)s:%(message)s', level=log.DEBUG)
 
   targets = args.targets or default_targets
-  gn = gn_utils.GnParser()
+  gn = gn_utils.GnParser(builtin_deps)
   for desc_file in args.desc:
     with open(desc_file) as f:
       desc = json.load(f)
diff --git a/tools/gn2bp/gn_utils.py b/tools/gn2bp/gn_utils.py
index 6cbbd67..9d732e5 100644
--- a/tools/gn2bp/gn_utils.py
+++ b/tools/gn2bp/gn_utils.py
@@ -15,17 +15,11 @@
 # A collection of utilities for extracting build rule information from GN
 # projects.
 
-from __future__ import print_function
-import collections
-import errno
-import filecmp
+import copy
 import json
 import logging as log
 import os
 import re
-import shutil
-import subprocess
-import sys
 
 BUILDFLAGS_TARGET = '//gn:gen_buildflags'
 GEN_VERSION_TARGET = '//src/base:version_gen_h'
@@ -125,6 +119,12 @@
         self.transitive_static_libs_deps = set()
         self.source_set_deps = set()
 
+        # These are valid only for type == 'action'
+        self.inputs = set()
+        self.outputs = set()
+        self.args = []
+        self.script = ''
+        self.response_file_contents = ''
 
     def __init__(self, name, type):
       self.name = name  # e.g. //src/ipc:ipc
@@ -151,9 +151,9 @@
       # These are valid only for type == 'action'
       self.inputs = set()
       self.outputs = set()
-      self.script = None
+      self.script = ''
       self.args = []
-      self.response_file_contents = None
+      self.response_file_contents = ''
 
       # These variables are propagated up when encountering a dependency
       # on a source_set target.
@@ -182,6 +182,9 @@
     def device_supported(self):
       return any([name.startswith('android') for name in self.arch.keys()])
 
+    def is_linker_unit_type(self):
+      return self.type in LINKER_UNIT_TYPES
+
     def __lt__(self, other):
       if isinstance(other, self.__class__):
         return self.name < other.name
@@ -207,6 +210,32 @@
         self.arch[arch].__dict__[key_in_arch].update(
           other.arch[arch].__dict__.get(key_in_arch, []))
 
+    def _finalize_set_attribute(self, key):
+      # Target contains the intersection of arch-dependent properties
+      getattr(self, key)\
+        .update(set.intersection(*[getattr(arch, key) for arch in self.arch.values()]))
+
+      # Deduplicate arch-dependent properties
+      for arch in self.arch.values():
+        getattr(arch, key).difference_update(getattr(self, key))
+
+    def _finalize_non_set_attribute(self, key):
+      # Only when all the arch has the same non empty value, move the value to the target common
+      val = getattr(list(self.arch.values())[0], key)
+      if val and all([val == getattr(arch, key) for arch in self.arch.values()]):
+        setattr(self, key, copy.deepcopy(val))
+        for arch in self.arch.values():
+          getattr(arch, key, None)
+
+    def _finalize_attribute(self, key):
+      val = getattr(self, key)
+      if isinstance(val, set):
+        self._finalize_set_attribute(key)
+      elif isinstance(val, (list, str)):
+        self._finalize_non_set_attribute(key)
+      else:
+        raise TypeError(f'Unsupported type: {type(val)}')
+
     def finalize(self):
       """Move common properties out of arch-dependent subobjects to Target object.
 
@@ -216,25 +245,16 @@
         return
       self.is_finalized = True
 
-      # Target contains the intersection of arch-dependent properties
-      self.sources = set.intersection(*[arch.sources for arch in self.arch.values()])
-      self.cflags = set.intersection(*[arch.cflags for arch in self.arch.values()])
-      self.defines = set.intersection(*[arch.defines for arch in self.arch.values()])
-      self.include_dirs = set.intersection(*[arch.include_dirs for arch in self.arch.values()])
-      self.deps.update(set.intersection(*[arch.deps for arch in self.arch.values()]))
-      self.source_set_deps.update(set.intersection(*[arch.source_set_deps for arch in self.arch.values()]))
+      if len(self.arch) == 0:
+        return
 
-      # Deduplicate arch-dependent properties
-      for arch in self.arch.keys():
-        self.arch[arch].sources -= self.sources
-        self.arch[arch].cflags -= self.cflags
-        self.arch[arch].defines -= self.defines
-        self.arch[arch].include_dirs -= self.include_dirs
-        self.arch[arch].deps -= self.deps
-        self.arch[arch].source_set_deps -= self.source_set_deps
+      for key in ('sources', 'cflags', 'defines', 'include_dirs', 'deps', 'source_set_deps',
+                  'inputs', 'outputs', 'args', 'script', 'response_file_contents'):
+        self._finalize_attribute(key)
 
 
-  def __init__(self):
+  def __init__(self, builtin_deps):
+    self.builtin_deps = builtin_deps
     self.all_targets = {}
     self.linker_units = {}  # Executables, shared or static libraries.
     self.source_sets = {}
@@ -262,7 +282,7 @@
     # Per https://chromium.googlesource.com/chromium/src/build/+/HEAD/android/docs/java_toolchain.md
     # java target names must end in "_java".
     # TODO: There are some other possible variations we might need to support.
-    return type_ == 'group' and re.match('.*_java$', target_name)
+    return type_ == 'group' and target_name.endswith('_java')
 
   def _get_arch(self, toolchain):
     if toolchain == '//build/toolchain/android:android_clang_x86':
@@ -300,15 +320,7 @@
     type_ = desc['type']
     arch = self._get_arch(desc['toolchain'])
 
-    is_java_target = is_java_target or self._is_java_group(type_, target_name)
-
-    # Action modules can differ depending on the target architecture, yet
-    # genrule's do not allow to overload cmd per target OS / arch.  Create a
-    # separate action for every architecture.
-    # Cover both action and action_foreach
-    if type_.startswith('action') and not is_java_target:
-      # Don't meddle with the java actions name
-      target_name += '__' + arch
+    is_java_target |= self._is_java_group(type_, target_name)
 
     target = self.all_targets.get(target_name)
     if target is None:
@@ -320,6 +332,10 @@
     else:
       return target  # Target already processed.
 
+    if target.name in self.builtin_deps:
+      # return early, no need to parse any further as the module is a builtin.
+      return target
+
     target.testonly = desc.get('testonly', False)
 
     proto_target_type, proto_desc = self.get_proto_target_type(gn_desc, gn_target_name)
@@ -338,13 +354,14 @@
     elif target.type == 'source_set':
       self.source_sets[gn_target_name] = target
       target.arch[arch].sources.update(desc.get('sources', []))
-    elif target.type in LINKER_UNIT_TYPES:
+    elif target.is_linker_unit_type():
       self.linker_units[gn_target_name] = target
       target.arch[arch].sources.update(desc.get('sources', []))
     elif (desc.get("script", "") in JAVA_BANNED_SCRIPTS
           or self._is_java_group(target.type, target.name)):
       # java_group identifies the group target generated by the android_library
-      # or java_library template. A java_group must not be added as a dependency, but sources are collected
+      # or java_library template. A java_group must not be added as a
+      # dependency, but sources are collected.
       log.debug('Found java target %s', target.name)
       if target.type == "action":
         # Convert java actions into java_group and keep the inputs for collection.
@@ -352,13 +369,13 @@
       target.type = 'java_group'
     elif target.type in ['action', 'action_foreach']:
       self.actions[gn_target_name] = target
-      target.inputs.update(desc.get('inputs', []))
+      target.arch[arch].inputs.update(desc.get('inputs', []))
       target.arch[arch].sources.update(desc.get('sources', []))
       outs = [re.sub('^//out/.+?/gen/', '', x) for x in desc['outputs']]
-      target.outputs.update(outs)
-      target.script = desc['script']
-      target.args = desc['args']
-      target.response_file_contents = self._get_response_file_contents(desc)
+      target.arch[arch].outputs.update(outs)
+      target.arch[arch].script = desc['script']
+      target.arch[arch].args = desc['args']
+      target.arch[arch].response_file_contents = self._get_response_file_contents(desc)
     elif target.type == 'copy':
       # TODO: copy rules are not currently implemented.
       self.actions[gn_target_name] = target
@@ -391,12 +408,15 @@
       elif dep.type == 'source_set':
         target.arch[arch].source_set_deps.add(dep.name)
         target.arch[arch].source_set_deps.update(dep.arch[arch].source_set_deps)
+        # flatten source_set deps
+        if target.is_linker_unit_type():
+          target.arch[arch].deps.update(target.arch[arch].source_set_deps)
       elif dep.type == 'group':
         target.update(dep, arch)  # Bubble up groups's cflags/ldflags etc.
       elif dep.type in ['action', 'action_foreach', 'copy']:
         if proto_target_type is None:
           target.arch[arch].deps.add(dep.name)
-      elif dep.type in LINKER_UNIT_TYPES:
+      elif dep.is_linker_unit_type():
         target.arch[arch].deps.add(dep.name)
       elif dep.type == 'java_group':
         # Explicitly break dependency chain when a java_group is added.