11eaf0ac3Slogwang# @(#)Makefile 8.1 (Berkeley) 6/12/93 21eaf0ac3Slogwang# $FreeBSD$ 31eaf0ac3Slogwang 41eaf0ac3SlogwangPROG= netstat 51eaf0ac3SlogwangSRCS= if.c inet.c main.c mbuf.c mroute.c netisr.c nl_symbols.c route.c \ 622ce4affSfengbojiang unix.c mroute6.c ipsec.c bpf.c pfkey.c sctp.c common.c nhops.c nhgrp.c \ 722ce4affSfengbojiang nl_defs.h 81eaf0ac3Slogwang 9*d4a07e70SfengbojiangTOPDIR?=${CURDIR}/../.. 10*d4a07e70Sfengbojianginclude ${TOPDIR}/tools/opts.mk 11*d4a07e70Sfengbojiang 12*d4a07e70SfengbojiangCLEANFILES+= nl_symbols.c nl_defs.h 13*d4a07e70Sfengbojiang 14*d4a07e70SfengbojiangLIBADD=util memstat xo 15*d4a07e70Sfengbojiang 16*d4a07e70SfengbojiangWARNS?= 3 17*d4a07e70SfengbojiangCFLAGS+=-fno-strict-aliasing 18*d4a07e70Sfengbojiang 19*d4a07e70Sfengbojiangifneq (${MK_IPSEC_SUPPORT},"no") 20*d4a07e70SfengbojiangCFLAGS+=-DIPSEC 21*d4a07e70Sfengbojiangendif 22*d4a07e70SfengbojiangCFLAGS+=-DSCTP 23*d4a07e70Sfengbojiang 24*d4a07e70Sfengbojiangifneq (${MK_INET_SUPPORT},"no") 25*d4a07e70SfengbojiangCFLAGS+=-DINET 26*d4a07e70Sfengbojiangendif 27*d4a07e70Sfengbojiang 28*d4a07e70Sfengbojiangifneq (${MK_INET6_SUPPORT},"no") 29*d4a07e70SfengbojiangSRCS+= inet6.c 30*d4a07e70SfengbojiangCFLAGS+=-DINET6 31*d4a07e70Sfengbojiangendif 32*d4a07e70Sfengbojiang 33*d4a07e70Sfengbojiangifneq (${MK_OFED},"no") 34*d4a07e70SfengbojiangCFLAGS+=-DSDP 35*d4a07e70Sfengbojiangendif 36*d4a07e70Sfengbojiang 37*d4a07e70Sfengbojiangifneq (${MK_PF},"no") 38*d4a07e70SfengbojiangCFLAGS+=-DPF 39*d4a07e70Sfengbojiangendif 40*d4a07e70Sfengbojiang 41*d4a07e70SfengbojiangBINGRP= kmem 42*d4a07e70SfengbojiangBINMODE=2555 43*d4a07e70Sfengbojiang 44*d4a07e70Sfengbojiangifneq (${MK_NETGRAPH_SUPPORT},"no") 45*d4a07e70SfengbojiangSRCS+= netgraph.c 46*d4a07e70SfengbojiangLIBADD+= netgraph 47*d4a07e70SfengbojiangCFLAGS+=-DNETGRAPH 48*d4a07e70Sfengbojiangendif 49*d4a07e70Sfengbojiang 50*d4a07e70Sfengbojianginclude ${TOPDIR}/tools/prog.mk 51*d4a07e70Sfengbojiang 521eaf0ac3Slogwangnl_symbols.c: nlist_symbols 531eaf0ac3Slogwang awk '\ 541eaf0ac3Slogwang BEGIN { \ 551eaf0ac3Slogwang print "#include <sys/param.h>"; \ 561eaf0ac3Slogwang print "#include <nlist.h>"; \ 571eaf0ac3Slogwang print "struct nlist nl[] = {"; \ 581eaf0ac3Slogwang } \ 591eaf0ac3Slogwang !/^\#/ { printf("\t{ .n_name = \"%s\" },\n", $$2); } \ 601eaf0ac3Slogwang END { print "\t{ .n_name = NULL },\n};" } \ 61*d4a07e70Sfengbojiang ' < $^ > $@ 62*d4a07e70Sfengbojiang 631eaf0ac3Slogwangnl_defs.h: nlist_symbols 641eaf0ac3Slogwang awk '\ 651eaf0ac3Slogwang BEGIN { \ 661eaf0ac3Slogwang print "#include <nlist.h>"; \ 671eaf0ac3Slogwang print "extern struct nlist nl[];"; \ 681eaf0ac3Slogwang i = 0; \ 691eaf0ac3Slogwang } \ 701eaf0ac3Slogwang !/^\#/ { printf("\#define\tN%s\t%s\n", toupper($$2), i++); }' \ 71*d4a07e70Sfengbojiang < $^ > $@ 721eaf0ac3Slogwang 73