projects/linux·blob master · refs

246 lines · 4.9 KiB

1# SPDX-License-Identifier: GPL-2.0
2# Makefile for net selftests
3
4CFLAGS += -Wall -Wl,--no-as-needed -O2 -g
5CFLAGS += -I../../../../usr/include/ $(KHDR_INCLUDES)
6# Additional include paths needed by kselftest.h
7CFLAGS += -I../
8
9TEST_PROGS := \
10 altnames.sh \
11 amt.sh \
12 arp_ndisc_evict_nocarrier.sh \
13 arp_ndisc_untracked_subnets.sh \
14 bareudp.sh \
15 big_tcp.sh \
16 big_tcp_tunnels.sh \
17 bind_bhash.sh \
18 bpf_offload.py \
19 bridge_stp_mode.sh \
20 bridge_vlan_dump.sh \
21 broadcast_ether_dst.sh \
22 broadcast_pmtu.sh \
23 busy_poll_test.sh \
24 cmsg_ip.sh \
25 cmsg_so_mark.sh \
26 cmsg_so_priority.sh \
27 cmsg_time.sh \
28 cork_fragsize.py \
29 double_udp_encap.sh \
30 drop_monitor_tests.sh \
31 ecmp_rehash.sh \
32 exception_cache.sh \
33 fcnal-ipv4.sh \
34 fcnal-ipv6.sh \
35 fcnal-other.sh \
36 fdb_flush.sh \
37 fdb_notify.sh \
38 fib-onlink-tests.sh \
39 fib_nexthop_multiprefix.sh \
40 fib_nexthop_nongw.sh \
41 fib_nexthops.sh \
42 fib_rule_tests.sh \
43 fib_tests.sh \
44 fin_ack_lat.sh \
45 fou_mcast_encap.sh \
46 fq_band_pktlimit.sh \
47 gre_gso.sh \
48 gre_ipv6_lladdr.sh \
49 icmp.sh \
50 icmp_redirect.sh \
51 io_uring_zerocopy_tx.sh \
52 ioam6.sh \
53 ip6_gre_headroom.sh \
54 ip6_tunnel.sh \
55 ip_defrag.sh \
56 ip_local_port_range.sh \
57 ipv6_flowlabel.sh \
58 ipv6_force_forwarding.sh \
59 ipv6_route_update_soft_lockup.sh \
60 ipvtap_test.sh \
61 l2_tos_ttl_inherit.sh \
62 l2tp.sh \
63 link_netns.py \
64 lwt_dst_cache_ref_loop.sh \
65 macvlan_mcast_shared_mac.sh \
66 msg_zerocopy.sh \
67 nat6to4.sh \
68 ndisc_unsolicited_na_test.sh \
69 netdev-l2addr.sh \
70 netdevice.sh \
71 netns-name.sh \
72 netns-sysctl.sh \
73 nk_qlease.py \
74 nl_netdev.py \
75 nl_nlctrl.py \
76 pmtu.sh \
77 protodown.sh \
78 psock_snd.sh \
79 reuseaddr_ports_exhausted.sh \
80 reuseport_addr_any.sh \
81 route_hint.sh \
82 route_localnet.sh \
83 rps_default_mask.sh \
84 rtnetlink.py \
85 rtnetlink.sh \
86 rtnetlink_notification.sh \
87 run_afpackettests \
88 run_netsocktests \
89 rxtimestamp.sh \
90 sctp_vrf.sh \
91 skf_net_off.sh \
92 srv6_encap_lookup_l3vpn_test.sh \
93 srv6_end_dt46_l3vpn_test.sh \
94 srv6_end_dt4_l3vpn_test.sh \
95 srv6_end_dt6_l3vpn_test.sh \
96 srv6_end_dx4_netfilter_test.sh \
97 srv6_end_dx6_netfilter_test.sh \
98 srv6_end_flavors_test.sh \
99 srv6_end_next_csid_l3vpn_test.sh \
100 srv6_end_x_next_csid_l3vpn_test.sh \
101 srv6_hencap_red_l3vpn_test.sh \
102 srv6_hl2encap_red_l2vpn_test.sh \
103 srv6_iptunnel_cache.sh \
104 stress_reuseport_listen.sh \
105 tcp_ecmp_failover.sh \
106 tcp_fastopen_backup_key.sh \
107 test_bpf.sh \
108 test_bridge_backup_port.sh \
109 test_bridge_neigh_suppress.sh \
110 test_ingress_egress_chaining.sh \
111 test_neigh.sh \
112 test_so_rcv.sh \
113 test_vxlan_fdb_changelink.sh \
114 test_vxlan_mdb.sh \
115 test_vxlan_nh.sh \
116 test_vxlan_nolocalbypass.sh \
117 test_vxlan_under_vrf.sh \
118 test_vxlan_vnifilter_notify.sh \
119 test_vxlan_vnifiltering.sh \
120 tfo_passive.sh \
121 traceroute.sh \
122 txtimestamp.sh \
123 udpgro.sh \
124 udpgro_bench.sh \
125 udpgro_frglist.sh \
126 udpgro_fwd.sh \
127 udpgso.sh \
128 udpgso_bench.sh \
129 unicast_extensions.sh \
130 veth.sh \
131 vlan_bridge_binding.sh \
132 vlan_hw_filter.sh \
133 vrf-xfrm-tests.sh \
134 vrf_route_leaking.sh \
135 vrf_strict_mode_test.sh \
136 xfrm_policy.sh \
137 xfrm_state.sh \
138# end of TEST_PROGS
139
140TEST_PROGS_EXTENDED := \
141 xfrm_policy_add_speed.sh \
142# end of TEST_PROGS_EXTENDED
143
144TEST_GEN_FILES := \
145 bind_bhash \
146 cmsg_sender \
147 fin_ack_lat \
148 hwtstamp_config \
149 io_uring_zerocopy_tx \
150 ioam6_parser \
151 ip_defrag \
152 ip_local_port_range \
153 ipsec \
154 ipv6_flowlabel \
155 msg_zerocopy \
156 nettest \
157 psock_fanout \
158 psock_snd \
159 psock_tpacket \
160 reuseaddr_ports_exhausted \
161 reuseport_addr_any \
162 rxtimestamp \
163 sctp_hello \
164 skf_net_off \
165 so_netns_cookie \
166 so_rcv_listener \
167 socket \
168 stress_reuseport_listen \
169 tcp_fastopen_backup_key \
170 tcp_inq \
171 tcp_mmap \
172 tfo \
173 timestamping \
174 txring_overwrite \
175 txtimestamp \
176 udpgso \
177 udpgso_bench_rx \
178 udpgso_bench_tx \
179# end of TEST_GEN_FILES
180
181TEST_GEN_PROGS := \
182 bind_timewait \
183 bind_wildcard \
184 epoll_busy_poll \
185 getsockopt_iter \
186 icmp_rfc4884 \
187 ipv6_flowlabel_mgr \
188 ipv6_fragmentation \
189 proc_net_pktgen \
190 reuseaddr_conflict \
191 reuseport_bpf \
192 reuseport_bpf_cpu \
193 reuseport_bpf_numa \
194 reuseport_dualstack \
195 sk_bind_sendto_listen \
196 sk_connect_zero_addr \
197 sk_so_peek_off \
198 so_incoming_cpu \
199 tap \
200 tcp_port_share \
201 tls \
202 udp_splice_checksum \
203# end of TEST_GEN_PROGS
204
205TEST_FILES := \
206 fcnal-test.sh \
207 in_netns.sh \
208 lib.sh \
209 settings \
210# end of TEST_FILES
211
212# YNL files, must be before "include ..lib.mk"
213YNL_GEN_FILES := busy_poller
214YNL_GEN_PROGS := \
215 netlink-dumps \
216 tun \
217# end of YNL_GEN_PROGS
218
219TEST_GEN_FILES += $(YNL_GEN_FILES)
220TEST_GEN_PROGS += $(YNL_GEN_PROGS)
221
222TEST_GEN_FILES += $(patsubst %.c,%.o,$(wildcard *.bpf.c))
223
224TEST_INCLUDES := forwarding/lib.sh
225
226include ../lib.mk
227
228# YNL build
229YNL_GENS := \
230 netdev \
231 rt-addr \
232 rt-link \
233 rt-neigh \
234 rt-route \
235# end of YNL_GENS
236
237include ynl.mk
238
239$(OUTPUT)/epoll_busy_poll: LDLIBS += -lcap
240$(OUTPUT)/reuseport_bpf_numa: LDLIBS += -lnuma
241$(OUTPUT)/tcp_mmap: LDLIBS += -lpthread -lcrypto
242$(OUTPUT)/tcp_inq: LDLIBS += -lpthread
243$(OUTPUT)/bind_bhash: LDLIBS += -lpthread
244$(OUTPUT)/io_uring_zerocopy_tx: CFLAGS += -I../../../include/
245
246include bpf.mk