1# $NetBSD: Makefile,v 1.27 2023/08/18 12:55:50 tnn Exp $ 2 3WARNS?= 1 # XXX: need to cleanup later 4 5CWARNFLAGS.clang+= -Wno-constant-logical-operand -Wno-error=unused-function 6 7.include <bsd.own.mk> 8 9USE_FORT?= yes # network client 10 11BINDIR=/usr/sbin 12SRCDIR= ${.CURDIR}/../dist 13.PATH: ${SRCDIR} 14 15PROG= tcpdump 16MAN= tcpdump.8 17 18SRCS= addrtoname.c cpack.c fptype.c gmpls.c machdep.c oui.c parsenfsfh.c \ 19 smbutil.c tcpdump.c netdissect-alloc.c netdissect.c checksum.c \ 20 signature.c l2vpn.c nlpid.c ntp.c ipproto.c af.c in_cksum.c \ 21 pf_print_state.c util-print.c addrtostr.c ascii_strcasecmp.c print.c \ 22 strtoaddr.c 23 24SRCS+= bpf_dump.c 25SRCS+= version.c 26 27SRCS+= \ 28print-802_11.c \ 29print-802_15_4.c \ 30print-ah.c \ 31print-ahcp.c \ 32print-aodv.c \ 33print-aoe.c \ 34print-ap1394.c \ 35print-arcnet.c \ 36print-arista.c \ 37print-arp.c \ 38print-ascii.c \ 39print-atalk.c \ 40print-atm.c \ 41print-bcm-li.c \ 42print-beep.c \ 43print-bfd.c \ 44print-bgp.c \ 45print-bootp.c \ 46print-brcmtag.c \ 47print-bt.c \ 48print-calm-fast.c \ 49print-carp.c \ 50print-cdp.c \ 51print-cfm.c \ 52print-chdlc.c \ 53print-cip.c \ 54print-cnfp.c \ 55print-dccp.c \ 56print-decnet.c \ 57print-domain.c \ 58print-dsa.c \ 59print-dtp.c \ 60print-dvmrp.c \ 61print-eap.c \ 62print-egp.c \ 63print-eigrp.c \ 64print-enc.c \ 65print-esp.c \ 66print-ether.c \ 67print-fddi.c \ 68print-forces.c \ 69print-fr.c \ 70print-ftp.c \ 71print-geneve.c \ 72print-geonet.c \ 73print-gre.c \ 74print-hncp.c \ 75print-hsrp.c \ 76print-http.c \ 77print-icmp.c \ 78print-igmp.c \ 79print-igrp.c \ 80print-ip-demux.c \ 81print-ip.c \ 82print-ipcomp.c \ 83print-ipfc.c \ 84print-ipnet.c \ 85print-ipoib.c \ 86print-ipx.c \ 87print-isakmp.c \ 88print-isoclns.c \ 89print-juniper.c \ 90print-krb.c \ 91print-l2tp.c \ 92print-lane.c \ 93print-ldp.c \ 94print-lisp.c \ 95print-llc.c \ 96print-lldp.c \ 97print-lmp.c \ 98print-loopback.c \ 99print-lspping.c \ 100print-lwapp.c \ 101print-lwres.c \ 102print-m3ua.c \ 103print-macsec.c \ 104print-mobile.c \ 105print-mobility.c \ 106print-mpcp.c \ 107print-mpls.c \ 108print-mptcp.c \ 109print-msdp.c \ 110print-msnlb.c \ 111print-nflog.c \ 112print-nfs.c \ 113print-nsh.c \ 114print-ntp.c \ 115print-null.c \ 116print-olsr.c \ 117print-openflow-1.0.c \ 118print-openflow-1.3.c \ 119print-openflow.c \ 120print-ospf.c \ 121print-otv.c \ 122print-pflog.c \ 123print-pfsync.c \ 124print-pgm.c \ 125print-pim.c \ 126print-pktap.c \ 127print-ppi.c \ 128print-ppp.c \ 129print-pppoe.c \ 130print-pptp.c \ 131print-ptp.c \ 132print-radius.c \ 133print-raw.c \ 134print-realtek.c \ 135print-resp.c \ 136print-rip.c \ 137print-ripng.c \ 138print-rpki-rtr.c \ 139print-rsvp.c \ 140print-rtsp.c \ 141print-rx.c \ 142print-sctp.c \ 143print-sflow.c \ 144print-sip.c \ 145print-sl.c \ 146print-sll.c \ 147print-slow.c \ 148print-smb.c \ 149print-smtp.c \ 150print-snmp.c \ 151print-someip.c \ 152print-ssh.c \ 153print-stp.c \ 154print-sunatm.c \ 155print-sunrpc.c \ 156print-symantec.c \ 157print-syslog.c \ 158print-tcp.c \ 159print-telnet.c \ 160print-tftp.c \ 161print-timed.c \ 162print-tipc.c \ 163print-token.c \ 164print-udld.c \ 165print-udp.c \ 166print-unsupported.c \ 167print-usb.c \ 168print-vjc.c \ 169print-vqp.c \ 170print-vrrp.c \ 171print-vsock.c \ 172print-vtp.c \ 173print-vxlan-gpe.c \ 174print-vxlan.c \ 175print-wb.c \ 176print-whois.c \ 177print-zep.c \ 178print-zephyr.c \ 179print-zeromq.c 180 181version.c: VERSION 182 ${_MKTARGET_CREATE} 183 ${TOOL_SED} -e 's/.*/char version[] = "&";/' ${.ALLSRC} > ${.TARGET} 184 185LDADD+= -lpcap -ll 186DPADD+= ${LIBPCAP} ${LIBL} 187 188CPPFLAGS+= -I${.CURDIR}/../include -I${.CURDIR} -I${SRCDIR} -DHAVE_CONFIG_H 189CPPFLAGS+= -I${NETBSDSRCDIR}/dist/pf/sbin/pfctl \ 190 -I${NETBSDSRCDIR}/sys/dist/pf 191 192AWKS= atime.awk packetdat.awk stime.awk send-ack.awk 193 194CPPFLAGS+=-DHAVE_CONFIG_H 195 196CPPFLAGS+=-DWITH_USER=\"_tcpdump\" 197CPPFLAGS+=-DWITH_CHROOT=\"/var/chroot/tcpdump\" 198 199.if (${USE_INET6} != "no") 200SRCS+= \ 201print-babel.c \ 202print-ip6opts.c \ 203print-dhcp6.c \ 204print-frag6.c \ 205print-icmp6.c \ 206print-ip6.c \ 207print-ospf6.c \ 208print-rt6.c 209 210CPPFLAGS+=-DHAVE_OS_IPV6_SUPPORT=1 211.endif 212 213CPPFLAGS+=-DHAVE_LIBCRYPTO=1 -DHAVE_OPENSSL_EVP_H 214LDADD+= -lcrypto -lcrypt 215DPADD+= ${LIBCRYPTO} ${LIBCRYPT} 216 217CLEANFILES+= version.c tcpdump.8 218 219tcpdump.8: tcpdump.1.in 220 @rm -f ${.TARGET} 221 cp ${.ALLSRC} ${.TARGET} 222 223CWARNFLAGS+= ${CC_WNO_ADDRESS_OF_PACKED_MEMBER} 224COPTS.print-bgp.c+= ${CC_WNO_FORMAT_TRUNCATION} 225COPTS.signature.c+= -Wno-error=deprecated-declarations 226COPTS.print-tcp.c+= -Wno-error=deprecated-declarations 227 228.include <bsd.prog.mk> 229