OLD | NEW |
| (Empty) |
1 # Copyright (c) 2012 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 { | |
10 'targets': [ | |
11 { | |
12 # Note this library is missing an implementation for the video capture. | |
13 # Targets must link with either 'video_capture' or | |
14 # 'video_capture_module_internal_impl' depending on whether they want to | |
15 # use the internal capturer. | |
16 'target_name': 'video_capture_module', | |
17 'type': 'static_library', | |
18 'dependencies': [ | |
19 'webrtc_utility', | |
20 '<(webrtc_root)/common_video/common_video.gyp:common_video', | |
21 '<(webrtc_root)/system_wrappers/system_wrappers.gyp:system_wrappers', | |
22 ], | |
23 'sources': [ | |
24 'device_info_impl.cc', | |
25 'device_info_impl.h', | |
26 'video_capture.h', | |
27 'video_capture_config.h', | |
28 'video_capture_defines.h', | |
29 'video_capture_delay.h', | |
30 'video_capture_factory.h', | |
31 'video_capture_factory.cc', | |
32 'video_capture_impl.cc', | |
33 'video_capture_impl.h', | |
34 ], | |
35 }, | |
36 { | |
37 # Default video capture module implementation that only supports external | |
38 # capture. | |
39 'target_name': 'video_capture', | |
40 'type': 'static_library', | |
41 'dependencies': [ | |
42 'video_capture_module', | |
43 ], | |
44 'sources': [ | |
45 'external/device_info_external.cc', | |
46 'external/video_capture_external.cc', | |
47 ], | |
48 }, | |
49 ], # targets | |
50 'conditions': [ | |
51 ['build_with_chromium==0', { | |
52 'targets': [ | |
53 { | |
54 'target_name': 'video_capture_module_internal_impl', | |
55 'type': 'static_library', | |
56 'conditions': [ | |
57 ['OS!="android"', { | |
58 'dependencies': [ | |
59 'video_capture_module', | |
60 '<(webrtc_root)/common.gyp:webrtc_common', | |
61 ], | |
62 }], | |
63 ['OS=="linux"', { | |
64 'sources': [ | |
65 'linux/device_info_linux.cc', | |
66 'linux/device_info_linux.h', | |
67 'linux/video_capture_linux.cc', | |
68 'linux/video_capture_linux.h', | |
69 ], | |
70 }], # linux | |
71 ['OS=="win"', { | |
72 'dependencies': [ | |
73 '<(DEPTH)/third_party/winsdk_samples/winsdk_samples.gyp:directsh
ow_baseclasses', | |
74 ], | |
75 'sources': [ | |
76 'windows/device_info_ds.cc', | |
77 'windows/device_info_ds.h', | |
78 'windows/device_info_mf.cc', | |
79 'windows/device_info_mf.h', | |
80 'windows/help_functions_ds.cc', | |
81 'windows/help_functions_ds.h', | |
82 'windows/sink_filter_ds.cc', | |
83 'windows/sink_filter_ds.h', | |
84 'windows/video_capture_ds.cc', | |
85 'windows/video_capture_ds.h', | |
86 'windows/video_capture_factory_windows.cc', | |
87 'windows/video_capture_mf.cc', | |
88 'windows/video_capture_mf.h', | |
89 ], | |
90 'link_settings': { | |
91 'libraries': [ | |
92 '-lStrmiids.lib', | |
93 ], | |
94 }, | |
95 }], # win | |
96 ['OS=="win" and clang==1', { | |
97 'msvs_settings': { | |
98 'VCCLCompilerTool': { | |
99 'AdditionalOptions': [ | |
100 # Disable warnings failing when compiling with Clang on Wind
ows. | |
101 # https://bugs.chromium.org/p/webrtc/issues/detail?id=5366 | |
102 '-Wno-comment', | |
103 '-Wno-ignored-attributes', | |
104 '-Wno-microsoft-extra-qualification', | |
105 '-Wno-missing-braces', | |
106 '-Wno-overloaded-virtual', | |
107 '-Wno-reorder', | |
108 '-Wno-writable-strings', | |
109 ], | |
110 }, | |
111 }, | |
112 }], | |
113 ['OS=="ios" or OS=="mac"', { | |
114 'sources': [ | |
115 'objc/device_info.h', | |
116 'objc/device_info.mm', | |
117 'objc/device_info_objc.h', | |
118 'objc/device_info_objc.mm', | |
119 'objc/rtc_video_capture_objc.h', | |
120 'objc/rtc_video_capture_objc.mm', | |
121 'objc/video_capture.h', | |
122 'objc/video_capture.mm', | |
123 ], | |
124 'xcode_settings': { | |
125 'CLANG_ENABLE_OBJC_ARC': 'YES', | |
126 }, | |
127 'all_dependent_settings': { | |
128 'xcode_settings': { | |
129 'OTHER_LDFLAGS': [ | |
130 '-framework AVFoundation', | |
131 '-framework CoreMedia', | |
132 '-framework CoreVideo', | |
133 ], | |
134 }, | |
135 }, | |
136 }], # ios | |
137 ['OS=="ios"', { | |
138 'all_dependent_settings': { | |
139 'xcode_settings': { | |
140 'OTHER_LDFLAGS': [ | |
141 '-framework UIKit', | |
142 ], | |
143 }, | |
144 }, | |
145 }], # ios | |
146 ], # conditions | |
147 }, | |
148 ], | |
149 }], # build_with_chromium==0 | |
150 ], | |
151 } | |
152 | |
OLD | NEW |