| Index: webrtc/modules/desktop_capture/BUILD.gn | 
| diff --git a/webrtc/modules/desktop_capture/BUILD.gn b/webrtc/modules/desktop_capture/BUILD.gn | 
| index 59c317942d2d2fd44a088343d001347bb8085a40..b0367ee142a9d1d613bc02d46f8069c40713a0bd 100644 | 
| --- a/webrtc/modules/desktop_capture/BUILD.gn | 
| +++ b/webrtc/modules/desktop_capture/BUILD.gn | 
| @@ -163,7 +163,45 @@ if (rtc_include_tests) { | 
| } | 
| } | 
|  | 
| -rtc_static_library("desktop_capture") { | 
| +rtc_source_set("desktop_capture") { | 
| +  if (is_mac) { | 
| +    public_deps = [ | 
| +      ":desktop_capture_objc", | 
| +    ] | 
| +  } else { | 
| +    public_deps = [ | 
| +      ":desktop_capture_generic", | 
| +    ] | 
| +  } | 
| +} | 
| + | 
| +if (is_mac) { | 
| +  rtc_source_set("desktop_capture_objc") { | 
| +    visibility = [ ":*" ] | 
| +    sources = [ | 
| +      "mac/desktop_configuration.mm", | 
| +      "mouse_cursor_monitor_mac.mm", | 
| +      "screen_capturer_mac.mm", | 
| +      "window_capturer_mac.mm", | 
| +    ] | 
| +    public_deps = [ | 
| +      ":desktop_capture_generic", | 
| +    ] | 
| +    deps = [ | 
| +      ":primitives", | 
| +      "../../rtc_base:rtc_base", | 
| +      "../../rtc_base:rtc_base_approved", | 
| +    ] | 
| +    libs = [ | 
| +      "AppKit.framework", | 
| +      "IOKit.framework", | 
| +      "OpenGL.framework", | 
| +    ] | 
| +  } | 
| +} | 
| + | 
| +rtc_static_library("desktop_capture_generic") { | 
| +  visibility = [ ":*" ] | 
| sources = [ | 
| "blank_detector_desktop_capturer_wrapper.cc", | 
| "blank_detector_desktop_capturer_wrapper.h", | 
| @@ -189,7 +227,6 @@ rtc_static_library("desktop_capture") { | 
| "fallback_desktop_capturer_wrapper.cc", | 
| "fallback_desktop_capturer_wrapper.h", | 
| "mac/desktop_configuration.h", | 
| -    "mac/desktop_configuration.mm", | 
| "mac/desktop_configuration_monitor.cc", | 
| "mac/desktop_configuration_monitor.h", | 
| "mac/full_screen_chrome_window_detector.cc", | 
| @@ -201,7 +238,6 @@ rtc_static_library("desktop_capture") { | 
| "mouse_cursor.cc", | 
| "mouse_cursor.h", | 
| "mouse_cursor_monitor.h", | 
| -    "mouse_cursor_monitor_mac.mm", | 
| "mouse_cursor_monitor_win.cc", | 
| "resolution_change_detector.cc", | 
| "resolution_change_detector.h", | 
| @@ -210,7 +246,6 @@ rtc_static_library("desktop_capture") { | 
| "screen_capture_frame_queue.h", | 
| "screen_capturer_helper.cc", | 
| "screen_capturer_helper.h", | 
| -    "screen_capturer_mac.mm", | 
| "screen_capturer_win.cc", | 
| "win/cursor.cc", | 
| "win/cursor.h", | 
| @@ -249,7 +284,6 @@ rtc_static_library("desktop_capture") { | 
| "win/screen_capturer_win_magnifier.h", | 
| "win/window_capture_utils.cc", | 
| "win/window_capture_utils.h", | 
| -    "window_capturer_mac.mm", | 
| "window_capturer_win.cc", | 
| ] | 
|  | 
| @@ -276,14 +310,6 @@ rtc_static_library("desktop_capture") { | 
| ] | 
| } | 
|  | 
| -  if (is_mac) { | 
| -    libs = [ | 
| -      "AppKit.framework", | 
| -      "IOKit.framework", | 
| -      "OpenGL.framework", | 
| -    ] | 
| -  } | 
| - | 
| if (is_win) { | 
| libs = [ | 
| "d3d11.lib", | 
|  |