From 131c958187352d52611256816bd12bd7d413d283 Mon Sep 17 00:00:00 2001 From: kjellander Date: Tue, 30 Aug 2016 04:23:58 -0700 Subject: [PATCH] Desktop capture: Fix GN target and exclude differ* sources on iOS Fix some out-of-sync differences between GYP and GN targets for desktop capture. Remove sources that aren't used on iOS for that platform, to solve linking errors that surfaced when flipping iOS to GN by default. BUG=webrtc:5949 NOTRY=True TBR=sergeyu@chromium.org Review-Url: https://codereview.webrtc.org/2289103002 Cr-Commit-Position: refs/heads/master@{#13971} --- webrtc/modules/desktop_capture/BUILD.gn | 14 +- .../desktop_capture/desktop_capture.gypi | 199 ++++++++++-------- 2 files changed, 115 insertions(+), 98 deletions(-) diff --git a/webrtc/modules/desktop_capture/BUILD.gn b/webrtc/modules/desktop_capture/BUILD.gn index 735b4605d6..61a3de2fe1 100644 --- a/webrtc/modules/desktop_capture/BUILD.gn +++ b/webrtc/modules/desktop_capture/BUILD.gn @@ -38,13 +38,8 @@ source_set("desktop_capture") { "desktop_capture_options.cc", "desktop_capture_options.h", "desktop_capturer.h", - "desktop_capturer.h", "desktop_frame_win.cc", "desktop_frame_win.h", - "differ.cc", - "differ.h", - "differ_block.cc", - "differ_block.h", "mac/desktop_configuration.h", "mac/desktop_configuration.mm", "mac/desktop_configuration_monitor.cc", @@ -129,6 +124,15 @@ source_set("desktop_capture") { ] } + if (!is_ios) { + sources += [ + "differ.cc", + "differ.h", + "differ_block.cc", + "differ_block.h", + ] + } + if (is_mac) { libs = [ "AppKit.framework", diff --git a/webrtc/modules/desktop_capture/desktop_capture.gypi b/webrtc/modules/desktop_capture/desktop_capture.gypi index 024d826d4f..872e705b52 100644 --- a/webrtc/modules/desktop_capture/desktop_capture.gypi +++ b/webrtc/modules/desktop_capture/desktop_capture.gypi @@ -8,10 +8,24 @@ { 'targets': [ + { + 'target_name': 'primitives', + 'type': 'static_library', + 'sources': [ + 'desktop_capture_types.h', + 'desktop_frame.cc', + 'desktop_frame.h', + 'desktop_geometry.cc', + 'desktop_geometry.h', + 'desktop_region.cc', + 'desktop_region.h', + ], + }, { 'target_name': 'desktop_capture', 'type': 'static_library', 'dependencies': [ + ':primitives', '<(webrtc_root)/system_wrappers/system_wrappers.gyp:system_wrappers', '<(webrtc_root)/base/base.gyp:rtc_base', ], @@ -21,93 +35,73 @@ 'cropping_window_capturer.cc', 'cropping_window_capturer.h', 'cropping_window_capturer_win.cc', - "desktop_and_cursor_composer.cc", - "desktop_and_cursor_composer.h", - "desktop_capture_types.h", - "desktop_capturer.h", - "desktop_frame.cc", - "desktop_frame.h", - "desktop_frame_win.cc", - "desktop_frame_win.h", - "desktop_geometry.cc", - "desktop_geometry.h", - "desktop_capture_options.h", - "desktop_capture_options.cc", - "desktop_capturer.h", - "desktop_region.cc", - "desktop_region.h", - "differ.cc", - "differ.h", - "differ_block.cc", - "differ_block.h", - "mac/desktop_configuration.h", - "mac/desktop_configuration.mm", - "mac/desktop_configuration_monitor.h", - "mac/desktop_configuration_monitor.cc", - "mac/full_screen_chrome_window_detector.cc", - "mac/full_screen_chrome_window_detector.h", - "mac/scoped_pixel_buffer_object.cc", - "mac/scoped_pixel_buffer_object.h", - "mac/window_list_utils.cc", - "mac/window_list_utils.h", - "mouse_cursor.cc", - "mouse_cursor.h", - "mouse_cursor_monitor.h", - "mouse_cursor_monitor_mac.mm", - "mouse_cursor_monitor_win.cc", - "mouse_cursor_monitor_x11.cc", - "screen_capture_frame_queue.h", - "screen_capturer.h", - "screen_capturer_helper.cc", - "screen_capturer_helper.h", - "screen_capturer_mac.mm", - "screen_capturer_win.cc", - "screen_capturer_x11.cc", - "shared_desktop_frame.cc", - "shared_desktop_frame.h", - "shared_memory.cc", - "shared_memory.h", - "win/cursor.cc", - "win/cursor.h", - "win/d3d_device.cc", - "win/d3d_device.h", - "win/desktop.cc", - "win/desktop.h", - "win/dxgi_adapter_duplicator.cc", - "win/dxgi_adapter_duplicator.h", - "win/dxgi_duplicator_controller.cc", - "win/dxgi_duplicator_controller.h", - "win/dxgi_output_duplicator.cc", - "win/dxgi_output_duplicator.h", - "win/dxgi_texture.cc", - "win/dxgi_texture.h", - "win/dxgi_texture_mapping.cc", - "win/dxgi_texture_mapping.h", - "win/dxgi_texture_staging.cc", - "win/dxgi_texture_staging.h", - "win/scoped_gdi_object.h", - "win/scoped_thread_desktop.cc", - "win/scoped_thread_desktop.h", - "win/screen_capturer_win_directx.cc", - "win/screen_capturer_win_directx.h", - "win/screen_capturer_win_gdi.cc", - "win/screen_capturer_win_gdi.h", - "win/screen_capturer_win_magnifier.cc", - "win/screen_capturer_win_magnifier.h", - "win/screen_capture_utils.cc", - "win/screen_capture_utils.h", - "win/window_capture_utils.cc", - "win/window_capture_utils.h", - "window_capturer.h", - "window_capturer_mac.mm", - "window_capturer_win.cc", - "window_capturer_x11.cc", - "x11/shared_x_display.h", - "x11/shared_x_display.cc", - "x11/x_error_trap.cc", - "x11/x_error_trap.h", - "x11/x_server_pixel_buffer.cc", - "x11/x_server_pixel_buffer.h", + 'desktop_and_cursor_composer.cc', + 'desktop_and_cursor_composer.h', + 'desktop_capture_options.h', + 'desktop_capture_options.cc', + 'desktop_capturer.h', + 'desktop_frame_win.cc', + 'desktop_frame_win.h', + 'mac/desktop_configuration.h', + 'mac/desktop_configuration.mm', + 'mac/desktop_configuration_monitor.h', + 'mac/desktop_configuration_monitor.cc', + 'mac/full_screen_chrome_window_detector.cc', + 'mac/full_screen_chrome_window_detector.h', + 'mac/scoped_pixel_buffer_object.cc', + 'mac/scoped_pixel_buffer_object.h', + 'mac/window_list_utils.cc', + 'mac/window_list_utils.h', + 'mouse_cursor.cc', + 'mouse_cursor.h', + 'mouse_cursor_monitor.h', + 'mouse_cursor_monitor_mac.mm', + 'mouse_cursor_monitor_win.cc', + 'screen_capture_frame_queue.h', + 'screen_capturer.h', + 'screen_capturer_helper.cc', + 'screen_capturer_helper.h', + 'screen_capturer_mac.mm', + 'screen_capturer_win.cc', + 'shared_desktop_frame.cc', + 'shared_desktop_frame.h', + 'shared_memory.cc', + 'shared_memory.h', + 'win/cursor.cc', + 'win/cursor.h', + 'win/d3d_device.cc', + 'win/d3d_device.h', + 'win/desktop.cc', + 'win/desktop.h', + 'win/dxgi_adapter_duplicator.cc', + 'win/dxgi_adapter_duplicator.h', + 'win/dxgi_duplicator_controller.cc', + 'win/dxgi_duplicator_controller.h', + 'win/dxgi_output_duplicator.cc', + 'win/dxgi_output_duplicator.h', + 'win/dxgi_texture.cc', + 'win/dxgi_texture.h', + 'win/dxgi_texture_mapping.cc', + 'win/dxgi_texture_mapping.h', + 'win/dxgi_texture_staging.cc', + 'win/dxgi_texture_staging.h', + 'win/scoped_gdi_object.h', + 'win/scoped_thread_desktop.cc', + 'win/scoped_thread_desktop.h', + 'win/screen_capture_utils.cc', + 'win/screen_capture_utils.h', + 'win/screen_capturer_win_directx.cc', + 'win/screen_capturer_win_directx.h', + 'win/screen_capturer_win_gdi.cc', + 'win/screen_capturer_win_gdi.h', + 'win/screen_capturer_win_magnifier.cc', + 'win/screen_capturer_win_magnifier.h', + 'win/window_capture_utils.cc', + 'win/window_capture_utils.h', + 'window_capturer.h', + 'window_capturer_mac.mm', + 'window_capturer_win.cc', + ], 'conditions': [ ['OS!="ios" and (target_arch=="ia32" or target_arch=="x64")', { @@ -115,7 +109,18 @@ 'desktop_capture_differ_sse2', ], }], - ['use_x11 == 1', { + ['use_x11==1', { + 'sources': [ + 'mouse_cursor_monitor_x11.cc', + 'screen_capturer_x11.cc', + 'window_capturer_x11.cc', + 'x11/shared_x_display.h', + 'x11/shared_x_display.cc', + 'x11/x_error_trap.cc', + 'x11/x_error_trap.h', + 'x11/x_server_pixel_buffer.cc', + 'x11/x_server_pixel_buffer.h', + ], 'link_settings': { 'libraries': [ '-lX11', @@ -129,9 +134,17 @@ }], ['OS!="win" and OS!="mac" and use_x11==0', { 'sources': [ - "mouse_cursor_monitor_null.cc", - "screen_capturer_null.cc", - "window_capturer_null.cc", + 'mouse_cursor_monitor_null.cc', + 'screen_capturer_null.cc', + 'window_capturer_null.cc', + ], + }], + ['OS!="ios" ', { + 'sources': [ + 'differ.cc', + 'differ.h', + 'differ_block.cc', + 'differ_block.h', ], }], ['OS=="mac"', { @@ -169,8 +182,8 @@ 'target_name': 'desktop_capture_differ_sse2', 'type': 'static_library', 'sources': [ - "differ_block_sse2.cc", - "differ_block_sse2.h", + 'differ_block_sse2.cc', + 'differ_block_sse2.h', ], 'conditions': [ ['os_posix==1', {