| 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': [ | |
| 29 'build/common.gypi', | |
| 30 ], | |
| 31 'targets': [ | |
| 32 { | |
| 33 'target_name': 'relayserver', | |
| 34 'type': 'executable', | |
| 35 'dependencies': [ | |
| 36 'libjingle.gyp:libjingle', | |
| 37 'libjingle.gyp:libjingle_p2p', | |
| 38 ], | |
| 39 'sources': [ | |
| 40 'examples/relayserver/relayserver_main.cc', | |
| 41 ], | |
| 42 }, # target relayserver | |
| 43 { | |
| 44 'target_name': 'stunserver', | |
| 45 'type': 'executable', | |
| 46 'dependencies': [ | |
| 47 'libjingle.gyp:libjingle', | |
| 48 'libjingle.gyp:libjingle_p2p', | |
| 49 ], | |
| 50 'sources': [ | |
| 51 'examples/stunserver/stunserver_main.cc', | |
| 52 ], | |
| 53 }, # target stunserver | |
| 54 { | |
| 55 'target_name': 'turnserver', | |
| 56 'type': 'executable', | |
| 57 'dependencies': [ | |
| 58 'libjingle.gyp:libjingle', | |
| 59 'libjingle.gyp:libjingle_p2p', | |
| 60 ], | |
| 61 'sources': [ | |
| 62 'examples/turnserver/turnserver_main.cc', | |
| 63 ], | |
| 64 }, # target turnserver | |
| 65 { | |
| 66 'target_name': 'peerconnection_server', | |
| 67 'type': 'executable', | |
| 68 'sources': [ | |
| 69 'examples/peerconnection/server/data_socket.cc', | |
| 70 'examples/peerconnection/server/data_socket.h', | |
| 71 'examples/peerconnection/server/main.cc', | |
| 72 'examples/peerconnection/server/peer_channel.cc', | |
| 73 'examples/peerconnection/server/peer_channel.h', | |
| 74 'examples/peerconnection/server/utils.cc', | |
| 75 'examples/peerconnection/server/utils.h', | |
| 76 ], | |
| 77 'dependencies': [ | |
| 78 '<(webrtc_root)/common.gyp:webrtc_common', | |
| 79 'libjingle.gyp:libjingle', | |
| 80 ], | |
| 81 # TODO(ronghuawu): crbug.com/167187 fix size_t to int truncations. | |
| 82 'msvs_disabled_warnings': [ 4309, ], | |
| 83 }, # target peerconnection_server | |
| 84 ], | |
| 85 'conditions': [ | |
| 86 ['OS=="linux" or OS=="win"', { | |
| 87 'targets': [ | |
| 88 { | |
| 89 'target_name': 'peerconnection_client', | |
| 90 'type': 'executable', | |
| 91 'sources': [ | |
| 92 'examples/peerconnection/client/conductor.cc', | |
| 93 'examples/peerconnection/client/conductor.h', | |
| 94 'examples/peerconnection/client/defaults.cc', | |
| 95 'examples/peerconnection/client/defaults.h', | |
| 96 'examples/peerconnection/client/peer_connection_client.cc', | |
| 97 'examples/peerconnection/client/peer_connection_client.h', | |
| 98 ], | |
| 99 'dependencies': [ | |
| 100 'libjingle.gyp:libjingle_peerconnection', | |
| 101 '<@(libjingle_tests_additional_deps)', | |
| 102 ], | |
| 103 'conditions': [ | |
| 104 ['build_json==1', { | |
| 105 'dependencies': [ | |
| 106 '<(DEPTH)/third_party/jsoncpp/jsoncpp.gyp:jsoncpp', | |
| 107 ], | |
| 108 }], | |
| 109 # TODO(ronghuawu): Move these files to a win/ directory then they | |
| 110 # can be excluded automatically. | |
| 111 ['OS=="win"', { | |
| 112 'sources': [ | |
| 113 'examples/peerconnection/client/flagdefs.h', | |
| 114 'examples/peerconnection/client/main.cc', | |
| 115 'examples/peerconnection/client/main_wnd.cc', | |
| 116 'examples/peerconnection/client/main_wnd.h', | |
| 117 ], | |
| 118 'msvs_settings': { | |
| 119 'VCLinkerTool': { | |
| 120 'SubSystem': '2', # Windows | |
| 121 }, | |
| 122 }, | |
| 123 }], # OS=="win" | |
| 124 ['OS=="linux"', { | |
| 125 'sources': [ | |
| 126 'examples/peerconnection/client/linux/main.cc', | |
| 127 'examples/peerconnection/client/linux/main_wnd.cc', | |
| 128 'examples/peerconnection/client/linux/main_wnd.h', | |
| 129 ], | |
| 130 'cflags': [ | |
| 131 '<!@(pkg-config --cflags glib-2.0 gobject-2.0 gtk+-2.0)', | |
| 132 ], | |
| 133 'link_settings': { | |
| 134 'ldflags': [ | |
| 135 '<!@(pkg-config --libs-only-L --libs-only-other glib-2.0' | |
| 136 ' gobject-2.0 gthread-2.0 gtk+-2.0)', | |
| 137 ], | |
| 138 'libraries': [ | |
| 139 '<!@(pkg-config --libs-only-l glib-2.0 gobject-2.0' | |
| 140 ' gthread-2.0 gtk+-2.0)', | |
| 141 '-lX11', | |
| 142 '-lXcomposite', | |
| 143 '-lXext', | |
| 144 '-lXrender', | |
| 145 ], | |
| 146 }, | |
| 147 }], # OS=="linux" | |
| 148 ], # conditions | |
| 149 }, # target peerconnection_client | |
| 150 ], # targets | |
| 151 }], # OS=="linux" or OS=="win" | |
| 152 | |
| 153 ['OS=="ios" or (OS=="mac" and target_arch!="ia32" and mac_sdk>="10.8")', { | |
| 154 'targets': [ | |
| 155 { | |
| 156 'target_name': 'apprtc_common', | |
| 157 'type': 'static_library', | |
| 158 'dependencies': [ | |
| 159 'libjingle.gyp:libjingle_peerconnection_objc', | |
| 160 ], | |
| 161 'sources': [ | |
| 162 'examples/objc/AppRTCDemo/common/ARDUtilities.h', | |
| 163 'examples/objc/AppRTCDemo/common/ARDUtilities.m', | |
| 164 ], | |
| 165 'include_dirs': [ | |
| 166 'examples/objc/AppRTCDemo/common', | |
| 167 ], | |
| 168 'direct_dependent_settings': { | |
| 169 'include_dirs': [ | |
| 170 'examples/objc/AppRTCDemo/common', | |
| 171 ], | |
| 172 }, | |
| 173 'conditions': [ | |
| 174 ['OS=="mac"', { | |
| 175 'xcode_settings': { | |
| 176 'MACOSX_DEPLOYMENT_TARGET' : '10.8', | |
| 177 }, | |
| 178 }], | |
| 179 ], | |
| 180 }, | |
| 181 { | |
| 182 'target_name': 'apprtc_signaling', | |
| 183 'type': 'static_library', | |
| 184 'dependencies': [ | |
| 185 'apprtc_common', | |
| 186 'libjingle.gyp:libjingle_peerconnection_objc', | |
| 187 'socketrocket', | |
| 188 ], | |
| 189 'sources': [ | |
| 190 'examples/objc/AppRTCDemo/ARDAppClient.h', | |
| 191 'examples/objc/AppRTCDemo/ARDAppClient.m', | |
| 192 'examples/objc/AppRTCDemo/ARDAppClient+Internal.h', | |
| 193 'examples/objc/AppRTCDemo/ARDAppEngineClient.h', | |
| 194 'examples/objc/AppRTCDemo/ARDAppEngineClient.m', | |
| 195 'examples/objc/AppRTCDemo/ARDCEODTURNClient.h', | |
| 196 'examples/objc/AppRTCDemo/ARDCEODTURNClient.m', | |
| 197 'examples/objc/AppRTCDemo/ARDJoinResponse.h', | |
| 198 'examples/objc/AppRTCDemo/ARDJoinResponse.m', | |
| 199 'examples/objc/AppRTCDemo/ARDJoinResponse+Internal.h', | |
| 200 'examples/objc/AppRTCDemo/ARDMessageResponse.h', | |
| 201 'examples/objc/AppRTCDemo/ARDMessageResponse.m', | |
| 202 'examples/objc/AppRTCDemo/ARDMessageResponse+Internal.h', | |
| 203 'examples/objc/AppRTCDemo/ARDRoomServerClient.h', | |
| 204 'examples/objc/AppRTCDemo/ARDSDPUtils.h', | |
| 205 'examples/objc/AppRTCDemo/ARDSDPUtils.m', | |
| 206 'examples/objc/AppRTCDemo/ARDSignalingChannel.h', | |
| 207 'examples/objc/AppRTCDemo/ARDSignalingMessage.h', | |
| 208 'examples/objc/AppRTCDemo/ARDSignalingMessage.m', | |
| 209 'examples/objc/AppRTCDemo/ARDTURNClient.h', | |
| 210 'examples/objc/AppRTCDemo/ARDWebSocketChannel.h', | |
| 211 'examples/objc/AppRTCDemo/ARDWebSocketChannel.m', | |
| 212 'examples/objc/AppRTCDemo/RTCICECandidate+JSON.h', | |
| 213 'examples/objc/AppRTCDemo/RTCICECandidate+JSON.m', | |
| 214 'examples/objc/AppRTCDemo/RTCICEServer+JSON.h', | |
| 215 'examples/objc/AppRTCDemo/RTCICEServer+JSON.m', | |
| 216 'examples/objc/AppRTCDemo/RTCMediaConstraints+JSON.h', | |
| 217 'examples/objc/AppRTCDemo/RTCMediaConstraints+JSON.m', | |
| 218 'examples/objc/AppRTCDemo/RTCSessionDescription+JSON.h', | |
| 219 'examples/objc/AppRTCDemo/RTCSessionDescription+JSON.m', | |
| 220 ], | |
| 221 'include_dirs': [ | |
| 222 'examples/objc/AppRTCDemo', | |
| 223 ], | |
| 224 'direct_dependent_settings': { | |
| 225 'include_dirs': [ | |
| 226 'examples/objc/AppRTCDemo', | |
| 227 ], | |
| 228 }, | |
| 229 'export_dependent_settings': [ | |
| 230 'libjingle.gyp:libjingle_peerconnection_objc', | |
| 231 ], | |
| 232 'conditions': [ | |
| 233 ['OS=="mac"', { | |
| 234 'xcode_settings': { | |
| 235 'MACOSX_DEPLOYMENT_TARGET' : '10.8', | |
| 236 }, | |
| 237 }], | |
| 238 ], | |
| 239 }, | |
| 240 { | |
| 241 'target_name': 'AppRTCDemo', | |
| 242 'type': 'executable', | |
| 243 'product_name': 'AppRTCDemo', | |
| 244 'mac_bundle': 1, | |
| 245 'dependencies': [ | |
| 246 'apprtc_common', | |
| 247 'apprtc_signaling', | |
| 248 ], | |
| 249 'conditions': [ | |
| 250 ['OS=="ios"', { | |
| 251 'mac_bundle_resources': [ | |
| 252 'examples/objc/AppRTCDemo/ios/resources/iPhone5@2x.png', | |
| 253 'examples/objc/AppRTCDemo/ios/resources/iPhone6@2x.png', | |
| 254 'examples/objc/AppRTCDemo/ios/resources/iPhone6p@3x.png', | |
| 255 'examples/objc/AppRTCDemo/ios/resources/Roboto-Regular.ttf', | |
| 256 'examples/objc/AppRTCDemo/ios/resources/ic_call_end_black_24dp.p
ng', | |
| 257 'examples/objc/AppRTCDemo/ios/resources/ic_call_end_black_24dp@2
x.png', | |
| 258 'examples/objc/AppRTCDemo/ios/resources/ic_clear_black_24dp.png'
, | |
| 259 'examples/objc/AppRTCDemo/ios/resources/ic_clear_black_24dp@2x.p
ng', | |
| 260 'examples/objc/AppRTCDemo/ios/resources/ic_switch_video_black_24
dp.png', | |
| 261 'examples/objc/AppRTCDemo/ios/resources/ic_switch_video_black_24
dp@2x.png', | |
| 262 'examples/objc/Icon.png', | |
| 263 ], | |
| 264 'sources': [ | |
| 265 'examples/objc/AppRTCDemo/ios/ARDAppDelegate.h', | |
| 266 'examples/objc/AppRTCDemo/ios/ARDAppDelegate.m', | |
| 267 'examples/objc/AppRTCDemo/ios/ARDMainView.h', | |
| 268 'examples/objc/AppRTCDemo/ios/ARDMainView.m', | |
| 269 'examples/objc/AppRTCDemo/ios/ARDMainViewController.h', | |
| 270 'examples/objc/AppRTCDemo/ios/ARDMainViewController.m', | |
| 271 'examples/objc/AppRTCDemo/ios/ARDVideoCallView.h', | |
| 272 'examples/objc/AppRTCDemo/ios/ARDVideoCallView.m', | |
| 273 'examples/objc/AppRTCDemo/ios/ARDVideoCallViewController.h', | |
| 274 'examples/objc/AppRTCDemo/ios/ARDVideoCallViewController.m', | |
| 275 'examples/objc/AppRTCDemo/ios/AppRTCDemo-Prefix.pch', | |
| 276 'examples/objc/AppRTCDemo/ios/UIImage+ARDUtilities.h', | |
| 277 'examples/objc/AppRTCDemo/ios/UIImage+ARDUtilities.m', | |
| 278 'examples/objc/AppRTCDemo/ios/main.m', | |
| 279 ], | |
| 280 'xcode_settings': { | |
| 281 'INFOPLIST_FILE': 'examples/objc/AppRTCDemo/ios/Info.plist', | |
| 282 }, | |
| 283 }], | |
| 284 ['OS=="mac"', { | |
| 285 'sources': [ | |
| 286 'examples/objc/AppRTCDemo/mac/APPRTCAppDelegate.h', | |
| 287 'examples/objc/AppRTCDemo/mac/APPRTCAppDelegate.m', | |
| 288 'examples/objc/AppRTCDemo/mac/APPRTCViewController.h', | |
| 289 'examples/objc/AppRTCDemo/mac/APPRTCViewController.m', | |
| 290 'examples/objc/AppRTCDemo/mac/main.m', | |
| 291 ], | |
| 292 'xcode_settings': { | |
| 293 'CLANG_WARN_OBJC_MISSING_PROPERTY_SYNTHESIS': 'NO', | |
| 294 'INFOPLIST_FILE': 'examples/objc/AppRTCDemo/mac/Info.plist', | |
| 295 'MACOSX_DEPLOYMENT_TARGET' : '10.8', | |
| 296 'OTHER_LDFLAGS': [ | |
| 297 '-framework AVFoundation', | |
| 298 ], | |
| 299 }, | |
| 300 }], | |
| 301 ['target_arch=="ia32"', { | |
| 302 'dependencies' : [ | |
| 303 '<(DEPTH)/testing/iossim/iossim.gyp:iossim#host', | |
| 304 ], | |
| 305 }], | |
| 306 ], | |
| 307 }, # target AppRTCDemo | |
| 308 { | |
| 309 # TODO(tkchin): move this into the real third party location and | |
| 310 # have it mirrored on chrome infra. | |
| 311 'target_name': 'socketrocket', | |
| 312 'type': 'static_library', | |
| 313 'sources': [ | |
| 314 'examples/objc/AppRTCDemo/third_party/SocketRocket/SRWebSocket.h', | |
| 315 'examples/objc/AppRTCDemo/third_party/SocketRocket/SRWebSocket.m', | |
| 316 ], | |
| 317 'conditions': [ | |
| 318 ['OS=="mac"', { | |
| 319 'xcode_settings': { | |
| 320 # SocketRocket autosynthesizes some properties. Disable the | |
| 321 # warning so we can compile successfully. | |
| 322 'CLANG_WARN_OBJC_MISSING_PROPERTY_SYNTHESIS': 'NO', | |
| 323 'MACOSX_DEPLOYMENT_TARGET' : '10.8', | |
| 324 # SRWebSocket.m uses code with partial availability. | |
| 325 # https://code.google.com/p/webrtc/issues/detail?id=4695 | |
| 326 'WARNING_CFLAGS!': ['-Wpartial-availability'], | |
| 327 }, | |
| 328 }], | |
| 329 ], | |
| 330 'direct_dependent_settings': { | |
| 331 'include_dirs': [ | |
| 332 'examples/objc/AppRTCDemo/third_party/SocketRocket', | |
| 333 ], | |
| 334 }, | |
| 335 'xcode_settings': { | |
| 336 'CLANG_ENABLE_OBJC_ARC': 'YES', | |
| 337 'WARNING_CFLAGS': [ | |
| 338 '-Wno-deprecated-declarations', | |
| 339 ], | |
| 340 }, | |
| 341 'link_settings': { | |
| 342 'xcode_settings': { | |
| 343 'OTHER_LDFLAGS': [ | |
| 344 '-framework CFNetwork', | |
| 345 ], | |
| 346 }, | |
| 347 'libraries': [ | |
| 348 '$(SDKROOT)/usr/lib/libicucore.dylib', | |
| 349 ], | |
| 350 } | |
| 351 }, # target socketrocket | |
| 352 ], # targets | |
| 353 }], # OS=="ios" or (OS=="mac" and target_arch!="ia32" and mac_sdk>="10.8") | |
| 354 | |
| 355 ['OS=="android"', { | |
| 356 'targets': [ | |
| 357 { | |
| 358 'target_name': 'AppRTCDemo', | |
| 359 'type': 'none', | |
| 360 'dependencies': [ | |
| 361 'libjingle.gyp:libjingle_peerconnection_java', | |
| 362 ], | |
| 363 'variables': { | |
| 364 'apk_name': 'AppRTCDemo', | |
| 365 'java_in_dir': 'examples/android', | |
| 366 'has_java_resources': 1, | |
| 367 'resource_dir': 'examples/android/res', | |
| 368 'R_package': 'org.appspot.apprtc', | |
| 369 'R_package_relpath': 'org/appspot/apprtc', | |
| 370 'input_jars_paths': [ | |
| 371 'examples/android/third_party/autobanh/autobanh.jar', | |
| 372 ], | |
| 373 'library_dexed_jars_paths': [ | |
| 374 'examples/android/third_party/autobanh/autobanh.jar', | |
| 375 ], | |
| 376 'native_lib_target': 'libjingle_peerconnection_so', | |
| 377 'add_to_dependents_classpaths':1, | |
| 378 }, | |
| 379 'includes': [ '../build/java_apk.gypi' ], | |
| 380 }, # target AppRTCDemo | |
| 381 | |
| 382 { | |
| 383 # AppRTCDemo creates a .jar as a side effect. Any java targets | |
| 384 # that need that .jar in their classpath should depend on this target, | |
| 385 # AppRTCDemo_apk. Dependents of AppRTCDemo_apk receive its | |
| 386 # jar path in the variable 'apk_output_jar_path'. | |
| 387 # This target should only be used by targets which instrument | |
| 388 # AppRTCDemo_apk. | |
| 389 'target_name': 'AppRTCDemo_apk', | |
| 390 'type': 'none', | |
| 391 'dependencies': [ | |
| 392 'AppRTCDemo', | |
| 393 ], | |
| 394 'includes': [ '../build/apk_fake_jar.gypi' ], | |
| 395 }, # target AppRTCDemo_apk | |
| 396 | |
| 397 { | |
| 398 'target_name': 'AppRTCDemoTest', | |
| 399 'type': 'none', | |
| 400 'dependencies': [ | |
| 401 'AppRTCDemo_apk', | |
| 402 ], | |
| 403 'variables': { | |
| 404 'apk_name': 'AppRTCDemoTest', | |
| 405 'java_in_dir': 'examples/androidtests', | |
| 406 'is_test_apk': 1, | |
| 407 }, | |
| 408 'includes': [ '../build/java_apk.gypi' ], | |
| 409 }, | |
| 410 ], # targets | |
| 411 }], # OS=="android" | |
| 412 ], | |
| 413 } | |
| OLD | NEW |