| load("@//tools/build_rules:select.bzl", "compiler_select") |
| |
| cc_library( |
| name = "usrsctp", |
| srcs = [ |
| "usrsctplib/netinet/sctp_asconf.c", |
| "usrsctplib/netinet/sctp_auth.c", |
| "usrsctplib/netinet/sctp_bsd_addr.c", |
| "usrsctplib/netinet/sctp_callout.c", |
| "usrsctplib/netinet/sctp_cc_functions.c", |
| "usrsctplib/netinet/sctp_crc32.c", |
| "usrsctplib/netinet/sctp_indata.c", |
| "usrsctplib/netinet/sctp_input.c", |
| "usrsctplib/netinet/sctp_output.c", |
| "usrsctplib/netinet/sctp_pcb.c", |
| "usrsctplib/netinet/sctp_peeloff.c", |
| "usrsctplib/netinet/sctp_sha1.c", |
| "usrsctplib/netinet/sctp_ss_functions.c", |
| "usrsctplib/netinet/sctp_sysctl.c", |
| "usrsctplib/netinet/sctp_timer.c", |
| "usrsctplib/netinet/sctp_userspace.c", |
| "usrsctplib/netinet/sctp_usrreq.c", |
| "usrsctplib/netinet/sctputil.c", |
| "usrsctplib/netinet6/sctp6_usrreq.c", |
| "usrsctplib/user_environment.c", |
| "usrsctplib/user_mbuf.c", |
| "usrsctplib/user_recv_thread.c", |
| "usrsctplib/user_socket.c", |
| ], |
| hdrs = glob(["usrsctplib/**/*.h"]), |
| copts = [ |
| "-Wno-cast-qual", |
| "-Wno-cast-align", |
| "-Wno-unused-parameter", |
| "-Wno-incompatible-pointer-types-discards-qualifiers", |
| "-D__Userspace_os_Linux", |
| "-D__Userspace__", |
| "-D_GNU_SOURCE", |
| "-DSCTP_DEBUG", |
| "-DSCTP_SIMPLE_ALLOCATOR", |
| "-DINET", |
| "-DINET6", |
| "-DSCTP_PROCESS_LEVEL_LOCKS", |
| "-DHAVE_SYS_QUEUE_H", |
| "-DHAVE_STDATOMIC_H", |
| "-DHAVE_NETINET_IP_ICMP_H", |
| "-DHAVE_LINUX_RTNETLINK_H", |
| "-DHAVE_LINUX_IF_ADDR_H", |
| "-Wno-address-of-packed-member", |
| ] + compiler_select({ |
| "clang": [ |
| "-Wno-unused-but-set-variable", |
| "-Wno-deprecated-non-prototype", |
| ], |
| "gcc": [ |
| "-Wno-discarded-qualifiers", |
| "-Wno-maybe-uninitialized", |
| ], |
| }), |
| includes = [ |
| "usrsctplib/", |
| "usrsctplib/netinet", |
| "usrsctplib/netinet6", |
| ], |
| target_compatible_with = ["@platforms//os:linux"], |
| visibility = ["//visibility:public"], |
| ) |