| Index: webrtc/base/BUILD.gn
 | 
| diff --git a/webrtc/base/BUILD.gn b/webrtc/base/BUILD.gn
 | 
| index 411e84863dd71382e4556afcd1895bde8092c8f7..6832650546cfb39598e3f55da3409c14f2b56117 100644
 | 
| --- a/webrtc/base/BUILD.gn
 | 
| +++ b/webrtc/base/BUILD.gn
 | 
| @@ -132,6 +132,7 @@ static_library("rtc_base_approved") {
 | 
|      "md5.h",
 | 
|      "md5digest.cc",
 | 
|      "md5digest.h",
 | 
| +    "mod_ops.h",
 | 
|      "optional.h",
 | 
|      "platform_file.cc",
 | 
|      "platform_file.h",
 | 
| @@ -142,6 +143,8 @@ static_library("rtc_base_approved") {
 | 
|      "random.h",
 | 
|      "rate_statistics.cc",
 | 
|      "rate_statistics.h",
 | 
| +    "ratetracker.cc",
 | 
| +    "ratetracker.h",
 | 
|      "refcount.h",
 | 
|      "safe_conversions.h",
 | 
|      "safe_conversions_impl.h",
 | 
| @@ -184,7 +187,9 @@ static_library("rtc_base") {
 | 
|    cflags = []
 | 
|    cflags_cc = []
 | 
|    libs = []
 | 
| -  deps = []
 | 
| +  deps = [
 | 
| +    "..:webrtc_common",
 | 
| +  ]
 | 
|    public_deps = [
 | 
|      ":rtc_base_approved",
 | 
|    ]
 | 
| @@ -257,7 +262,6 @@ static_library("rtc_base") {
 | 
|      "ipaddress.cc",
 | 
|      "ipaddress.h",
 | 
|      "linked_ptr.h",
 | 
| -    "mathutils.h",
 | 
|      "messagedigest.cc",
 | 
|      "messagedigest.h",
 | 
|      "messagehandler.cc",
 | 
| @@ -271,6 +275,15 @@ static_library("rtc_base") {
 | 
|      "networkmonitor.cc",
 | 
|      "networkmonitor.h",
 | 
|      "nullsocketserver.h",
 | 
| +    "openssl.h",
 | 
| +    "openssladapter.cc",
 | 
| +    "openssladapter.h",
 | 
| +    "openssldigest.cc",
 | 
| +    "openssldigest.h",
 | 
| +    "opensslidentity.cc",
 | 
| +    "opensslidentity.h",
 | 
| +    "opensslstreamadapter.cc",
 | 
| +    "opensslstreamadapter.h",
 | 
|      "pathutils.cc",
 | 
|      "pathutils.h",
 | 
|      "physicalsocketserver.cc",
 | 
| @@ -281,12 +294,8 @@ static_library("rtc_base") {
 | 
|      "proxyinfo.h",
 | 
|      "ratelimiter.cc",
 | 
|      "ratelimiter.h",
 | 
| -    "ratetracker.cc",
 | 
| -    "ratetracker.h",
 | 
|      "rtccertificate.cc",
 | 
|      "rtccertificate.h",
 | 
| -    "scoped_autorelease_pool.h",
 | 
| -    "scoped_autorelease_pool.mm",
 | 
|      "sha1.cc",
 | 
|      "sha1.h",
 | 
|      "sha1digest.cc",
 | 
| @@ -339,22 +348,7 @@ static_library("rtc_base") {
 | 
|      "worker.h",
 | 
|    ]
 | 
|  
 | 
| -  if (is_posix) {
 | 
| -    sources += [
 | 
| -      "ifaddrs-android.h",
 | 
| -      "ifaddrs_converter.cc",
 | 
| -      "unixfilesystem.cc",
 | 
| -      "unixfilesystem.h",
 | 
| -    ]
 | 
| -  }
 | 
| -
 | 
|    if (build_with_chromium) {
 | 
| -    deps += [ "..:webrtc_common" ]
 | 
| -
 | 
| -    if (is_mac) {
 | 
| -      sources += [ "macifaddrs_converter.cc" ]
 | 
| -    }
 | 
| -
 | 
|      if (is_win) {
 | 
|        sources += [ "../../webrtc_overrides/webrtc/base/win32socketinit.cc" ]
 | 
|      }
 | 
| @@ -370,12 +364,8 @@ static_library("rtc_base") {
 | 
|        "bandwidthsmoother.cc",
 | 
|        "bandwidthsmoother.h",
 | 
|        "bind.h",
 | 
| -      "bind.h.pump",
 | 
|        "callback.h",
 | 
| -      "callback.h.pump",
 | 
|        "fileutils_mock.h",
 | 
| -      "genericslot.h",
 | 
| -      "genericslot.h.pump",
 | 
|        "httpserver.cc",
 | 
|        "httpserver.h",
 | 
|        "json.cc",
 | 
| @@ -403,6 +393,7 @@ static_library("rtc_base") {
 | 
|        "sec_buffer.h",
 | 
|        "sslconfig.h",
 | 
|        "sslroots.h",
 | 
| +      "testbase64.h",
 | 
|        "testclient.cc",
 | 
|        "testclient.h",
 | 
|        "transformadapter.cc",
 | 
| @@ -416,7 +407,16 @@ static_library("rtc_base") {
 | 
|        "windowpickerfactory.h",
 | 
|      ]
 | 
|  
 | 
| -    deps += [ "..:webrtc_common" ]
 | 
| +    if (is_linux) {
 | 
| +      sources += [
 | 
| +        "dbus.cc",
 | 
| +        "dbus.h",
 | 
| +        "libdbusglibsymboltable.cc",
 | 
| +        "libdbusglibsymboltable.h",
 | 
| +        "linuxfdwalk.c",
 | 
| +        "linuxfdwalk.h",
 | 
| +      ]
 | 
| +    }
 | 
|  
 | 
|      if (is_posix) {
 | 
|        sources += [
 | 
| @@ -429,17 +429,6 @@ static_library("rtc_base") {
 | 
|        ]
 | 
|      }
 | 
|  
 | 
| -    if (is_linux) {
 | 
| -      sources += [
 | 
| -        "dbus.cc",
 | 
| -        "dbus.h",
 | 
| -        "libdbusglibsymboltable.cc",
 | 
| -        "libdbusglibsymboltable.h",
 | 
| -        "linuxfdwalk.c",
 | 
| -        "linuxfdwalk.h",
 | 
| -      ]
 | 
| -    }
 | 
| -
 | 
|      if (is_mac) {
 | 
|        sources += [
 | 
|          "macasyncsocket.cc",
 | 
| @@ -485,23 +474,10 @@ static_library("rtc_base") {
 | 
|      cflags_cc += [ "-Wno-non-virtual-dtor" ]
 | 
|    }
 | 
|  
 | 
| -  if (use_openssl) {
 | 
| -    if (rtc_build_ssl) {
 | 
| -      deps += [ "//third_party/boringssl" ]
 | 
| -    } else {
 | 
| -      configs += [ "external_ssl_library" ]
 | 
| -    }
 | 
| -    sources += [
 | 
| -      "openssl.h",
 | 
| -      "openssladapter.cc",
 | 
| -      "openssladapter.h",
 | 
| -      "openssldigest.cc",
 | 
| -      "openssldigest.h",
 | 
| -      "opensslidentity.cc",
 | 
| -      "opensslidentity.h",
 | 
| -      "opensslstreamadapter.cc",
 | 
| -      "opensslstreamadapter.h",
 | 
| -    ]
 | 
| +  if (rtc_build_ssl) {
 | 
| +    deps += [ "//third_party/boringssl" ]
 | 
| +  } else {
 | 
| +    configs += [ "external_ssl_library" ]
 | 
|    }
 | 
|  
 | 
|    if (is_android) {
 | 
| @@ -516,14 +492,15 @@ static_library("rtc_base") {
 | 
|      ]
 | 
|    }
 | 
|  
 | 
| -  if (is_ios) {
 | 
| -    all_dependent_configs = [ ":ios_config" ]
 | 
| -
 | 
| +  if (is_ios || is_mac) {
 | 
|      sources += [
 | 
|        "maccocoathreadhelper.h",
 | 
|        "maccocoathreadhelper.mm",
 | 
|        "macconversion.cc",
 | 
|        "macconversion.h",
 | 
| +      "macifaddrs_converter.cc",
 | 
| +      "scoped_autorelease_pool.h",
 | 
| +      "scoped_autorelease_pool.mm",
 | 
|      ]
 | 
|    }
 | 
|  
 | 
| @@ -551,10 +528,6 @@ static_library("rtc_base") {
 | 
|  
 | 
|    if (is_mac) {
 | 
|      sources += [
 | 
| -      "maccocoathreadhelper.h",
 | 
| -      "maccocoathreadhelper.mm",
 | 
| -      "macconversion.cc",
 | 
| -      "macconversion.h",
 | 
|        "macutils.cc",
 | 
|        "macutils.h",
 | 
|      ]
 | 
| @@ -598,11 +571,19 @@ static_library("rtc_base") {
 | 
|      defines += [ "_CRT_NONSTDC_NO_DEPRECATE" ]
 | 
|    }
 | 
|  
 | 
| -  if (is_posix && is_debug) {
 | 
| -    # The Chromium build/common.gypi defines this for all posix
 | 
| -    # _except_ for ios & mac.  We want it there as well, e.g.
 | 
| -    # because ASSERT and friends trigger off of it.
 | 
| -    defines += [ "_DEBUG" ]
 | 
| +  if (is_posix) {
 | 
| +    sources += [
 | 
| +      "ifaddrs_converter.cc",
 | 
| +      "ifaddrs_converter.h",
 | 
| +      "unixfilesystem.cc",
 | 
| +      "unixfilesystem.h",
 | 
| +    ]
 | 
| +    if (is_debug) {
 | 
| +      # The Chromium build/common.gypi defines this for all posix
 | 
| +      # _except_ for ios & mac.  We want it there as well, e.g.
 | 
| +      # because ASSERT and friends trigger off of it.
 | 
| +      defines += [ "_DEBUG" ]
 | 
| +    }
 | 
|    }
 | 
|  
 | 
|    if (is_ios || (is_mac && current_cpu != "x86")) {
 | 
| @@ -624,6 +605,8 @@ static_library("rtc_base") {
 | 
|  }
 | 
|  
 | 
|  if (is_ios) {
 | 
| +  all_dependent_configs = [ ":ios_config" ]
 | 
| +
 | 
|    source_set("rtc_base_objc") {
 | 
|      deps = [
 | 
|        ":rtc_base",
 | 
| 
 |