1# SPDX-License-Identifier: GPL-2.0
2#
3# Makefile for the Linux TCP/IP (INET) layer.
4#
5
6obj-y     := route.o inetpeer.o protocol.o \
7	     ip_input.o ip_fragment.o ip_forward.o ip_options.o \
8	     ip_output.o ip_sockglue.o inet_hashtables.o \
9	     inet_timewait_sock.o inet_connection_sock.o \
10	     tcp.o tcp_input.o tcp_output.o tcp_timer.o tcp_ipv4.o \
11	     tcp_minisocks.o tcp_cong.o tcp_metrics.o tcp_fastopen.o \
12	     tcp_rate.o tcp_recovery.o tcp_ulp.o \
13	     tcp_offload.o tcp_plb.o datagram.o raw.o udp.o udplite.o \
14	     udp_offload.o arp.o icmp.o devinet.o af_inet.o igmp.o \
15	     fib_frontend.o fib_semantics.o fib_trie.o fib_notifier.o \
16	     inet_fragment.o ping.o ip_tunnel_core.o gre_offload.o \
17	     metrics.o netlink.o nexthop.o udp_tunnel_stub.o
18
19obj-$(CONFIG_NET_IP_TUNNEL) += ip_tunnel.o
20obj-$(CONFIG_SYSCTL) += sysctl_net_ipv4.o
21obj-$(CONFIG_PROC_FS) += proc.o
22obj-$(CONFIG_IP_MULTIPLE_TABLES) += fib_rules.o
23obj-$(CONFIG_IP_MROUTE) += ipmr.o
24obj-$(CONFIG_IP_MROUTE_COMMON) += ipmr_base.o
25obj-$(CONFIG_NET_IPIP) += ipip.o
26gre-y := gre_demux.o
27fou-y := fou_core.o fou_nl.o fou_bpf.o
28obj-$(CONFIG_NET_FOU) += fou.o
29obj-$(CONFIG_NET_IPGRE_DEMUX) += gre.o
30obj-$(CONFIG_NET_IPGRE) += ip_gre.o
31udp_tunnel-y := udp_tunnel_core.o udp_tunnel_nic.o
32obj-$(CONFIG_NET_UDP_TUNNEL) += udp_tunnel.o
33obj-$(CONFIG_NET_IPVTI) += ip_vti.o
34obj-$(CONFIG_SYN_COOKIES) += syncookies.o
35obj-$(CONFIG_INET_AH) += ah4.o
36obj-$(CONFIG_INET_ESP) += esp4.o
37obj-$(CONFIG_INET_ESP_OFFLOAD) += esp4_offload.o
38obj-$(CONFIG_INET_IPCOMP) += ipcomp.o
39obj-$(CONFIG_INET_XFRM_TUNNEL) += xfrm4_tunnel.o
40obj-$(CONFIG_INET_TUNNEL) += tunnel4.o
41obj-$(CONFIG_IP_PNP) += ipconfig.o
42obj-$(CONFIG_NETFILTER)	+= netfilter.o netfilter/
43obj-$(CONFIG_INET_DIAG) += inet_diag.o
44obj-$(CONFIG_INET_TCP_DIAG) += tcp_diag.o
45obj-$(CONFIG_INET_UDP_DIAG) += udp_diag.o
46obj-$(CONFIG_INET_RAW_DIAG) += raw_diag.o
47obj-$(CONFIG_TCP_CONG_BBR) += tcp_bbr.o
48obj-$(CONFIG_TCP_CONG_BIC) += tcp_bic.o
49obj-$(CONFIG_TCP_CONG_CDG) += tcp_cdg.o
50obj-$(CONFIG_TCP_CONG_CUBIC) += tcp_cubic.o
51obj-$(CONFIG_TCP_CONG_DCTCP) += tcp_dctcp.o
52obj-$(CONFIG_TCP_CONG_WESTWOOD) += tcp_westwood.o
53obj-$(CONFIG_TCP_CONG_HSTCP) += tcp_highspeed.o
54obj-$(CONFIG_TCP_CONG_HYBLA) += tcp_hybla.o
55obj-$(CONFIG_TCP_CONG_HTCP) += tcp_htcp.o
56obj-$(CONFIG_TCP_CONG_VEGAS) += tcp_vegas.o
57obj-$(CONFIG_TCP_CONG_NV) += tcp_nv.o
58obj-$(CONFIG_TCP_CONG_VENO) += tcp_veno.o
59obj-$(CONFIG_TCP_CONG_SCALABLE) += tcp_scalable.o
60obj-$(CONFIG_TCP_CONG_LP) += tcp_lp.o
61obj-$(CONFIG_TCP_CONG_YEAH) += tcp_yeah.o
62obj-$(CONFIG_TCP_CONG_ILLINOIS) += tcp_illinois.o
63obj-$(CONFIG_TCP_SIGPOOL) += tcp_sigpool.o
64obj-$(CONFIG_NET_SOCK_MSG) += tcp_bpf.o
65obj-$(CONFIG_BPF_SYSCALL) += udp_bpf.o
66obj-$(CONFIG_NETLABEL) += cipso_ipv4.o
67
68obj-$(CONFIG_XFRM) += xfrm4_policy.o xfrm4_state.o xfrm4_input.o \
69		      xfrm4_output.o xfrm4_protocol.o
70obj-$(CONFIG_TCP_AO) += tcp_ao.o
71
72ifeq ($(CONFIG_BPF_JIT),y)
73obj-$(CONFIG_BPF_SYSCALL) += bpf_tcp_ca.o
74endif
75