michael@0: # This Source Code Form is subject to the terms of the Mozilla Public michael@0: # License, v. 2.0. If a copy of the MPL was not distributed with this michael@0: # file, You can obtain one at http://mozilla.org/MPL/2.0/. michael@0: # michael@0: # nrappkit.gyp michael@0: # michael@0: # michael@0: { michael@0: 'variables' : { michael@0: 'build_with_gonk%': 0, michael@0: 'have_ethtool_cmd_speed_hi%': 1 michael@0: }, michael@0: 'targets' : [ michael@0: { michael@0: 'target_name' : 'nicer', michael@0: 'type' : 'static_library', michael@0: michael@0: 'include_dirs' : [ michael@0: ## EXTERNAL michael@0: # nrappkit michael@0: '../nrappkit/src/event', michael@0: '../nrappkit/src/log', michael@0: '../nrappkit/src/plugin', michael@0: '../nrappkit/src/registry', michael@0: '../nrappkit/src/share', michael@0: '../nrappkit/src/stats', michael@0: '../nrappkit/src/util', michael@0: '../nrappkit/src/util/libekr', michael@0: '../nrappkit/src/port/generic/include', michael@0: michael@0: # INTERNAL michael@0: "./src/crypto", michael@0: "./src/ice", michael@0: "./src/net", michael@0: "./src/stun", michael@0: "./src/util", michael@0: ], michael@0: michael@0: 'sources' : [ michael@0: # Crypto michael@0: "./src/crypto/nr_crypto.c", michael@0: "./src/crypto/nr_crypto.h", michael@0: #"./src/crypto/nr_crypto_openssl.c", michael@0: #"./src/crypto/nr_crypto_openssl.h", michael@0: michael@0: # ICE michael@0: "./src/ice/ice_candidate.c", michael@0: "./src/ice/ice_candidate.h", michael@0: "./src/ice/ice_candidate_pair.c", michael@0: "./src/ice/ice_candidate_pair.h", michael@0: "./src/ice/ice_codeword.h", michael@0: "./src/ice/ice_component.c", michael@0: "./src/ice/ice_component.h", michael@0: "./src/ice/ice_ctx.c", michael@0: "./src/ice/ice_ctx.h", michael@0: "./src/ice/ice_handler.h", michael@0: "./src/ice/ice_media_stream.c", michael@0: "./src/ice/ice_media_stream.h", michael@0: "./src/ice/ice_parser.c", michael@0: "./src/ice/ice_peer_ctx.c", michael@0: "./src/ice/ice_peer_ctx.h", michael@0: "./src/ice/ice_reg.h", michael@0: "./src/ice/ice_socket.c", michael@0: "./src/ice/ice_socket.h", michael@0: michael@0: # Net michael@0: "./src/net/nr_resolver.c", michael@0: "./src/net/nr_resolver.h", michael@0: "./src/net/nr_socket.c", michael@0: "./src/net/nr_socket.h", michael@0: #"./src/net/nr_socket_local.c", michael@0: "./src/net/nr_socket_local.h", michael@0: "./src/net/transport_addr.c", michael@0: "./src/net/transport_addr.h", michael@0: "./src/net/transport_addr_reg.c", michael@0: "./src/net/transport_addr_reg.h", michael@0: "./src/net/local_addr.c", michael@0: "./src/net/local_addr.h", michael@0: "./src/net/nr_interface_prioritizer.c", michael@0: "./src/net/nr_interface_prioritizer.h", michael@0: michael@0: # STUN michael@0: "./src/stun/addrs.c", michael@0: "./src/stun/addrs.h", michael@0: "./src/stun/nr_socket_turn.c", michael@0: "./src/stun/nr_socket_turn.h", michael@0: "./src/stun/nr_socket_buffered_stun.c", michael@0: "./src/stun/nr_socket_buffered_stun.h", michael@0: "./src/stun/stun.h", michael@0: "./src/stun/stun_build.c", michael@0: "./src/stun/stun_build.h", michael@0: "./src/stun/stun_client_ctx.c", michael@0: "./src/stun/stun_client_ctx.h", michael@0: "./src/stun/stun_codec.c", michael@0: "./src/stun/stun_codec.h", michael@0: "./src/stun/stun_hint.c", michael@0: "./src/stun/stun_hint.h", michael@0: "./src/stun/stun_msg.c", michael@0: "./src/stun/stun_msg.h", michael@0: "./src/stun/stun_proc.c", michael@0: "./src/stun/stun_proc.h", michael@0: "./src/stun/stun_reg.h", michael@0: "./src/stun/stun_server_ctx.c", michael@0: "./src/stun/stun_server_ctx.h", michael@0: "./src/stun/stun_util.c", michael@0: "./src/stun/stun_util.h", michael@0: "./src/stun/turn_client_ctx.c", michael@0: "./src/stun/turn_client_ctx.h", michael@0: michael@0: # Util michael@0: "./src/util/cb_args.c", michael@0: "./src/util/cb_args.h", michael@0: "./src/util/ice_util.c", michael@0: "./src/util/ice_util.h", michael@0: "./src/util/mbslen.c", michael@0: "./src/util/mbslen.h", michael@0: michael@0: michael@0: ], michael@0: michael@0: 'defines' : [ michael@0: 'SANITY_CHECKS', michael@0: 'USE_TURN', michael@0: 'USE_ICE', michael@0: 'USE_RFC_3489_BACKWARDS_COMPATIBLE', michael@0: 'USE_STUND_0_96', michael@0: 'USE_STUN_PEDANTIC', michael@0: 'USE_TURN', michael@0: 'NR_SOCKET_IS_VOID_PTR', michael@0: 'restrict=', michael@0: 'R_PLATFORM_INT_TYPES=', michael@0: 'R_DEFINED_INT2=int16_t', michael@0: 'R_DEFINED_UINT2=uint16_t', michael@0: 'R_DEFINED_INT4=int32_t', michael@0: 'R_DEFINED_UINT4=uint32_t', michael@0: 'R_DEFINED_INT8=int64_t', michael@0: 'R_DEFINED_UINT8=uint64_t', michael@0: ], michael@0: michael@0: 'conditions' : [ michael@0: ## Mac and BSDs michael@0: [ 'OS == "mac"', { michael@0: 'defines' : [ michael@0: 'DARWIN', michael@0: 'HAVE_XLOCALE', michael@0: ], michael@0: }], michael@0: [ 'os_bsd == 1', { michael@0: 'defines' : [ michael@0: 'BSD', michael@0: ], michael@0: }], michael@0: [ 'OS == "mac" or os_bsd == 1', { michael@0: 'cflags_mozilla': [ michael@0: '-Wall', michael@0: '-Wno-parentheses', michael@0: '-Wno-strict-prototypes', michael@0: '-Wmissing-prototypes', michael@0: ], michael@0: 'defines' : [ michael@0: 'HAVE_LIBM=1', michael@0: 'HAVE_STRDUP=1', michael@0: 'HAVE_STRLCPY=1', michael@0: 'HAVE_SYS_TIME_H=1', michael@0: 'HAVE_VFPRINTF=1', michael@0: 'NEW_STDIO' michael@0: 'RETSIGTYPE=void', michael@0: 'TIME_WITH_SYS_TIME_H=1', michael@0: '__UNUSED__=__attribute__((unused))', michael@0: ], michael@0: michael@0: 'include_dirs': [ michael@0: '../nrappkit/src/port/darwin/include' michael@0: ], michael@0: michael@0: 'sources': [ michael@0: ], michael@0: }], michael@0: michael@0: ## Win michael@0: [ 'OS == "win"', { michael@0: 'defines' : [ michael@0: 'WIN32', michael@0: 'USE_ICE', michael@0: 'USE_TURN', michael@0: 'USE_RFC_3489_BACKWARDS_COMPATIBLE', michael@0: 'USE_STUND_0_96', michael@0: 'USE_STUN_PEDANTIC', michael@0: '_CRT_SECURE_NO_WARNINGS', michael@0: '__UNUSED__=', michael@0: 'HAVE_STRDUP', michael@0: 'NO_REG_RPC' michael@0: ], michael@0: michael@0: 'include_dirs': [ michael@0: '../nrappkit/src/port/win32/include' michael@0: ], michael@0: }], michael@0: ## Linux/Android michael@0: [ '(OS == "linux") or (OS=="android")', { michael@0: 'cflags_mozilla': [ michael@0: '-Wall', michael@0: '-Wno-parentheses', michael@0: '-Wno-strict-prototypes', michael@0: '-Wmissing-prototypes', michael@0: ], michael@0: 'defines' : [ michael@0: 'LINUX', michael@0: 'HAVE_LIBM=1', michael@0: 'HAVE_STRDUP=1', michael@0: 'HAVE_STRLCPY=1', michael@0: 'HAVE_SYS_TIME_H=1', michael@0: 'HAVE_VFPRINTF=1', michael@0: 'NEW_STDIO' michael@0: 'RETSIGTYPE=void', michael@0: 'TIME_WITH_SYS_TIME_H=1', michael@0: '__UNUSED__=__attribute__((unused))', michael@0: ], michael@0: michael@0: 'include_dirs': [ michael@0: '../nrappkit/src/port/linux/include' michael@0: ], michael@0: michael@0: 'sources': [ michael@0: ], michael@0: }], michael@0: ['moz_widget_toolkit_gonk==1', { michael@0: 'defines' : [ michael@0: 'WEBRTC_GONK', michael@0: 'NO_REG_RPC', michael@0: ], michael@0: }], michael@0: # Gonk has its own nr_stun_get_addrs implementation. michael@0: ['build_with_gonk==1', { michael@0: 'defines': [ michael@0: "USE_PLATFORM_NR_STUN_GET_ADDRS", michael@0: ] michael@0: }], michael@0: ['have_ethtool_cmd_speed_hi==0', { michael@0: 'defines': [ michael@0: "DONT_HAVE_ETHTOOL_SPEED_HI", michael@0: ] michael@0: }] michael@0: ], michael@0: }] michael@0: } michael@0: