| # Copyright (c) 2013 The WebRTC project authors. All Rights Reserved. |
| # |
| # Use of this source code is governed by a BSD-style license |
| # that can be found in the LICENSE file in the root of the source |
| # tree. An additional intellectual property rights grant can be found |
| # in the file PATENTS. All contributing project authors may |
| # be found in the AUTHORS file in the root of the source tree. |
| |
| { |
| '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', |
| ], |
| 'sources': [ |
| 'cropped_desktop_frame.cc', |
| 'cropped_desktop_frame.h', |
| '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_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")', { |
| 'dependencies': [ |
| 'desktop_capture_differ_sse2', |
| ], |
| }], |
| ['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', |
| '-lXcomposite', |
| '-lXdamage', |
| '-lXext', |
| '-lXfixes', |
| '-lXrender', |
| ], |
| }, |
| }], |
| ['OS!="win" and OS!="mac" and use_x11==0', { |
| 'sources': [ |
| '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', |
| 'screen_capturer_differ_wrapper.cc', |
| 'screen_capturer_differ_wrapper.h', |
| ], |
| }], |
| ['OS=="mac"', { |
| 'link_settings': { |
| 'libraries': [ |
| '$(SDKROOT)/System/Library/Frameworks/AppKit.framework', |
| '$(SDKROOT)/System/Library/Frameworks/IOKit.framework', |
| '$(SDKROOT)/System/Library/Frameworks/OpenGL.framework', |
| ], |
| }, |
| }], |
| ], |
| 'all_dependent_settings': { |
| 'conditions': [ |
| ['OS=="win"', { |
| 'msvs_settings': { |
| 'VCLinkerTool': { |
| 'AdditionalDependencies': [ |
| 'd3d11.lib', |
| 'dxgi.lib', |
| ], |
| }, |
| }, |
| }], |
| ], |
| }, |
| }, |
| ], # targets |
| 'conditions': [ |
| ['OS!="ios" and (target_arch=="ia32" or target_arch=="x64")', { |
| 'targets': [ |
| { |
| # Have to be compiled as a separate target because it needs to be |
| # compiled with SSE2 enabled. |
| 'target_name': 'desktop_capture_differ_sse2', |
| 'type': 'static_library', |
| 'sources': [ |
| 'differ_vector_sse2.cc', |
| 'differ_vector_sse2.h', |
| ], |
| 'conditions': [ |
| ['os_posix==1', { |
| 'cflags': [ '-msse2', ], |
| 'xcode_settings': { |
| 'OTHER_CFLAGS': [ '-msse2', ], |
| }, |
| }], |
| ], |
| }, |
| ], # targets |
| }], |
| ], |
| } |