summaryrefslogtreecommitdiffstats
path: root/third_party/usrsctp/usrsctp.gyp
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/usrsctp/usrsctp.gyp')
-rw-r--r--third_party/usrsctp/usrsctp.gyp135
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',