| Index: third_party/usrsctp/BUILD.gn
|
| diff --git a/third_party/usrsctp/BUILD.gn b/third_party/usrsctp/BUILD.gn
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..1361b9697ee06aa38872a74a1694531bcdb7a6c0
|
| --- /dev/null
|
| +++ b/third_party/usrsctp/BUILD.gn
|
| @@ -0,0 +1,129 @@
|
| +# Copyright 2014 The Chromium Authors. All rights reserved.
|
| +# Use of this source code is governed by a BSD-style license that can be
|
| +# found in the LICENSE file.
|
| +
|
| +import("//build/config/crypto.gni")
|
| +
|
| +config("usrsctp_config") {
|
| + include_dirs = [
|
| + "usrsctplib",
|
| + "usrsctplib/netinet",
|
| + ]
|
| +}
|
| +
|
| +static_library("usrsctp") {
|
| + sources = [
|
| + "usrsctplib/netinet/sctp.h",
|
| + "usrsctplib/netinet/sctp_asconf.c",
|
| + "usrsctplib/netinet/sctp_asconf.h",
|
| + "usrsctplib/netinet/sctp_auth.c",
|
| + "usrsctplib/netinet/sctp_auth.h",
|
| + "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_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_os.h",
|
| + "usrsctplib/netinet/sctp_os_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_peeloff.h",
|
| + "usrsctplib/netinet/sctp_process_lock.h",
|
| + "usrsctplib/netinet/sctp_sha1.c",
|
| + "usrsctplib/netinet/sctp_sha1.h",
|
| + "usrsctplib/netinet/sctp_ss_functions.c",
|
| + "usrsctplib/netinet/sctp_structs.h",
|
| + "usrsctplib/netinet/sctp_sysctl.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/sctp_var.h",
|
| + "usrsctplib/netinet/sctputil.c",
|
| + "usrsctplib/netinet/sctputil.h",
|
| + "usrsctplib/netinet6/sctp6_usrreq.c",
|
| + "usrsctplib/netinet6/sctp6_var.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_malloc.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/usrsctp.h"
|
| + ]
|
| +
|
| + defines = [
|
| + "SCTP_PROCESS_LEVEL_LOCKS",
|
| + "SCTP_SIMPLE_ALLOCATOR",
|
| + "__Userspace__",
|
| + # "SCTP_DEBUG", # Uncomment for SCTP debugging.
|
| + ]
|
| +
|
| + configs -= [ "//build/config/compiler:chromium_code" ]
|
| + configs += [ "//build/config/compiler:no_chromium_code" ]
|
| +
|
| + direct_dependent_configs = [ ":usrsctp_config" ]
|
| +
|
| + if (use_openssl) {
|
| + defines += [ "SCTP_USE_OPENSSL_SHA1" ]
|
| + } else {
|
| + defines += [ "SCTP_USE_NSS_SHA1" ]
|
| + }
|
| +
|
| + if (is_linux || is_android) {
|
| + defines += [ "__Userspace_os_Linux" ]
|
| + } else if (is_mac || is_ios) {
|
| + defines += [
|
| + "HAVE_SA_LEN",
|
| + "HAVE_SCONN_LEN",
|
| + "__APPLE_USE_RFC_2292",
|
| + "__Userspace_os_Darwin",
|
| + ]
|
| + }
|
| +
|
| + if (is_win) {
|
| + defines += [
|
| + "__Userspace_os_Windows",
|
| + # Manually setting WINVER and _WIN32_WINNT is needed because Chrome
|
| + # sets WINVER to a newer version of windows. But compiling usrsctp
|
| + # this way would is incompatible with windows XP.
|
| + "WINVER=0x0502",
|
| + "_WIN32_WINNT=0x0502",
|
| + ]
|
| + } else {
|
| + defines += [ "NON_WINDOWS_DEFINE" ]
|
| + }
|
| +
|
| + if (is_clang) {
|
| + cflags = [ "-Wno-incompatible-pointer-types" ]
|
| + }
|
| +
|
| + deps = [
|
| + "//crypto:platform",
|
| + ]
|
| +}
|
|
|