| Index: webrtc/rtc_base/BUILD.gn | 
| diff --git a/webrtc/rtc_base/BUILD.gn b/webrtc/rtc_base/BUILD.gn | 
| index 03e8ea608a78c6420eca399840014234c45461e5..743229302b4d7694752ac2f43c1f07f275e668fc 100644 | 
| --- a/webrtc/rtc_base/BUILD.gn | 
| +++ b/webrtc/rtc_base/BUILD.gn | 
| @@ -429,7 +429,28 @@ | 
| } | 
| } | 
|  | 
| -rtc_static_library("rtc_base") { | 
| +rtc_source_set("rtc_base") { | 
| +  public_deps = [ | 
| +    ":rtc_base_generic", | 
| +  ] | 
| +  if (is_ios || is_mac) { | 
| +    public_deps += [ ":rtc_base_objc" ] | 
| +  } | 
| +} | 
| + | 
| +if (is_ios || is_mac) { | 
| +  rtc_source_set("rtc_base_objc") { | 
| +    sources = [ | 
| +      "thread_darwin.mm", | 
| +    ] | 
| +    deps = [ | 
| +      ":rtc_base_generic", | 
| +    ] | 
| +    visibility = [ ":rtc_base" ] | 
| +  } | 
| +} | 
| + | 
| +rtc_source_set("rtc_base_generic") { | 
| cflags = [] | 
| cflags_cc = [] | 
| libs = [] | 
| @@ -538,6 +559,11 @@ | 
| "thread.h", | 
| ] | 
|  | 
| +  visibility = [ | 
| +    ":rtc_base", | 
| +    ":rtc_base_objc", | 
| +  ] | 
| + | 
| # TODO(henrike): issue 3307, make rtc_base build with the Chromium default | 
| # compiler settings. | 
| suppressed_configs += [ "//build/config/compiler:chromium_code" ] | 
| @@ -597,10 +623,7 @@ | 
| } | 
|  | 
| if (is_ios || is_mac) { | 
| -    sources += [ | 
| -      "macifaddrs_converter.cc", | 
| -      "thread_darwin.mm", | 
| -    ] | 
| +    sources += [ "macifaddrs_converter.cc" ] | 
| } | 
|  | 
| if (use_x11) { | 
|  |