diff options
Diffstat (limited to 'third_party/usrsctp/usrsctp.gyp')
-rw-r--r-- | third_party/usrsctp/usrsctp.gyp | 135 |
1 files changed, 110 insertions, 25 deletions
diff --git a/third_party/usrsctp/usrsctp.gyp b/third_party/usrsctp/usrsctp.gyp index af82e0d..9285e21 100644 --- a/third_party/usrsctp/usrsctp.gyp +++ b/third_party/usrsctp/usrsctp.gyp @@ -2,65 +2,148 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. { - 'targets': [ - { - 'target_name': 'usrsctplib', - 'type': 'static_library', - 'direct_dependent_settings': { - 'include_dirs': [ - '.', - ], - 'defines': [ - 'INET', - 'SCTP_PROCESS_LEVEL_LOCKS', - 'SCTP_SIMPLE_ALLOCATOR', - 'STDC_HEADERS', - 'USE_SCTP_SHA1', - '__Userspace__', - # 'SCTP_DEBUG', # Uncomment for SCTP debugging. - ], - }, + 'variables': { + 'libsctp_target_type%': 'static_library', + }, + 'target_defaults': { + 'defines': [ + 'INET', + 'SCTP_PROCESS_LEVEL_LOCKS', + 'SCTP_SIMPLE_ALLOCATOR', + '__Userspace__', + # 'SCTP_DEBUG', # Uncomment for SCTP debugging. + ], + 'include_dirs': [ + 'overrides/usrsctplib', + 'overrides/usrsctplib/netinet', + 'usrsctplib/', + 'usrsctplib/netinet', + 'usrsctplib/netinet6', + ], + 'direct_dependent_settings': { 'include_dirs': [ + 'overrides/usrsctplib', + 'overrides/usrsctplib/netinet', 'usrsctplib/', 'usrsctplib/netinet', 'usrsctplib/netinet6', ], + }, + 'conditions': [ + ['use_openssl==1', { + 'defines': [ + 'SCTP_USE_OPENSSL_SHA1', + ], + 'dependencies': [ + '../../third_party/openssl/openssl.gyp:openssl', + ], + }, + { # else use_openssl==0, use NSS. + 'defines' : [ + 'SCTP_USE_NSS_SHA1', + ], + 'conditions': [ + ['os_posix == 1 and OS != "mac" and OS != "ios" and OS != "android"', { + 'dependencies': [ + '<(DEPTH)/build/linux/system.gyp:ssl', + ], + }], + ['OS == "mac" or OS == "ios" or OS == "win"', { + 'dependencies': [ + '<(DEPTH)/third_party/nss/nss.gyp:nspr', + '<(DEPTH)/third_party/nss/nss.gyp:nss', + ], + }], + ], + }], + ], + }, + 'targets': [ + { + 'target_name': 'usrsctplib', + 'type': 'static_library', 'sources': [ + 'overrides/usrsctplib/netinet/sctp_auth.h', + 'overrides/usrsctplib/netinet/sctp_os.h', + 'overrides/usrsctplib/netinet/sctp_os_userspace.h', + 'overrides/usrsctplib/netinet/sctp_nss_sha1.c', + 'overrides/usrsctplib/netinet/sctp_nss_sha1.h', + + 'usrsctplib/usrsctp.h', + 'usrsctplib/user_atomic.h', 'usrsctplib/user_environment.c', + 'usrsctplib/user_environment.h', + 'usrsctplib/user_inpcb.h', + 'usrsctplib/user_ip6_var.h', + 'usrsctplib/user_ip_icmp.h', 'usrsctplib/user_mbuf.c', + 'usrsctplib/user_mbuf.h', + 'usrsctplib/user_queue.h', 'usrsctplib/user_recv_thread.c', + 'usrsctplib/user_recv_thread.h', + 'usrsctplib/user_route.h', 'usrsctplib/user_sctp_timer_iterate.c', 'usrsctplib/user_socket.c', + 'usrsctplib/user_socketvar.h', + 'usrsctplib/user_uma.h', 'usrsctplib/netinet/sctp_asconf.c', + 'usrsctplib/netinet/sctp_asconf.h', 'usrsctplib/netinet/sctp_auth.c', 'usrsctplib/netinet/sctp_bsd_addr.c', + 'usrsctplib/netinet/sctp_bsd_addr.h', 'usrsctplib/netinet/sctp_callout.c', + 'usrsctplib/netinet/sctp_callout.h', 'usrsctplib/netinet/sctp_cc_functions.c', + 'usrsctplib/netinet/sctp_constants.h', 'usrsctplib/netinet/sctp_crc32.c', + 'usrsctplib/netinet/sctp_crc32.h', + 'usrsctplib/netinet/sctp_hashdriver.h', 'usrsctplib/netinet/sctp_hashdriver.c', + 'usrsctplib/netinet/sctp_header.h', 'usrsctplib/netinet/sctp_indata.c', + 'usrsctplib/netinet/sctp_indata.h', 'usrsctplib/netinet/sctp_input.c', + 'usrsctplib/netinet/sctp_input.h', + 'usrsctplib/netinet/sctp_lock_userspace.h', 'usrsctplib/netinet/sctp_output.c', + 'usrsctplib/netinet/sctp_output.h', 'usrsctplib/netinet/sctp_pcb.c', + 'usrsctplib/netinet/sctp_pcb.h', 'usrsctplib/netinet/sctp_peeloff.c', - 'usrsctplib/netinet/sctp_sha1.c', + 'usrsctplib/netinet/sctp_peeloff.h', 'usrsctplib/netinet/sctp_ss_functions.c', + 'usrsctplib/netinet/sctp_structs.h', 'usrsctplib/netinet/sctp_sysctl.c', - 'usrsctplib/netinet/sctp_userspace.c', + 'usrsctplib/netinet/sctp_sysctl.h', 'usrsctplib/netinet/sctp_timer.c', + 'usrsctplib/netinet/sctp_timer.h', + 'usrsctplib/netinet/sctp_uio.h', + 'usrsctplib/netinet/sctp_userspace.c', 'usrsctplib/netinet/sctp_usrreq.c', 'usrsctplib/netinet/sctputil.c', + 'usrsctplib/netinet/sctputil.h', + 'usrsctplib/netinet/sctp_var.h', 'usrsctplib/netinet6/sctp6_usrreq.c', + 'usrsctplib/netinet6/sctp6_var.h', ], # sources 'conditions': [ + ['use_openssl==1', { + 'sources!': [ + 'overrides/usrsctplib/netinet/sctp_nss_sha1.c', + 'overrides/usrsctplib/netinet/sctp_nss_sha1.h', + ], + 'sources': [ + 'overrides/usrsctplib/netinet/sctp_openssl_sha1.h', + ], + }], ['OS=="linux"', { 'defines': [ 'HAVE_INET_ADDR', 'HAVE_SOCKET', '__Userspace_os_Linux', ], - 'ccflags!': [ '-Werror', '-Wall' ], - 'ccflags': [ '-w' ], + 'cflags!': [ '-Werror', '-Wall' ], + 'cflags': [ '-w' ], }], ['OS=="mac"', { 'defines': [ @@ -77,7 +160,7 @@ # TODO(ldixon): explore why gyp cflags here does not get picked up. 'xcode_settings': { 'OTHER_CFLAGS!': [ '-Werror', '-Wall' ], - 'OTHER_CFLAGS': [ '-U__APPLE__', '-w' ], + 'OTHER_CFLAGS': [ '-w' ], }, }], ['OS=="win"', { @@ -85,8 +168,10 @@ 'INET6', '__Userspace_os_Windows', ], - 'ccflags!': [ '/W3', '/WX' ], - 'ccflags': [ '/w' ], + 'cflags!': [ '/W3', '/WX' ], + 'cflags': [ '/w' ], + # TODO(ldixon) : Remove this disable. + 'msvs_disabled_warnings': [ 4700, 4013, 4018, 4133, 4267 ], }, { # OS != "win", 'defines': [ 'NON_WINDOWS_DEFINE', |