sergeyu@chromium.org | ea2ea7b | 2013-04-17 18:21:42 +0000 | [diff] [blame] | 1 | # Copyright (c) 2013 The WebRTC project authors. All Rights Reserved. |
| 2 | # |
| 3 | # Use of this source code is governed by a BSD-style license |
| 4 | # that can be found in the LICENSE file in the root of the source |
| 5 | # tree. An additional intellectual property rights grant can be found |
| 6 | # in the file PATENTS. All contributing project authors may |
| 7 | # be found in the AUTHORS file in the root of the source tree. |
| 8 | |
| 9 | { |
sergeyu@chromium.org | 6c82a7e | 2013-06-04 18:51:23 +0000 | [diff] [blame] | 10 | 'targets': [ |
| 11 | { |
| 12 | 'target_name': 'desktop_capture', |
| 13 | 'type': 'static_library', |
| 14 | 'dependencies': [ |
| 15 | '<(webrtc_root)/system_wrappers/source/system_wrappers.gyp:system_wrappers', |
| 16 | ], |
| 17 | 'sources': [ |
sergeyu@chromium.org | ba6d56c | 2013-10-16 02:48:41 +0000 | [diff] [blame^] | 18 | "desktop_and_cursor_composer.cc", |
| 19 | "desktop_and_cursor_composer.h", |
sergeyu@chromium.org | af54d4b | 2013-10-16 02:42:38 +0000 | [diff] [blame] | 20 | "desktop_capture_types.h", |
sergeyu@chromium.org | 6c82a7e | 2013-06-04 18:51:23 +0000 | [diff] [blame] | 21 | "desktop_capturer.h", |
| 22 | "desktop_frame.cc", |
| 23 | "desktop_frame.h", |
| 24 | "desktop_frame_win.cc", |
| 25 | "desktop_frame_win.h", |
| 26 | "desktop_geometry.cc", |
| 27 | "desktop_geometry.h", |
sergeyu@chromium.org | 91685dc | 2013-10-12 22:40:05 +0000 | [diff] [blame] | 28 | "desktop_capture_options.h", |
| 29 | "desktop_capture_options.cc", |
| 30 | "desktop_capturer.h", |
sergeyu@chromium.org | 6c82a7e | 2013-06-04 18:51:23 +0000 | [diff] [blame] | 31 | "desktop_region.cc", |
| 32 | "desktop_region.h", |
| 33 | "differ.cc", |
| 34 | "differ.h", |
| 35 | "differ_block.cc", |
| 36 | "differ_block.h", |
| 37 | "mac/desktop_configuration.h", |
| 38 | "mac/desktop_configuration.mm", |
| 39 | "mac/scoped_pixel_buffer_object.cc", |
| 40 | "mac/scoped_pixel_buffer_object.h", |
sergeyu@chromium.org | af54d4b | 2013-10-16 02:42:38 +0000 | [diff] [blame] | 41 | "mouse_cursor.cc", |
| 42 | "mouse_cursor.h", |
| 43 | "mouse_cursor_monitor.h", |
| 44 | "mouse_cursor_monitor_mac.mm", |
| 45 | "mouse_cursor_monitor_win.cc", |
| 46 | "mouse_cursor_monitor_x11.cc", |
sergeyu@chromium.org | 6c82a7e | 2013-06-04 18:51:23 +0000 | [diff] [blame] | 47 | "mouse_cursor_shape.h", |
| 48 | "screen_capture_frame_queue.cc", |
| 49 | "screen_capture_frame_queue.h", |
sergeyu@chromium.org | 91685dc | 2013-10-12 22:40:05 +0000 | [diff] [blame] | 50 | "screen_capturer.cc", |
sergeyu@chromium.org | 6c82a7e | 2013-06-04 18:51:23 +0000 | [diff] [blame] | 51 | "screen_capturer.h", |
sergeyu@chromium.org | 6c82a7e | 2013-06-04 18:51:23 +0000 | [diff] [blame] | 52 | "screen_capturer_helper.cc", |
| 53 | "screen_capturer_helper.h", |
| 54 | "screen_capturer_mac.mm", |
| 55 | "screen_capturer_win.cc", |
| 56 | "screen_capturer_x11.cc", |
| 57 | "shared_desktop_frame.cc", |
| 58 | "shared_desktop_frame.h", |
| 59 | "shared_memory.cc", |
| 60 | "shared_memory.h", |
alexeypa@chromium.org | e8c9ecd | 2013-06-10 22:29:17 +0000 | [diff] [blame] | 61 | "win/cursor.cc", |
| 62 | "win/cursor.h", |
sergeyu@chromium.org | 6c82a7e | 2013-06-04 18:51:23 +0000 | [diff] [blame] | 63 | "win/desktop.cc", |
| 64 | "win/desktop.h", |
alexeypa@chromium.org | e8c9ecd | 2013-06-10 22:29:17 +0000 | [diff] [blame] | 65 | "win/scoped_gdi_object.h", |
sergeyu@chromium.org | 6c82a7e | 2013-06-04 18:51:23 +0000 | [diff] [blame] | 66 | "win/scoped_thread_desktop.cc", |
| 67 | "win/scoped_thread_desktop.h", |
sergeyu@chromium.org | 91685dc | 2013-10-12 22:40:05 +0000 | [diff] [blame] | 68 | "window_capturer.cc", |
sergeyu@chromium.org | 6c82a7e | 2013-06-04 18:51:23 +0000 | [diff] [blame] | 69 | "window_capturer.h", |
sergeyu@chromium.org | 6c82a7e | 2013-06-04 18:51:23 +0000 | [diff] [blame] | 70 | "window_capturer_mac.cc", |
| 71 | "window_capturer_win.cc", |
sergeyu@chromium.org | e562e02 | 2013-08-23 18:22:12 +0000 | [diff] [blame] | 72 | "window_capturer_x11.cc", |
sergeyu@chromium.org | 91685dc | 2013-10-12 22:40:05 +0000 | [diff] [blame] | 73 | "x11/shared_x_display.h", |
| 74 | "x11/shared_x_display.cc", |
sergeyu@chromium.org | e562e02 | 2013-08-23 18:22:12 +0000 | [diff] [blame] | 75 | "x11/x_error_trap.cc", |
| 76 | "x11/x_error_trap.h", |
sergeyu@chromium.org | 6c82a7e | 2013-06-04 18:51:23 +0000 | [diff] [blame] | 77 | "x11/x_server_pixel_buffer.cc", |
| 78 | "x11/x_server_pixel_buffer.h", |
| 79 | ], |
| 80 | 'conditions': [ |
| 81 | ['OS!="ios" and (target_arch=="ia32" or target_arch=="x64")', { |
| 82 | 'dependencies': [ |
| 83 | 'desktop_capture_differ_sse2', |
| 84 | ], |
| 85 | }], |
| 86 | ['use_x11 == 1', { |
| 87 | 'link_settings': { |
| 88 | 'libraries': [ |
| 89 | '-lX11', |
sergeyu@chromium.org | e562e02 | 2013-08-23 18:22:12 +0000 | [diff] [blame] | 90 | '-lXcomposite', |
sergeyu@chromium.org | 6c82a7e | 2013-06-04 18:51:23 +0000 | [diff] [blame] | 91 | '-lXdamage', |
| 92 | '-lXext', |
| 93 | '-lXfixes', |
sergeyu@chromium.org | e562e02 | 2013-08-23 18:22:12 +0000 | [diff] [blame] | 94 | '-lXrender', |
sergeyu@chromium.org | 6c82a7e | 2013-06-04 18:51:23 +0000 | [diff] [blame] | 95 | ], |
| 96 | }, |
| 97 | }], |
| 98 | ['OS!="win" and OS!="mac" and use_x11==0', { |
| 99 | 'sources': [ |
sergeyu@chromium.org | af54d4b | 2013-10-16 02:42:38 +0000 | [diff] [blame] | 100 | "mouse_cursor_monitor_null.cc", |
sergeyu@chromium.org | 6c82a7e | 2013-06-04 18:51:23 +0000 | [diff] [blame] | 101 | "screen_capturer_null.cc", |
sergeyu@chromium.org | e562e02 | 2013-08-23 18:22:12 +0000 | [diff] [blame] | 102 | "window_capturer_null.cc", |
sergeyu@chromium.org | 6c82a7e | 2013-06-04 18:51:23 +0000 | [diff] [blame] | 103 | ], |
| 104 | }], |
| 105 | ['OS=="mac"', { |
| 106 | 'link_settings': { |
| 107 | 'libraries': [ |
| 108 | '$(SDKROOT)/System/Library/Frameworks/AppKit.framework', |
| 109 | '$(SDKROOT)/System/Library/Frameworks/IOKit.framework', |
| 110 | '$(SDKROOT)/System/Library/Frameworks/OpenGL.framework', |
| 111 | ], |
| 112 | }, |
| 113 | }], |
| 114 | ], |
| 115 | }, |
| 116 | ], # targets |
sergeyu@chromium.org | e032f9f | 2013-05-19 07:02:48 +0000 | [diff] [blame] | 117 | 'conditions': [ |
sergeyu@chromium.org | 6c82a7e | 2013-06-04 18:51:23 +0000 | [diff] [blame] | 118 | ['OS!="ios" and (target_arch=="ia32" or target_arch=="x64")', { |
sergeyu@chromium.org | e032f9f | 2013-05-19 07:02:48 +0000 | [diff] [blame] | 119 | 'targets': [ |
| 120 | { |
sergeyu@chromium.org | 6c82a7e | 2013-06-04 18:51:23 +0000 | [diff] [blame] | 121 | # Have to be compiled as a separate target because it needs to be |
| 122 | # compiled with SSE2 enabled. |
| 123 | 'target_name': 'desktop_capture_differ_sse2', |
sergeyu@chromium.org | e032f9f | 2013-05-19 07:02:48 +0000 | [diff] [blame] | 124 | 'type': 'static_library', |
sergeyu@chromium.org | e032f9f | 2013-05-19 07:02:48 +0000 | [diff] [blame] | 125 | 'sources': [ |
sergeyu@chromium.org | 6c82a7e | 2013-06-04 18:51:23 +0000 | [diff] [blame] | 126 | "differ_block_sse2.cc", |
| 127 | "differ_block_sse2.h", |
| 128 | ], |
| 129 | 'conditions': [ |
| 130 | [ 'os_posix == 1 and OS != "mac"', { |
| 131 | 'cflags': [ |
| 132 | '-msse2', |
| 133 | ], |
| 134 | }], |
sergeyu@chromium.org | e032f9f | 2013-05-19 07:02:48 +0000 | [diff] [blame] | 135 | ], |
| 136 | }, |
| 137 | ], # targets |
sergeyu@chromium.org | 6c82a7e | 2013-06-04 18:51:23 +0000 | [diff] [blame] | 138 | }], |
sergeyu@chromium.org | e032f9f | 2013-05-19 07:02:48 +0000 | [diff] [blame] | 139 | ], |
sergeyu@chromium.org | ea2ea7b | 2013-04-17 18:21:42 +0000 | [diff] [blame] | 140 | } |