OLD | NEW |
| (Empty) |
1 # | |
2 # libjingle | |
3 # Copyright 2012 Google Inc. | |
4 # | |
5 # Redistribution and use in source and binary forms, with or without | |
6 # modification, are permitted provided that the following conditions are met: | |
7 # | |
8 # 1. Redistributions of source code must retain the above copyright notice, | |
9 # this list of conditions and the following disclaimer. | |
10 # 2. Redistributions in binary form must reproduce the above copyright notice, | |
11 # this list of conditions and the following disclaimer in the documentation | |
12 # and/or other materials provided with the distribution. | |
13 # 3. The name of the author may not be used to endorse or promote products | |
14 # derived from this software without specific prior written permission. | |
15 # | |
16 # THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED | |
17 # WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF | |
18 # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO | |
19 # EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, | |
20 # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, | |
21 # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; | |
22 # OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, | |
23 # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR | |
24 # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF | |
25 # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | |
26 | |
27 { | |
28 'includes': ['build/common.gypi'], | |
29 'conditions': [ | |
30 ['OS=="ios" or (OS=="mac" and target_arch!="ia32")', { | |
31 # The >= 10.7 above is required for ARC. | |
32 'targets': [ | |
33 { | |
34 'target_name': 'libjingle_peerconnection_objc', | |
35 'type': 'static_library', | |
36 'dependencies': [ | |
37 '<(webrtc_root)/api/api.gyp:libjingle_peerconnection', | |
38 ], | |
39 'sources': [ | |
40 'app/webrtc/objc/RTCAudioTrack+Internal.h', | |
41 'app/webrtc/objc/RTCAudioTrack.mm', | |
42 'app/webrtc/objc/RTCDataChannel+Internal.h', | |
43 'app/webrtc/objc/RTCDataChannel.mm', | |
44 'app/webrtc/objc/RTCEnumConverter.h', | |
45 'app/webrtc/objc/RTCEnumConverter.mm', | |
46 'app/webrtc/objc/RTCFileLogger.mm', | |
47 'app/webrtc/objc/RTCI420Frame+Internal.h', | |
48 'app/webrtc/objc/RTCI420Frame.mm', | |
49 'app/webrtc/objc/RTCICECandidate+Internal.h', | |
50 'app/webrtc/objc/RTCICECandidate.mm', | |
51 'app/webrtc/objc/RTCICEServer+Internal.h', | |
52 'app/webrtc/objc/RTCICEServer.mm', | |
53 'app/webrtc/objc/RTCLogging.mm', | |
54 'app/webrtc/objc/RTCMediaConstraints+Internal.h', | |
55 'app/webrtc/objc/RTCMediaConstraints.mm', | |
56 'app/webrtc/objc/RTCMediaConstraintsNative.cc', | |
57 'app/webrtc/objc/RTCMediaConstraintsNative.h', | |
58 'app/webrtc/objc/RTCMediaSource+Internal.h', | |
59 'app/webrtc/objc/RTCMediaSource.mm', | |
60 'app/webrtc/objc/RTCMediaStream+Internal.h', | |
61 'app/webrtc/objc/RTCMediaStream.mm', | |
62 'app/webrtc/objc/RTCMediaStreamTrack+Internal.h', | |
63 'app/webrtc/objc/RTCMediaStreamTrack.mm', | |
64 'app/webrtc/objc/RTCOpenGLVideoRenderer.mm', | |
65 'app/webrtc/objc/RTCPair.m', | |
66 'app/webrtc/objc/RTCPeerConnection+Internal.h', | |
67 'app/webrtc/objc/RTCPeerConnection.mm', | |
68 'app/webrtc/objc/RTCPeerConnectionFactory.mm', | |
69 'app/webrtc/objc/RTCPeerConnectionInterface+Internal.h', | |
70 'app/webrtc/objc/RTCPeerConnectionInterface.mm', | |
71 'app/webrtc/objc/RTCPeerConnectionObserver.h', | |
72 'app/webrtc/objc/RTCPeerConnectionObserver.mm', | |
73 'app/webrtc/objc/RTCSessionDescription+Internal.h', | |
74 'app/webrtc/objc/RTCSessionDescription.mm', | |
75 'app/webrtc/objc/RTCStatsReport+Internal.h', | |
76 'app/webrtc/objc/RTCStatsReport.mm', | |
77 'app/webrtc/objc/RTCVideoCapturer+Internal.h', | |
78 'app/webrtc/objc/RTCVideoCapturer.mm', | |
79 'app/webrtc/objc/RTCVideoRendererAdapter.h', | |
80 'app/webrtc/objc/RTCVideoRendererAdapter.mm', | |
81 'app/webrtc/objc/RTCVideoSource+Internal.h', | |
82 'app/webrtc/objc/RTCVideoSource.mm', | |
83 'app/webrtc/objc/RTCVideoTrack+Internal.h', | |
84 'app/webrtc/objc/RTCVideoTrack.mm', | |
85 'app/webrtc/objc/public/RTCAudioSource.h', | |
86 'app/webrtc/objc/public/RTCAudioTrack.h', | |
87 'app/webrtc/objc/public/RTCDataChannel.h', | |
88 'app/webrtc/objc/public/RTCFileLogger.h', | |
89 'app/webrtc/objc/public/RTCI420Frame.h', | |
90 'app/webrtc/objc/public/RTCICECandidate.h', | |
91 'app/webrtc/objc/public/RTCICEServer.h', | |
92 'app/webrtc/objc/public/RTCLogging.h', | |
93 'app/webrtc/objc/public/RTCMediaConstraints.h', | |
94 'app/webrtc/objc/public/RTCMediaSource.h', | |
95 'app/webrtc/objc/public/RTCMediaStream.h', | |
96 'app/webrtc/objc/public/RTCMediaStreamTrack.h', | |
97 'app/webrtc/objc/public/RTCOpenGLVideoRenderer.h', | |
98 'app/webrtc/objc/public/RTCPair.h', | |
99 'app/webrtc/objc/public/RTCPeerConnection.h', | |
100 'app/webrtc/objc/public/RTCPeerConnectionDelegate.h', | |
101 'app/webrtc/objc/public/RTCPeerConnectionFactory.h', | |
102 'app/webrtc/objc/public/RTCPeerConnectionInterface.h', | |
103 'app/webrtc/objc/public/RTCSessionDescription.h', | |
104 'app/webrtc/objc/public/RTCSessionDescriptionDelegate.h', | |
105 'app/webrtc/objc/public/RTCStatsDelegate.h', | |
106 'app/webrtc/objc/public/RTCStatsReport.h', | |
107 'app/webrtc/objc/public/RTCTypes.h', | |
108 'app/webrtc/objc/public/RTCVideoCapturer.h', | |
109 'app/webrtc/objc/public/RTCVideoRenderer.h', | |
110 'app/webrtc/objc/public/RTCVideoSource.h', | |
111 'app/webrtc/objc/public/RTCVideoTrack.h', | |
112 ], | |
113 'direct_dependent_settings': { | |
114 'include_dirs': [ | |
115 '<(DEPTH)/talk/app/webrtc/objc/public', | |
116 ], | |
117 }, | |
118 'include_dirs': [ | |
119 '<(webrtc_root)/webrtc/api', | |
120 '<(DEPTH)/talk/app/webrtc/objc', | |
121 '<(DEPTH)/talk/app/webrtc/objc/public', | |
122 ], | |
123 'link_settings': { | |
124 'libraries': [ | |
125 '-lstdc++', | |
126 ], | |
127 }, | |
128 'all_dependent_settings': { | |
129 'xcode_settings': { | |
130 'CLANG_ENABLE_OBJC_ARC': 'YES', | |
131 }, | |
132 }, | |
133 'xcode_settings': { | |
134 'CLANG_ENABLE_OBJC_ARC': 'YES', | |
135 # common.gypi enables this for mac but we want this to be disabled | |
136 # like it is for ios. | |
137 'CLANG_WARN_OBJC_MISSING_PROPERTY_SYNTHESIS': 'NO', | |
138 # Disabled due to failing when compiled with -Wall, see | |
139 # https://bugs.chromium.org/p/webrtc/issues/detail?id=5397 | |
140 'WARNING_CFLAGS': ['-Wno-unused-property-ivar'], | |
141 }, | |
142 'conditions': [ | |
143 ['OS=="ios"', { | |
144 'sources': [ | |
145 'app/webrtc/objc/avfoundationvideocapturer.h', | |
146 'app/webrtc/objc/avfoundationvideocapturer.mm', | |
147 'app/webrtc/objc/RTCAVFoundationVideoSource+Internal.h', | |
148 'app/webrtc/objc/RTCAVFoundationVideoSource.mm', | |
149 'app/webrtc/objc/RTCEAGLVideoView.m', | |
150 'app/webrtc/objc/public/RTCEAGLVideoView.h', | |
151 'app/webrtc/objc/public/RTCAVFoundationVideoSource.h', | |
152 ], | |
153 'dependencies': [ | |
154 '<(webrtc_root)/base/base.gyp:rtc_base_objc', | |
155 ], | |
156 'link_settings': { | |
157 'xcode_settings': { | |
158 'OTHER_LDFLAGS': [ | |
159 '-framework CoreGraphics', | |
160 '-framework GLKit', | |
161 ], | |
162 }, | |
163 }, | |
164 }], | |
165 ['OS=="mac"', { | |
166 'sources': [ | |
167 'app/webrtc/objc/RTCNSGLVideoView.m', | |
168 'app/webrtc/objc/public/RTCNSGLVideoView.h', | |
169 ], | |
170 'xcode_settings': { | |
171 # Need to build against 10.7 framework for full ARC support | |
172 # on OSX. | |
173 'MACOSX_DEPLOYMENT_TARGET' : '10.7', | |
174 # RTCVideoTrack.mm uses code with partial availability. | |
175 # https://code.google.com/p/webrtc/issues/detail?id=4695 | |
176 'WARNING_CFLAGS!': ['-Wpartial-availability'], | |
177 }, | |
178 'link_settings': { | |
179 'xcode_settings': { | |
180 'OTHER_LDFLAGS': [ | |
181 '-framework Cocoa', | |
182 ], | |
183 }, | |
184 }, | |
185 }], | |
186 ], | |
187 }, # target libjingle_peerconnection_objc | |
188 ], | |
189 }], | |
190 ], | |
191 'targets': [ | |
192 { | |
193 'target_name': 'libjingle_p2p', | |
194 'type': 'static_library', | |
195 'dependencies': [ | |
196 '<(webrtc_root)/base/base.gyp:rtc_base', | |
197 '<(webrtc_root)/media/media.gyp:rtc_media', | |
198 ], | |
199 'conditions': [ | |
200 ['build_libsrtp==1', { | |
201 'dependencies': [ | |
202 '<(DEPTH)/third_party/libsrtp/libsrtp.gyp:libsrtp', | |
203 ], | |
204 }], | |
205 ], | |
206 'include_dirs': [ | |
207 '<(DEPTH)/testing/gtest/include', | |
208 ], | |
209 'include_dirs!': [ | |
210 '<(DEPTH)/webrtc', | |
211 ], | |
212 'direct_dependent_settings': { | |
213 'include_dirs': [ | |
214 '<(DEPTH)/testing/gtest/include', | |
215 ], | |
216 'include_dirs!': [ | |
217 '<(DEPTH)/webrtc', | |
218 ], | |
219 }, | |
220 'sources': [ | |
221 'session/media/audiomonitor.cc', | |
222 'session/media/audiomonitor.h', | |
223 'session/media/bundlefilter.cc', | |
224 'session/media/bundlefilter.h', | |
225 'session/media/channel.cc', | |
226 'session/media/channel.h', | |
227 'session/media/channelmanager.cc', | |
228 'session/media/channelmanager.h', | |
229 'session/media/currentspeakermonitor.cc', | |
230 'session/media/currentspeakermonitor.h', | |
231 'session/media/mediamonitor.cc', | |
232 'session/media/mediamonitor.h', | |
233 'session/media/mediasession.cc', | |
234 'session/media/mediasession.h', | |
235 'session/media/mediasink.h', | |
236 'session/media/rtcpmuxfilter.cc', | |
237 'session/media/rtcpmuxfilter.h', | |
238 'session/media/srtpfilter.cc', | |
239 'session/media/srtpfilter.h', | |
240 'session/media/voicechannel.h', | |
241 ], | |
242 }, # target libjingle_p2p | |
243 ], | |
244 } | |
OLD | NEW |