OLD | NEW |
| (Empty) |
1 # Copyright (c) 2015 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 'includes': [ '../build/common.gypi', ], | |
11 'conditions': [ | |
12 ['os_posix == 1 and OS != "mac" and OS != "ios"', { | |
13 'conditions': [ | |
14 ['sysroot!=""', { | |
15 'variables': { | |
16 'pkg-config': '../../../build/linux/pkg-config-wrapper "<(sysroot)"
"<(target_arch)"', | |
17 }, | |
18 }, { | |
19 'variables': { | |
20 'pkg-config': 'pkg-config' | |
21 }, | |
22 }], | |
23 ], | |
24 }], | |
25 # Excluded from the Chromium build since they cannot be built due to | |
26 # incompability with Chromium's logging implementation. | |
27 ['OS=="android" and build_with_chromium==0', { | |
28 'targets': [ | |
29 { | |
30 'target_name': 'libjingle_peerconnection_jni', | |
31 'type': 'static_library', | |
32 'dependencies': [ | |
33 '<(webrtc_root)/system_wrappers/system_wrappers.gyp:field_trial_defa
ult', | |
34 '<(webrtc_root)/system_wrappers/system_wrappers.gyp:metrics_default'
, | |
35 'libjingle_peerconnection', | |
36 ], | |
37 'sources': [ | |
38 'android/jni/androidmediacodeccommon.h', | |
39 'android/jni/androidmediadecoder_jni.cc', | |
40 'android/jni/androidmediadecoder_jni.h', | |
41 'android/jni/androidmediaencoder_jni.cc', | |
42 'android/jni/androidmediaencoder_jni.h', | |
43 'android/jni/androidmetrics_jni.cc', | |
44 'android/jni/androidnetworkmonitor_jni.cc', | |
45 'android/jni/androidnetworkmonitor_jni.h', | |
46 'android/jni/androidvideotracksource_jni.cc', | |
47 'android/jni/classreferenceholder.cc', | |
48 'android/jni/classreferenceholder.h', | |
49 'android/jni/jni_helpers.cc', | |
50 'android/jni/jni_helpers.h', | |
51 'android/jni/native_handle_impl.cc', | |
52 'android/jni/native_handle_impl.h', | |
53 'android/jni/peerconnection_jni.cc', | |
54 'android/jni/surfacetexturehelper_jni.cc', | |
55 'android/jni/surfacetexturehelper_jni.h', | |
56 'androidvideotracksource.cc', | |
57 'androidvideotracksource.h', | |
58 ], | |
59 'include_dirs': [ | |
60 '<(libyuv_dir)/include', | |
61 ], | |
62 # TODO(kjellander): Make the code compile without disabling these flag
s. | |
63 # See https://bugs.chromium.org/p/webrtc/issues/detail?id=3307 | |
64 'cflags': [ | |
65 '-Wno-sign-compare', | |
66 '-Wno-unused-variable', | |
67 ], | |
68 'cflags!': [ | |
69 '-Wextra', | |
70 ], | |
71 'msvs_disabled_warnings': [ | |
72 4245, # conversion from 'int' to 'size_t', signed/unsigned mismatch
. | |
73 4267, # conversion from 'size_t' to 'int', possible loss of data. | |
74 4389, # signed/unsigned mismatch. | |
75 ], | |
76 }, | |
77 { | |
78 'target_name': 'libjingle_peerconnection_so', | |
79 'type': 'shared_library', | |
80 'dependencies': [ | |
81 'libjingle_peerconnection', | |
82 'libjingle_peerconnection_jni', | |
83 ], | |
84 'sources': [ | |
85 'android/jni/jni_onload.cc', | |
86 ], | |
87 'variables': { | |
88 # This library uses native JNI exports; tell GYP so that the | |
89 # required symbols will be kept. | |
90 'use_native_jni_exports': 1, | |
91 }, | |
92 }, | |
93 ] | |
94 }], | |
95 ], # conditions | |
96 'targets': [ | |
97 { | |
98 'target_name': 'call_api', | |
99 'type': 'static_library', | |
100 'dependencies': [ | |
101 # TODO(kjellander): Add remaining dependencies when webrtc:4243 is done. | |
102 ':audio_mixer_api', | |
103 '<(webrtc_root)/base/base.gyp:rtc_base_approved', | |
104 '<(webrtc_root)/common.gyp:webrtc_common', | |
105 '<(webrtc_root)/modules/modules.gyp:audio_encoder_interface', | |
106 ], | |
107 'sources': [ | |
108 'call/audio_receive_stream.h', | |
109 'call/audio_send_stream.cc', | |
110 'call/audio_send_stream.h', | |
111 'call/audio_sink.h', | |
112 'call/audio_state.h', | |
113 'call/flexfec_receive_stream.h' | |
114 ], | |
115 }, | |
116 { | |
117 'target_name': 'libjingle_peerconnection', | |
118 'type': 'static_library', | |
119 'dependencies': [ | |
120 ':call_api', | |
121 ':rtc_stats_api', | |
122 '<(webrtc_root)/media/media.gyp:rtc_media', | |
123 '<(webrtc_root)/pc/pc.gyp:rtc_pc', | |
124 '<(webrtc_root)/stats/stats.gyp:rtc_stats', | |
125 ], | |
126 'sources': [ | |
127 'audiotrack.cc', | |
128 'audiotrack.h', | |
129 'datachannel.cc', | |
130 'datachannel.h', | |
131 'datachannelinterface.h', | |
132 'dtmfsender.cc', | |
133 'dtmfsender.h', | |
134 'dtmfsenderinterface.h', | |
135 'jsep.h', | |
136 'jsepicecandidate.cc', | |
137 'jsepicecandidate.h', | |
138 'jsepsessiondescription.cc', | |
139 'jsepsessiondescription.h', | |
140 'localaudiosource.cc', | |
141 'localaudiosource.h', | |
142 'mediaconstraintsinterface.cc', | |
143 'mediaconstraintsinterface.h', | |
144 'mediacontroller.cc', | |
145 'mediacontroller.h', | |
146 'mediastream.cc', | |
147 'mediastream.h', | |
148 'mediastreaminterface.h', | |
149 'mediastreamobserver.cc', | |
150 'mediastreamobserver.h', | |
151 'mediastreamproxy.h', | |
152 'mediastreamtrack.h', | |
153 'mediastreamtrackproxy.h', | |
154 'notifier.h', | |
155 'peerconnection.cc', | |
156 'peerconnection.h', | |
157 'peerconnectionfactory.cc', | |
158 'peerconnectionfactory.h', | |
159 'peerconnectionfactoryproxy.h', | |
160 'peerconnectioninterface.h', | |
161 'peerconnectionproxy.h', | |
162 'proxy.h', | |
163 'remoteaudiosource.cc', | |
164 'remoteaudiosource.h', | |
165 'rtcstatscollector.cc', | |
166 'rtcstatscollector.h', | |
167 'rtpparameters.h', | |
168 'rtpreceiver.cc', | |
169 'rtpreceiver.h', | |
170 'rtpreceiverinterface.h', | |
171 'rtpsender.cc', | |
172 'rtpsender.h', | |
173 'rtpsenderinterface.h', | |
174 'sctputils.cc', | |
175 'sctputils.h', | |
176 'statscollector.cc', | |
177 'statscollector.h', | |
178 'statstypes.cc', | |
179 'statstypes.h', | |
180 'streamcollection.h', | |
181 'videocapturertracksource.cc', | |
182 'videocapturertracksource.h', | |
183 'videosourceproxy.h', | |
184 'videotrack.cc', | |
185 'videotrack.h', | |
186 'videotracksource.cc', | |
187 'videotracksource.h', | |
188 'webrtcsdp.cc', | |
189 'webrtcsdp.h', | |
190 'webrtcsession.cc', | |
191 'webrtcsession.h', | |
192 'webrtcsessiondescriptionfactory.cc', | |
193 'webrtcsessiondescriptionfactory.h', | |
194 ], | |
195 'conditions': [ | |
196 ['clang==1', { | |
197 'cflags!': [ | |
198 '-Wextra', | |
199 ], | |
200 'xcode_settings': { | |
201 'WARNING_CFLAGS!': ['-Wextra'], | |
202 }, | |
203 }, { | |
204 'cflags': [ | |
205 '-Wno-maybe-uninitialized', # Only exists for GCC. | |
206 ], | |
207 }], | |
208 ['use_quic==1', { | |
209 'dependencies': [ | |
210 '<(DEPTH)/third_party/libquic/libquic.gyp:libquic', | |
211 ], | |
212 'sources': [ | |
213 'quicdatachannel.cc', | |
214 'quicdatachannel.h', | |
215 'quicdatatransport.cc', | |
216 'quicdatatransport.h', | |
217 ], | |
218 'export_dependent_settings': [ | |
219 '<(DEPTH)/third_party/libquic/libquic.gyp:libquic', | |
220 ], | |
221 }], | |
222 ], | |
223 }, # target libjingle_peerconnection | |
224 { | |
225 # GN version: webrtc/api:rtc_stats_api | |
226 'target_name': 'rtc_stats_api', | |
227 'type': 'static_library', | |
228 'dependencies': [ | |
229 '<(webrtc_root)/base/base.gyp:rtc_base_approved', | |
230 ], | |
231 'sources': [ | |
232 'stats/rtcstats.h', | |
233 'stats/rtcstats_objects.h', | |
234 'stats/rtcstatsreport.h', | |
235 ], | |
236 }, # target rtc_stats_api | |
237 { | |
238 # GN version: webrtc/api:audio_mixer_api | |
239 'target_name': 'audio_mixer_api', | |
240 'type': 'static_library', | |
241 'dependencies': [ | |
242 '<(webrtc_root)/base/base.gyp:rtc_base_approved', | |
243 ], | |
244 'sources': [ | |
245 'audio/audio_mixer.h', | |
246 ], | |
247 }, # target rtc_stats_api | |
248 ], # targets | |
249 } | |
OLD | NEW |