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